Моделирование в системе MATLAB. Часть 1. Основы работы в MATLAB. Терёхин В.В. - 90 стр.

UptoLike

Составители: 

88
% NEWSTATS Находит среднее зна-
чение и медиану для элементов векто-
ра u , используя встроенные функции.
n = length(u);
avg = mean(u,n);
med = median(u,n);
Подфункция 1
function m = mean(v,n)
% Вычислить среднее.
a = sum(v)/n;
Подфункция 2
function m = median(v,n)
% Вычислить медиану.
w = sort(v);
if rem(n,2) == 1
m = w ((n + 1) /2);
else
m = (w (n/2) + w (n/2 + 1)) /2;
end
Подфункции mean и median вычисляют среднее и медиану
входного списка. Основная функция newstats определяет длину спи-
ска и вызывает подфункции, передавая им длину списка n. Функции
внутри одного и того же М-файла не могут обращаться к одним и тем
же переменным, если они не объявлены глобальными переменными
внутри соответствующих
функций, или не переданы им в качестве
параметров. Следует иметь в виду, что справка help может видит
только основную функцию и не видит подфункций.
Когда приходит вызов функции из М-файла, то MATLAB, в
первую очередь, проверяет, не является ли эта функция подфункцией.
Поскольку первой проверяется наличие подфункций, то можно в
ка-
честве имени подфункции использовать имена функций системы
MATLAB.
Частные каталоги. Они введены в систему MATLAB, начи-
ная с версии 5.0. Частные каталоги представляют собой подкаталог с
именем private родительского каталога. М-файлы частного каталога
доступны только М-файлам родительского каталога. Поскольку фай-
лы частного каталога не видимы вне родительского каталога, они мо-
гут иметь имена совпадающие, с именами файлов других каталогов
системы MATLAB. Это удобно в тех случаях, когда пользователь соз-
дает собственные версии некоторой функции, сохраняя оригинал в
                            % NEWSTATS Находит среднее зна-
                            чение и медиану для элементов векто-
                            ра u , используя встроенные функции.
                            n = length(u);
                            avg = mean(u,n);
                            med = median(u,n);

                            function m = mean(v,n)
Подфункция 1
                            % Вычислить среднее.
                            a = sum(v)/n;

                            function m = median(v,n)
                            % Вычислить медиану.
                            w = sort(v);
Подфункция 2                if rem(n,2) == 1
                                m = w ((n + 1) /2);
                            else
                                m = (w (n/2) + w (n/2 + 1)) /2;
                            end

        Подфункции mean и median вычисляют среднее и медиану
входного списка. Основная функция newstats определяет длину спи-
ска и вызывает подфункции, передавая им длину списка n. Функции
внутри одного и того же М-файла не могут обращаться к одним и тем
же переменным, если они не объявлены глобальными переменными
внутри соответствующих функций, или не переданы им в качестве
параметров. Следует иметь в виду, что справка help может видит
только основную функцию и не видит подфункций.
        Когда приходит вызов функции из М-файла, то MATLAB, в
первую очередь, проверяет, не является ли эта функция подфункцией.
Поскольку первой проверяется наличие подфункций, то можно в ка-
честве имени подфункции использовать имена функций системы
MATLAB.
        Частные каталоги. Они введены в систему MATLAB, начи-
ная с версии 5.0. Частные каталоги представляют собой подкаталог с
именем private родительского каталога. М-файлы частного каталога
доступны только М-файлам родительского каталога. Поскольку фай-
лы частного каталога не видимы вне родительского каталога, они мо-
гут иметь имена совпадающие, с именами файлов других каталогов
системы MATLAB. Это удобно в тех случаях, когда пользователь соз-
дает собственные версии некоторой функции, сохраняя оригинал в

88