MathCAD. MatLab
Для указания нижнего индекса используется клавиша [ (квадратная скобка). Если индекс двойной (у матрицы), то индексы вводятся через запятую.
Заполнение массивов может быть организовано с помощью ранжированных переменных и функций пользователя.
Операторы ситемы MathCAD.
Арифметические операторы предназначены для выполнения арифметических действий над численными величинами и конструирования математических выражений.
Оператор
Назначение оператора
X :=Y
Локальное присваивание X значения Y
X є Y
Глобальное присваивание X значения Y
X =
Вывод значения X
-X
Смена знака X
X + Y
Суммирование X с Y
X – Y
Вычитание из X значения Y
X Ч Y
Умножение X на Y
X/Y
Деление X на Y
XY
Возведение X в степень Y
Ц X
Вычисление квадратного корня из X
X !
Вычисление факториала
| Z |
Вычисление модуля комплексного Z
Z
Вычисление комплексно-сопряженного с Z числа
(n )
Ввод пары круглых скобок с шаблоном
(
Ввод открывающей скобки
)
Ввод закрывающей скобки
X n
Ввод нижнего индекса n
X
Ввод верхнего индекса n
Расширенные арифметические операторы:
Оператор
Вычисление определенного интеграла
Применение расширенных операторов значительно облегчает решение математических задач.
Операторы отношения (логические операторы):
Оператор
MathCAD — это просто! Часть 17. Снова символьные вычисления
Уже третью статью подряд мы с вами будем заниматься символьными вычислениями. Среда MathCAD, как вы сами уже имели возможность убедиться, имеет очень гибкие и мощные средства организации подобного рода вычислений. И вычисления эти в математике бывают важны и используются очень часто — именно поэтому мы с вами говорим о них столь подробно. Сегодня мы познакомимся с некоторыми новыми аспектами организации символьных вычислений в MathCAD’е, которые наверняка пригодятся вам при последующей работе с этой мощной математической средой.
Разложение на дроби
Мы уже говорили с вами о работе с дробями — точнее, о приведении суммы нескольких маленьких дробей к одной, но большой дроби. Теперь пришло время поговорить о процессе, диаметрально противоположном этому — о разложении одной дроби на сумму нескольких. Для решения этой задачи в MathCAD’е есть специальный оператор, который называется parfrac (от английского partial fraction — частные дроби). Использование этого оператора чрезвычайно простое, как, впрочем, и всех остальных операторов, которые можно найти на панели Symbolic. Достаточно, записав дробь, которую вы хотите разложить на сумму простых, затем выбрать на этой панели кнопку parfrac и указать имя переменной, для которой будет проводиться разложение. Когда вы добавите оператор parfrac, то перед ним автоматически добавится и оператор convert. Можете попробовать использовать их раздельно — уже на первой же дроби вы сможете собственноручно убедиться, что ничего ни хорошего, ни плохого из этого не выйдет — MathCAD просто не приемлет эти два оператора по отдельности.
Тот же самый результат, не используя оператор parfrac, можно получить, выбрав в меню Symbolics пункт Variable, а в нем — Convert to Partial Fraction. В этом случае, правда, если что-то нужно будет изменить в исходном выражении, операцию придется повторить, поэтому лучше все же использовать оператор parfrac.
Оператор collect
Мы уже говорили о работе со скобками в различных выражениях. Оператор collect является еще одним весьма и весьма полезным оператором, помогающим в работе со скобками — если конкретнее, то для вынесения из-за скобок общих множителей для полиномиальных выражений. Думаю, вы оцените все преимущества использования этого простого, но крайне эффективного оператора, если вам когда-нибудь будет нужно в реальных расчетах заниматься подобными вещами в практических целях. В общем-то, конечно, кто-то может сказать (и будет, пожалуй, прав), что поиск и вынесение за скобки общего множителя — не самая трудоемкая задача, а потому особой нужды в том, чтобы напрягать для ее решения MathCAD, пожалуй, что и нет. Однако на самом деле гибкость оператора collect позволяет проводить поиск даже самых замысловатых общих множителей, что вручную все-таки бывает не всегда удобно. Способ применения оператора collect действительно предельно прост. Мы, как обычно, записываем выражение, которое нужно преобразовать, а затем ищем на привычной уже нам панели Symbolic нужный нам оператор. После запятой в качестве параметра указывается имя переменной, которую мы будем выносить за скобки. Можно указывать не отдельную переменную, а какую-то функцию либо выражение — например, синус или логарифм. Правда, вынесение общих множителей реализовано довольно своеобразно — программа работает только с одной степенью переменной. То есть, если у вас будет запись вида x2+x, то она останется неизменной после применения оператора collect по переменной x.
Коэффициенты многочленов
Иногда бывает полезно вынести коэффициенты многочлена в специальный столбец для того, чтобы потом ими оперировать. Конечно, для большинства распространенных задач полиномы не превышают третьей степени, и сделать это не так уж и сложно вручную. Однако зачем выполнять вручную то, что можно сделать одним оператором? Я думаю, вы согласитесь с тем, что это будет не слишком рациональным использованием времени, а потому имеет смысл применить оператор coeffs для того, чтобы получить готовый столбец коэффициентов. В общем-то, я думаю, вы уже догадались, как применять этот оператор. Нужно записать многочлен, а затем воспользоваться панелью Symbolic (еще раз напомню, что название оператора, который нужно в данном случае использовать, coeffs). Обращу ваше внимание на то, что столбец записывается снизу вверх от высших степеней многочлена к высшим. Также, конечно же, можно использовать именованные функции или другие выражения, которые возведены в различные степени.
Ограничения на переменные в вычислениях
Иногда при использовании символьных вычислений есть необходимость выставить определенные ограничения в вычислениях, которые могут коренным образом упростить итоговое выражение. Действительно, весьма и весьма часто при решении прикладных задач по условиям этих самых задач на переменные накладываются определенные ограничения — например, очень часто переменные можно считать неотрицательными или даже строго больше нуля. Как рассказать MathCAD’у, что переменные ограничены определенным диапазоном значений? Естественно, для этого в этом мощном математическом пакете существует специальный оператор. И имя ему — assume. Оператор assume используется вместе с остальными операторами (особенно часто в сочетании с оператором simplify). Я уже рассказывал в прошлый раз о том, как изменяется внешний вид операторов символьных вычислений в MathCAD, а потому это не должно стать для вас сюрпризом.
В качестве ограничений, накладываемых на переменные, могут выступать не только минимальное и максимальное значения этой самой переменной. Для того, чтобы увидеть полный список всех возможных ограничений, нажмите на панели Symbolic кнопку Modifiers. Она, в отличие от большинства других кнопок на этой панели, не добавляет никаких новых операторов в рабочий лист MathCAD, а всего лишь показывает или прячет панель с модификаторами (modifiers) — эта панель как раз и пригодится нам для выставления различных ограничений на переменные при упрощении выражений и других символьных операциях.
Как видите, модификаторов в панели не так уж много, а потому мы поговорим о каждом из них. Первый — это, как вы можете заметить, уже довольно неплохо знакомый нам с вами assume. Не буду повторяться — о его использовании я рассказывал всего парой абзацев выше. Второй по счету модификатор — это real. Поскольку MathCAD может оперировать и комплексными числами (об этой полезной возможности мы с вами еще обязательно поговорим), то местами в подобных вычислениях полезно наложить на переменную ограничение и определить ее как действительную. RealRange — третий по счету модификатор на панели Modifiers — это двустороннее ограничение на действительную переменную на определенном отрезке (то есть, обратите внимание, концы этого отрезка также попадут в область значений нашей переменной). Четвертый модификатор имеет название trig, и он обозначает переменную как тригонометрическую величину. Этот модификатор используется по сравнению с остальными совсем не часто, поскольку при работе с тригонометрическими функциями все же предпочтительнее использовать их общепринятые обозначения, которые, будучи совсем не длинными, сильно упрощают чтение проекта и уменьшают вероятность в нем запутаться. Последний модификатор, который можно найти на панели, — это модификатор integer. Он используется для задания целочисленных переменных. Используются модификаторы для указания выражений в операторе assume. То есть, например, если мы хотим указать при вычислении какого-либо символьного выражения, что переменная n у нас будет целочисленной, то мы должны записать после оператора assume следующее: n = integer. Совершенно аналогично и для всех остальных модификаторов, которые были описаны выше.
Кстати, при преобразовании выражений наподобие того, что приведено на иллюстрации чуть выше, совершенно не обязательно использовать assume вместе с simplify. Если вы уберете оператор simplify, то сможете сами убедиться в том, что без него выражение будет вычислено ничуть не хуже. Правда, если пойти дальше и убрать еще и assume, оставив при этом n = integer, то MathCAD выдаст ошибку с сообщением о неверном синтаксисе команды.
Оператор float
Напоследок мы с вами поговорим о еще одном весьма полезном операторе, который, будучи оператором символьных вычислений, используется для получения конкретного результата в виде числа. Оператор float используется тогда, когда нужно получить результат символьных вычислений не в виде формулы, а в виде числа. Вполне понятно, что применять его можно исключительно в тех случаях, когда все числа в выражении заданы не в общем виде (т.е. не какими-то именованными константами), а конкретными значениями. В противном случае MathCAD ошибки не выдаст, однако использование оператора float будет напрочь лишено смысла. Для того, чтобы проиллюстрировать использование этого оператора, обратимся к примеру кубического уравнения, который рассматривался в предыдущей части нашей серии статей по MathCAD’у. Решения кубических уравнений в виде формул занимают очень много места и отличаются громоздкостью, а потому их целесообразно упрощать с помощью оператора float. Можете сравнить формульные результаты, полученные нами в прошлый раз, с тем, как они записываются с помощью этого оператора: разница, как говорится, налицо.
Думаю, синтаксис использования этого оператора вполне понятен из примера: в качестве первого параметра (до оператора) — выражение, которое нужно вычислить (в приведенном примере его, конечно, лучше опускать, потому что иначе это приводит, как показано на иллюстрации, к дублированию результата), а в качестве второго (после оператора) — точность, т.е. количество значимых цифр после запятой, остающихся после вычислений. Что ж, пока что, я так думаю, хватит на этот раз — нехорошо было бы перегружать вас, уважаемые читатели, информацией, тем более, что тема символьных вычислений в MathCAD’е явно не относится к тем, которые можно обсуждать практически бесконечно за чашкой чая или кофе. Я думаю, что те операторы, которые мы сегодня рассмотрели, наверняка пригодятся вам в повседневных буднях вычислений в MathCAD’е, и вы еще не раз будете добрым словом поминать разработчиков этого всесторонне замечательного математического пакета, предусмотревших для вас все эти возможности.
SF, spaceflyer@tut.by
Компьютерная газета. Статья была опубликована в номере 30 за 2008 год в рубрике soft
Основные средства программы MathCAD
Конструирование выражений в MathCAD осуществляется с помощью математических панелей. Ввод заканчивается клавишей Enter или щелчком мыши вне определения. Синий уголок показывает текущий операнд выражения, он может быть расширен клавишей » Пробел «. В качестве разделителя целой и дробной части числа используется точка.
Арифметические операции , простейшие функции, знаки присваивания переменным (символ :=) можно вводить, используя панель Calculator (Калькулятор). Численные ответы выражений определяются нажатием клавиши [=] на клавиатуре. В качестве элементов выражения могут использоваться функции определенных интегралов, сумм и произведений с панели Calculus.
Для ввода математической функции различной категории используется команда Insert /Function (Вставить функцию).
Для ввода текстового комментария необходимо ввести знак двойной кавычки «, затем вводить текст. Текстовая область, как и любая другая, может быть перемещена на рабочем листе или скопирована в буфер . Маркеры текстовой области позволяют менять её размеры
1.4.1. Переменные и функции.
Переменная в MathCAD – это идентификатор, который используется в выражениях и которому можно присвоить числовое значение. Идентификатор – набор букв и цифр, первым из которых должна быть буква; буквы могут быть латинскими или греческими с соответствующей панели; малые и большие буквы различаются; в качестве цифры может использоваться символ подчеркивания. При выполнении цепочки выражений последовательность вычислений в документе определяется слева — направо и сверху — вниз. Чтобы цепочка выражений была вычислена, надо всем переменным присвоить числовые значения. Присваивания бывают двух видов: локальные и глобальные. Локальное присваивание осуществляется нажатием символа := на панели Калькулятор. Присвоенное значение в документе начинает действовать с момента его записи (слева-напрво и сверху-вниз).
Глобальное присваивание действует в пределах всего документа независимо от места его определения. Глобальное присваивание определяется символом === с панели Evaluation. Ниже (Рис.1.10) приведен пример цепочки выражений с использованием локального (для х) и глобального (для а) присваивания:

, 
,
,
, 
Встроенные константы
Символьный процессор распознает и способен выдавать математические константы в качестве результата.
Вычислительный процессор воспринимает как числа
-бесконечность ( клавиши <Ctrl>+<Shift>+<z>);
— основание натурального логарифма (клавиша <е>);
; — число «пи» (вводится клавишами <Ctrl>+<Shift>+<p>);
— мнимая единица (вводится клавишами <1>, <i> или <1>, <j>);
— символ процента, <%>, эквивалентный 0,01.
Основные типы переменных
Действительные числа
Любое выражение, начинающееся с цифры, MathCAD интерпретирует как число. Числа набираются на клавиатуры в нужном формате (Рис.1.11). Форматы представлены в окне Format/Result (Рис.1.7.).






Размерные значения
В MathCAD числовые переменные и функции могут обладать размерностью. Используется команда Insert / Unit (Вставка / Единицы). «Горячая» клавиша <Ctrl>+<U>. В программе встроено большое количество единиц измерения, с помощью которых и создаются размерные переменные. Для ввода размерного значения — сразу после ввода переменной ввести символ умножения, в окне Insert / Unit списке Unit (Единицы) выбрать нужную единицу измерения
Pедактирование формул
В программе MathCAD при вводе формул курсор имеет вид: синего уголка («клюшка») . Действие производится только с объектом, выделенным этим уголком. Для того чтобы охватить синим уголком блок, надо нажать на пробел один или несколько раз.


- Набираемая формула всегда заключена в рамку. Не выходите из рамки, пока не закончили набор формулы!
- Для набора формул пользуйтесь «Калькулятором» из «Математической палитры»
При наборе формул возможно появление ошибок набора. Кнопка
на стандартной панели инструментов позволяет отменить последнее действие, выполненное при редактировании, т.е. вернуться к тексту, набранному ранее.
Встроенные функции MathCAD
Стандартные математические функции и численные методы, запрограммированные в MathCAD, реализованы в виде встроенных функций. Для вставки функции команда меню Insert /Function (Вставить функцию)(Рис.1.17).

Собственные функции пользователя
Помимо широкого набора стандартных функций в MathCAD возможно определение собственных функций пользователя (Рис.1.14). В простейшем случае функция может быть определена выражением пользователя. Функция определяется следующим образом:
где имя_функции – любой идентификатор; аргументы – список аргументов функции через запятую; выражение – любое выражение с использованием стандартных функций и функций пользователя, определенных в документе перед этим. Выражение должно содержать идентификаторы аргументов. Пример цепочки выражений с использованием функций пользователя приведен ниже:





1.4.2. Массивы
Массивами (arrays) называют упорядоченные последовательности чисел или элементов. Доступ к любому элементу массива возможен по его индексу, т. е. номеру в последовательности чисел В MathCAD условно выделяются два типа массивов: векторы (одноиндексные массивы), матрицы (двухиндексные массивы), и тензоры (многоиндексные массивы); ранжированные переменные (range variables) — векторы, элементы которых определенным образом зависят от их индекса.
Векторы и матрицы
Матрицей размером mxn называется совокупность m•n чисел, расположенных в виде прямоугольной таблицы из m строк и n столбцов. Эту таблицу обычно заключают в круглые скобки. Для краткости матрицу можно обозначать одной заглавной буквой, например, А или В.
В общем виде матрицу размером m x n записывают так
палитры инструментов Matrix или команды Insert/Matrix (Рис.1.18, Рис.1.19, Рис.1.20). Появляется окно Insert matrix, где указывается количество строк, столбцов Rows и Columns.