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

UptoLike

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

65
Создание P-кода. Можно сохранить откомпилированные М-
функции или М-сценарии для последующих сеансов, используя ко-
манду pcode в форме:
pcode average
Эта команда выполняет синтаксический анализ М-файла average.m и
сохраняет результирующий псевдокод в файле с именем average.p.
Это позволяет избежать повторного разбора во время нового сеанса
работы. Поскольку синтаксический анализ
выполняется очень быстро,
применение команды pcode почти не влияет на скорость ее исполне-
ния. Применение P-кода целесообразно в двух случаях:
когда требуется выполнять синтаксический анализ большого
числа M-файлов, необходимых для визуализации графиче-
ских объектов в приложениях, связанных с разработкой гра-
фического интерфейса пользователя; в этом случае примене-
ние P-кода обеспечивает
существенное ускорение;
когда пользователь хочет скрыть алгоритмы, реализованные в
М-файле.
Правила передачи аргументов. С точки зрения программи-
ста, система MATLAB передает аргумент его значением. На самом
деле значением передаются только те аргументы, которые изменяются
при работе этой функции. Если функция не изменяет значения аргу-
мента, a только использует его для
вычислений, то аргумент переда-
ется ссылкой, что позволяет оптимизировать использование памяти.
Рабочие области функции. Каждой M-функции выделяется
дополнительная область памяти, не пересекающаяся с рабочей обла-
стью системы MATLAB. Такая область называется рабочей областью
функции. Каждая функция имеет свою собственную рабочую область.
При работе с системой MATLAB можно получить доступ только к
переменным, размещенным в рабочей области системы или в рабочей
области функции. Если переменная объявлена глобальной, то ее мож-
но рассматривать как бы принадлежащей нескольким рабочим облас-
тям.
Проверка количества аргументов. Функции nargin и
nargout позволяют определить количество входных и выходных ар-
гументов вызываемой функции. Эту информацию в дальнейшем мож-
но
использовать в операторах условия для изменения хода вычисле-
ний.
Пример:
function c = testarg1(a,b)
if(nargin == 1)
c = a.^2;
        Создание P-кода. Можно сохранить откомпилированные М-
функции или М-сценарии для последующих сеансов, используя ко-
манду pcode в форме:
        pcode average
Эта команда выполняет синтаксический анализ М-файла average.m и
сохраняет результирующий псевдокод в файле с именем average.p.
Это позволяет избежать повторного разбора во время нового сеанса
работы. Поскольку синтаксический анализ выполняется очень быстро,
применение команды pcode почти не влияет на скорость ее исполне-
ния. Применение P-кода целесообразно в двух случаях:
    • когда требуется выполнять синтаксический анализ большого
        числа M-файлов, необходимых для визуализации графиче-
        ских объектов в приложениях, связанных с разработкой гра-
        фического интерфейса пользователя; в этом случае примене-
        ние P-кода обеспечивает существенное ускорение;
    • когда пользователь хочет скрыть алгоритмы, реализованные в
        М-файле.

         Правила передачи аргументов. С точки зрения программи-
ста, система MATLAB передает аргумент его значением. На самом
деле значением передаются только те аргументы, которые изменяются
при работе этой функции. Если функция не изменяет значения аргу-
мента, a только использует его для вычислений, то аргумент переда-
ется ссылкой, что позволяет оптимизировать использование памяти.

         Рабочие области функции. Каждой M-функции выделяется
дополнительная область памяти, не пересекающаяся с рабочей обла-
стью системы MATLAB. Такая область называется рабочей областью
функции. Каждая функция имеет свою собственную рабочую область.
При работе с системой MATLAB можно получить доступ только к
переменным, размещенным в рабочей области системы или в рабочей
области функции. Если переменная объявлена глобальной, то ее мож-
но рассматривать как бы принадлежащей нескольким рабочим облас-
тям.
         Проверка количества аргументов. Функции nargin и
nargout позволяют определить количество входных и выходных ар-
гументов вызываемой функции. Эту информацию в дальнейшем мож-
но использовать в операторах условия для изменения хода вычисле-
ний.
         Пример:
      function c = testarg1(a,b)
      if(nargin == 1)
        c = a.^2;
                                                               65