Палитра символьных преобразований SmartMath.
- Назначение системы SmartMath.
- Операторы символьного вывода.
- Состав директив системы SmartMath и их применение.
Назначение системы SmartMath. |
Начиная с версии 4.0 система MathCAD обзавелась новым средством оптимизации вычислений — SmartMath. Это фактически экспертная система, ускоряющая вычисления в тех случаях, когда это возможно. При запущенной системе SmartMath процессор численных операций, приступая к вычислению формульного блока, запрашивает символьный процессор о том, может ли тот произвести упрощение или иное преобразование исходной формулы. Если это возможно, то вычисления производятся уже по упрощенной формуле.
Помимо оптимизации вычислений второе важное назначение системы SmartMath заключается в визуализации символьных вычислений и преобразований. Система SmartMath более полно использует ядро символьных операций, чем символьные вычисления из подменю позиции Symbolics главного меню, и снимает некоторые ограничения на их выполнение. Например, возможно использование в преобразуемых выражениях функций пользователя. Еще важнее то, что результаты символьных преобразований, выполняемых системой SmartMath, автоматически меняются при изменении исходных символьных данных.
Система SmartMath в сущности является частью программных средств MathCAD, реализующих линейные программы символьных вычислений.
Операторы символьного вывода. |
Вначале для визуализации результатов символьных преобразований был введен специальный символ — удлиненная горизонтальная стрелка —>. Ее можно вызвать нажатием клавиш Ctrl+. (точка) или вызовом из палитр математических символов (для ввода отношений и символьных операций). Шаблон этого знака имеет вид , где на месте черного прямоугольника вводится подвергаемое символьному преобразованию исходное выражение.
Указанный символ можно рассматривать как простой оператор символьного вывода. Если задать исходное выражение и вывести курсор из формульного блока с ним, то система помещает результат его символьных преобразований после стрелки (оператора символьного вывода). Это и есть первый этап работы с системой SmartMath.
В версию системы MathCAD 7.0 PRO введен еще один оператор - расширенный оператор символьного вывода. Он задается нажатием клавиш Ctrl+Shift+. (точка) или выбором из палитры символьных операций. Этот оператор имеет вид . В первый шаблон-прямоугольник вводится исходное выражение, а во второй — директивы символьных преобразований. Задаются эти директивы или вводом соответствующих ключевых слов, или из палитры символьных операций.
Кроме того, в один такой оператор можно ввести другой, с тем чтобы получить составной расширенный оператор символьного вывода и место для записи нескольких директив. Это позволяет намечать заданный путь символьных преобразований.
Состав директив системы SmartMath и их применение. |
При вводе стрелки —> после выражения фактически (по умолчанию) над ним исполняется операция Simplify (Упростить). Но что подразумевается под этим, ясно далеко не всегда, даже несмотря на то, что многие символьные операции система выполняет вполне очевидно, например вычисление интеграла или производной в символьном виде.
При необходимости выполняемую операцию можно изменить с помощью ряда ключевых слов, помещенных на панели Symbolic, которая вызывается кнопкой с панели инструментов Math. |
Команды панели Symbolic (символы) | ||
Команда | Функция | Пример |
Символьное вычисление | ||
Символьное вычисление с ключевым словом | ||
Modifier | Дополнительные модификаторы | assume — вводное слово для приведенных далее определений; real — для var=real означает вещественное значение var; RealRange — для var=RealRange(a,b) означает принадлежность вещественной var к интервалу [а,b]; trig — задает направление тригонометрических преобразований. |
float | Численное вычисление | |
complex | Комплексное вычисление | |
assume | Символьное вычисление с некоторыми предположениями | |
solve | Решение уравнения (системы уравнений) относительно переменной (переменных) | |
simplify | Упрощение выражений | |
substitute | Замена переменной | |
factor | Разложение на множители | |
expand | Перемножение степеней и произведений | |
coeffs | Определение коэффициентов полинома | |
collect | Группировка слагаемых по степеням переменной | |
series | Разложение в ряд Тейлора или Лорана | |
parfac | Разложение на элементарные дроби | |
fourier | Преобразование Фурье | |
invfourier | Обратное преобразование Фурье | |
lарlасе | Преобразование Лапласа | |
invlaplace | Обратное преобразование Лапласа | |
ztrans | Z-преобразование | |
invztrans | Обратное Z-преобразование | |
MT | Транспонирование матрицы | |
M-1 | Нахождение обратной матрицы | |
|M| | Нахождение определителя матрицы |
Ключевые слова допустимо набирать только строчными буквами (кроме Modifier — первая буква в этом слове должна быть прописной).
Блоки системы SmartMath имеют следующие отличительные свойства:
- дают хорошее визуальное представление операций;
- имеют шаблоны для задания параметров и опций;
- обеспечивают работу с функциями пользователя;
- обеспечивают передачу данных от формулы к формуле;
- допускают расширение, позволяющее использовать сразу несколько директив;
- имеют конструкцию, схожую с конструкцией программных блоков.
Как нетрудно заметить, директива упрощения simplify не имеет параметров. Директива разложения в ряд Тейлора series требует указания двух параметров: задания начального значения переменной х и указания числа членов ряда. Директивы преобразования Лапласа laplace и решения уравнений solve требуют одного параметра — указания имени переменной (в нашем случае х). С помощью директивы solve можно решать и системы уравнений — тогда ее параметр будет вектором неизвестных.
Выполнение матричных операций в символьной форме особой специфики не имеет.
Оптимизация.
Оптимизация вычислений достигается заменой сложной функции или математиского выражения их аналитическим представлением (если оно, конечно, есть). Для включения процесса оптимизации необходимо выделить выражение, которое хотелось бы оптимизоровать, и выполнить команду Optimize позиции главного меню Math.
Признаком оптимизации выражения является появление после него красной звездочки. Кроме того, щелкнув правой кнопкой мыши и выбрав из контекстного меню команду Show Popup, можно наблюдать появление окна с оптимизированным выражением. |
Особый выигрыш оптимизация может дать при многократном вычислении сложных функций, содержащих интегралы, производные, суммы, произведения и ряды.
Дата добавления: 2016-06-29; просмотров: 2005;