Глава 2. Программный комплекс MathCAD
2.2.Инструментальные панели и шаблоны
Интерфейс MathCAD предоставляет пользователю представительный набор шаблонов для программирования математических и графических регионов. Для вызова шаблонов и занесения специфических символов операций используются инструментальные панели с виртуальными кнопками или «горячие» клавиши – акселераторы.
Панели инструментов объединены в 9 тематических групп (палитр). Каждая группа может быть вызвана на экран из линейки вызова палитр: – она же панель «Математика».
Соответствие кнопок линейки вызываемым панелям показано на Рис. 2.
Всего на инструментальных панелях представлено 169 позиций, воздействие на которые вызывает вставку определенного шаблона или символа в точку расположения курсора на рабочем листе. Как видно из Рис. 2, некоторые позиции дублируются, присутствуя на разных панелях, некоторые предназначены для вставки обычных символов, имеющихся на клавиатуре, так что более удобно вводить непосредственным набором с клавиатуры, нежели через панель инструментов. Назначение ряда инструментов очевидно из соответствующих пиктограмм и не требует пояснений.
Здесь мы рассмотрим лишь те инструменты, применение которых необходимо для выполнения заданий лабораторных работ, информацию обо всех инструментах можно получить, воспользовавшись справочной системой MathCAD, вызываемой нажатием кнопки <F1> или из основного меню.
В составе пакета MathCAD имеется достаточно обширный набор встроенных функций. Вставка встроенных функций на рабочий лист может быть выполнена двумя путями:
•набором имени функции на клавиатуре – «горячих клавиш»;
•выбором функции из списка в окне диалога, открывающегося после воздействия на элемент управления с пиктограммой: 
Рис. 3 – Панель вызова набора встроенных функций
Второй вариант представляется более удобным, так как на рабочий лист помещается шаблон функции с правильным названием и шаблоном списка параметров. Кроме того, в открывающемся окне диалога выбора функции имеется кнопка вызова контекстно-зависимой справки (<Ctrl-F1>).
Таблица 1 – Инструменты и клавиши быстрого вызова
Описание операции |
Пиктограмма |
Клавиши |
Панель |
|
|
|
|
Извлечение квадратного корня |
|
\ |
Calculator |
|
|
|
|
Возведение в степень |
xY |
Shift+6 |
Calculator |
Ввод матрицы или вектора |
|
Ctrl+M |
Matrix |
|
|
|
|
Ввод индекса (в элементах массива) |
xn |
[ |
Matrix |
|
|
|
|
16
Профессиональные математические пакеты
Описание операции |
|
Пиктограмма |
Клавиши |
|
|
Панель |
|
|
|
|
|
|
|
Определитель, модуль, абсолютное |
|
|x| |
| |
|
|
Matrix |
значение |
|
|
|
|||
|
|
|
|
|
|
|
Выделение столбца матрицы |
|
M<> |
Ctrl+6 |
|
Matrix |
|
Создание ранжированной переменной |
|
m..n |
; |
|
|
Matrix |
|
|
|
|
|
|
|
Векторизация функции |
|
|
Ctrl+ – |
|
Matrix |
|
|
|
|
|
|
|
|
Оператор назначения – присваивания |
|
|
: |
|
|
Evaluation |
|
|
|
|
|
|
|
Оператор глобального назначения |
|
|
~ |
|
|
Evaluation |
|
|
|
|
|
|
|
Индикация значения в символьной форме |
|
|
Ctrl+. |
|
Evaluation |
|
|
|
|
|
|
|
|
График в прямоугольных координатах |
|
|
Shift+2 |
|
Graph |
|
|
|
|
|
|
|
|
2.3.Операторы определения объектов и индикации значений
Операторы определения (присваивания, назначения) объектов размещаются в математических регионах и выполняют три функции:
•создают объект, связывая с ним его имя – идентификатор;
•определяют тип объекта;
•инициализируют (задают) объект значением.
Вкачестве определяемого объекта могут выступать переменные и функции. Листинг 1 демонстрирует примеры применения операторов определения объектов различного типа: вещественного числа a, векторов b и c, матрицы A и функции z(x).
Листинг 1. Операторы определения и индикации
Тип объекта, соответствующего тому или иному имени-идентификатору, определяется типом правой части. Далее любые операции с объектом интерпретируются в соответствии с его определенным типом.
Впримере (Листинг 1) определена функция z(x), которая получает в качестве аргумента комплексное число x и возвращает в качестве значения комплексносопряженное число. Функция, задаваемая подобным образом, называется функцией, определяемой пользователем. В скобках после имени функции находится список формальных параметров. В рассмотренном примере этот список состоит из единственной переменной x. При вызове – применении этой функции формальные параметры заменяются фактическими. До вызова функции, переменные, перечисленные в списке формальных параметров, будут оставаться неопределенными.
Тип объекта, возвращаемого функцией, т.е. связанного с ее именем, определяется по контексту определения точно так же, как это происходит при определении переменной. Например, sin(x) возвращает вещественное число, а |x| – целое число.
Всоставе определения функции могут присутствовать переменные, не передаваемые через список формальных параметров. В этом случае такие переменные должны быть определены до оператора назначения функции. Необходимо отметить, что передача параметров через глобальные переменные в общем случае нежелательна,
17
Глава 2. Программный комплекс MathCAD
т.к. нарушает изолированность функции и может служить источником трудно обнаруживаемых ошибок.
Виды операторов определения MathCAD
Операторы назначения в MathCAD имеют три разновидности:
•:= оператор назначения (стандартный);
•оператор глобального назначения;
•оператор локального назначения в блоке.
Все три разновидности операторов, помимо операции присваивания значения правого операнда левому, выполняют передачу типа левому операнду.
Оператор := связывает значение и тип объекта с его идентификатором во всех регионах, выполняемых после региона, содержащего этот оператор.
Оператор действует на все регионы рабочего листа независимо от их расположения относительно региона, содержащего этот оператор.
переменная а определена глобальным назначением ниже
переменная а переопределена назначением :=
переменная а переопределена назначением назначение оператора распространяется только на этот блок
переменная а определена глобальным назначением
Рис. 4 – Области действия (видимости) операторов назначения
Оператор предназначен для использования в изолированных блоках, формируемых при программировании в пределах одного региона. Действие этого оператора распространяется только на тот регион, в котором он расположен. На Рис. 4 показан пример переопределения типа и значения объекта a.
Действие оператора глобального назначения распространяется на все пространство рабочего листа. Появление в регионе оператора назначения := вызывает переопределение типа объекта, сохраняющееся до появления следующего оператора назначения, которым может быть либо еще один оператор :=, либо (как в примере) оператор глобального назначения .
Оператор локального назначения не оказывает никакого действия на тип и значение объекта a за пределами блока, выделенного слева жирной вертикальной чертой. Такие блоки создаются при использовании инструментальной панели «Программирование» и занимают один регион.
Определенные однажды объекты могут быть переопределены в последующих регионах. Таким образом, при интерпретации действий с объектом актуально последнее, ближайшее к точке выполнения определение его типа. Если на рабочем листе есть несколько операторов глобального назначения , то свойство «глобальности» сохраняет только последний из них.
MathCAD содержит несколько сотен встроенных стандартных функций, которые можно использовать в расчетах. Для вставки функции нужно нажать пиктограмму или
18
Профессиональные математические пакеты
в меню выбрать опцию «Вставить Функцию» – откроется окно выбора (Рис. 5), где все функции размещены по категориям.
Рис. 5 – Диалоговое окно выбора стандартной функции из библиотеки
Операторы индикации значений
Весьма часто при выполнении вычислений требуется выводить на экран значения того или иного объекта, либо результата выполнения выражения. Эта задача решается операторами индикации значений. В MathCAD существуют два вида операторов индикации:
•= оператор индикации числовых значений;
•оператор индикации символьных значений.
Рис. 6 – Диалоговое окно задания формата вывода чисел
Оператор индикации символьных значений применяется для вывода результатов символьных преобразований, значений объектов, в составе которых имеются компоненты с неопределенными числовыми значениями. Такими объектами являются, например, функции с формальными параметрами, формульные выражения при выполнении над ними операций символьных преобразований (Рис. 6).
19
Глава 3. Решение нелинейных уравнений в MathCAD
3.РЕШЕНИЕ НЕЛИНЕЙНЫХ УРАВНЕНИЙ В MATHCAD
3.1.Табличный и графический способ поиска корней
Задача решения нелинейных (трансцендентных) уравнений состоит в поиске
всех значений переменных, удовлетворяющих данному уравнению. На листинге ниже (Листинг 2) приводится пример поиска корней кубической параболы F (x) , на
интервале x 5, 5 . Этот способ визуальный и очень грубый.
Листинг 2. Табуляция функции и построение графика
Корни могут быть уточнены методом табуляции – вычисления значений функции в точках x, выбираемых из интервала 4, 4 с шагом 0.5. Точность
вычисления корней при таком методе не превосходит =0.5. Для выделения корня с заданной точностью необходимо повторить вычислительный эксперимент требуемое число раз, уменьшая каждый раз границы интервала табуляции, шаг табуляции и точность вывода полученных значений на экран (Рис. 6).
Впакете MathCAD существует встроенная функция root(f(x),x), выполняющая такие действия автоматически. Нужно только явно задать функцию f(x) и начальное значение x0, от которого начинается итерационное численное уточнение корня.
Впримере (Листинг 3) приведены примеры уточнения корня трансцендентной функции f x x2 sin x e x , для различных начальных условий.
Можно видеть, что значения отличаются друг от друга, начиная с четвертого знака после запятой. Это связано с тем, что точность расчетов по умолчанию имеет
значение TOL 10 3 .
Численные расчеты всегда выполняются с определенной точностью. Эта точность задается константой TOL.
Меняя принудительно значение TOL, как в примере (Листинг 3), можно управлять точностью вычислений.
20