Материал: Matlab. Практический подход. Самоучитель

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Самоучитель Matlab

Рис. 9.17. Редактор среды MuPAD с новым пустым документом

Рис. 9.18. Примеры простых вычислений в MuPAD

366

Глава 9. Символьные вычисления

Структура окна редактора MuPAD достаточно консервативна. Среди функциональных элементов интерфейса можно выделить панель меню и панель инструментов в верхней части окна и палитры в правой колонке. Основная белая область в окне редактора – это то рабочее пространство, в котором выполняются вычисления. Здесь вводятся команды, и отображается результат их выполнения. Подсказкой места ввода служит мигающий курсор и специальная метка в виде открытой квадратной скобки.

Но мало найти место, куда вводить команды, необходимо знать, как их вводить. Другими словами, необходимо иметь хотя бы общее представление о тех правилах, которые определяют командный язык, используемый в MuPAD. В силу объективных и очевидных причин, здесь мы рассмотрим только основные команды и приемы. Особенности графического интерфейса будут описываться по мере надобности в контексте решаемых задач.

На заметку

Прежде, чем приступить к обзору возможностей MuPAD, немного истории. Среда (более точный термин – система компьютерной алгебры) MuPAD с 1997 года разрабатывалась и развивалась как отдельный проект группой разработчиков из университета Падерборна (Германия) и компанией SciFace Software. Существовала бесплатная и коммерческая версии продукта. После покупки в 2008 году компании SciFace компанией Mathworks среда MuPAD стала составной частью пакета инструментов Symbolic Math Toolbox приложения Matlab.

В MuPAD пользователю предлагается широкий спектр возможностей по решению самых разнообразных задач, в том числе и с использованием специальных подпакетов. Основу MuPAD составляет оригинальный командный язык, который очень напоминает командный язык Maple и поддерживает методы объектноориентированного программирования. На самом деле первое знакомство с командами MuPAD уже состоялось – в предыдущих разделах мы использовали функции для выполнения символьных операций.

На рис. 9.18 показан документ MuPAD с примерами простых вычислений.

Принцип достаточно простой: в рабочей области в том месте, где мигает курсор (область ввода) вводим команду, а для ее выполнения нажимаем клавишу <Enter>. Под командой, в области вывода, отображается результат.

На заметку

По умолчанию команды ввода отображаются красным цветом, а результат их выполнения – синим. Есть еще текст, который отображается черным цветом.

Чтобы результат выполнения не отображался в области вывода, а конце команды следует поставить двоеточие.

Синтаксис арифметических операций близок к их соответствующей математической записи. Среди используемых операторов есть оператор сложения (+), оператор умножения (*), оператор вычитания (-), оператор деле-

367

Самоучитель Matlab

ния (/), оператор возведения в степень (^) и другие. Оператором присваивания является комбинация двоеточия и знака равенства (:=). Символьная константа PI означает число π, мнимая единица обозначается как I. По

умолчанию все операции выполняются в символьном виде. Например, при зультат

вычислении значения sin(PI/4) возвращается символьный ре

2 , а не приближенное значение в формате числа с плавающей 2 точкой. Но

если нужно именно такое значение – тоже нет проблем. Можно воспользоваться функцией float(). Аргументом передается выражение, которое необходимо представить в формате числа с плавающей точкой. Нередко аргументом указывается символ % - указатель на результат выполнения последней команды.

На заметку

По сравнению с командным окном Matlab, рабочая область среды MuPAD имеет важное отличие: команды в рабочей области можно выполнять в разной последовательности, причем по несколько раз. Другими словами, порядок следования команд в рабочей области не обязательно совпадает с последовательностью их выполнения. Более того, если команда введена и выполнена, ее можно отредактировать и выполнить снова.

Количество значащих цифр, отображаемых в формате с плавающей точкой, задается системной переменной DIGITS и по умолчанию равно 10. Чтобы изменить это значение, переменной DIGITS присваивают новое значение (например, DIGITS:=30). Чтобы вернуть настойки по умолчанию, вызываем команду delete DIGITS. Такого же типа инструкцию используют для "сброса" значений символьных переменных.

Разумеется, возможности среды MuPAD не ограничиваются алгебраическими вычислениями. Те же задачи, которые рассматривались выше, решаются в MuPAD с ощутимо большим эффектом. Немаловажное достоинство – создание качественной графики и анимации. На рис. 9.19 представлен документ с двумерным графиком функции.

Двумерный график создаем командой plot(cos(x)+cos(3*x),x=0..4 *PI). Основу команды составляет функция plot(). Первым аргументом функции передается выражение, которое определяет отображаемую на графике зависимость. Второй аргумент – независимая переменная и диапазон

еезначений.

На заметку

Диапазон изменения переменной указывается так: переменная, знак равенства и границы диапазона изменения переменной, разделенные двумя точками.

368

Глава 9. Символьные вычисления

Рис. 9.19. Создание двумерного графика

Рис. 9.20. Создание трехмерного графика

369

Самоучитель Matlab

С помощью той же функции plot() создается и трехмерная графика. В этом случае первым аргументом функции передается выражение, зависящее от двух символьных переменных, а также диапазон изменения каждой из переменных. Индикатором того, что график трехмерный, является опция #3D, которая обычно в списке аргументов указывается последней. Пример создания трехмерного графика приведен на рис. 9.20.

Здесьмыиспользоваликомандуplot(sin(sqrt(x^2+y^2))/sqrt(x^2+ y^2),x=-4*PI..4*PI,y=-4*PI..4*PI,#3D). Кроме перечисленных параметров, при работе с графикой используются многие другие опции, которые мы рассмотрим несколько позже. Сейчас перейдем к рассмотрению основных классов задач – опишем, как они решаются в среде MuPAD.

Определение функции

Сначала меня это забавляло - с одной стороны. Но, с другой, я понимал, что пора объясниться.

К/ф "Приключения Шерлока Холмса и доктора Ватсона. Знакомство"

До этого мы работали с выражениями. Но на практике бывает намного удобнее определить ту или иную функциональную зависимость и работать с ней. В среде MuPAD функция может задаваться несколькими способами. Здесь мы рассмотрим наиболее простой – с помощью оператора "стрелка" (оператор ->). Функция в этом случае определяется так: указывается имя функции, оператор присваивания, список аргументов (разделенных запятыми), оператор -> и выражение, в которое входят аргументы и которое определяет функциональную зависимость. Например, командой y:=x->x^2 задается функция y(x) = x2 . Фактически здесь переменная y определяется как оператор. Действие этого оператора на аргумент x сводится к тому, что вычисляется значение x^2. При этом переменная x играет роль локальной переменной.

Рассмотрим документ, представленный на рис. 9.21.

В этом документе мы определили функцию f (x) = sin(x) с помощью x

команды f:=x->sin(x)/x. Затем эта функция используется в разных выражениях. Так, ее можно вызывать с символьным аргументом: f(z) или f(PI/4). Удобно использовать функции при отображении графиков, поскольку команда вызова функции выглядит намного компактнее по сравнению с выражением, задающим соответствующую функциональную зависимость.

370

Источник: https://studfile.net/preview/16433384/