Символьные вычисления

Еще одним достоинством пакета является возможность аналитического (символьного) решения задач. Безусловно, круг таких задач существенно уже круга задач, решаемых численными методами. Символьные преобразования могут производиться с помощью секции меню «Символика» или операторами панели «Symbolic». Покажем, как реализуются некоторые конкретные символические вычисления.

Решение уравнений производит оператор solve (решить). После его ввода необходимо заполнить места маркеров: справа вводится имя неизвестной или имена нескольких переменных, а слева – решаемое уравнение или их система. Результатом могут быть как аналитические выражения, так и численные значения корней. Последние могут быть приведены к привычным десятичным дробям после набора знака = (равно). Покажем это на примерах:

Следует отметить, что символьное решение сложных уравнений, содержащих экспоненты и тригонометрические функции, часто приводит к ошибочным результатам.

Следующие возможности пакета, связанные с символьными вычислениями, - это упрощение и разложение выражений –операторыsimplify (упростить) и expand (разложить) соответственно; разложение на множители – factor (от factoring – разложение на множители); разложение на элементарные дроби – parfrac (Partial Fraction – элементарные дроби); приведение подобных – collect (собрать); задание вектора коэффициентов полинома – оператор coeffs, служащий для упрощения ввода вектора v коэффициентов функции polyroots(v). Ниже показаны примеры использования названных операторов.

 

Увы, чаще всего приведенные операторы не могут выполнить задание.

 

 

Довольно часто приходится производить замену переменных в математических выражениях. В MathCAD это можно сделать с помощью символьного оператора substitute (заместить). Оператор имеет три маркера для ввода выражения (его имени), заменяемой переменной и замещающей переменной. При необходимости список замен, как показано ниже, может расширяться с использованием запятой между его элементами и логического знака равенства (Ctrl =) для реализации каждой из замен.

Пакет предоставляет также пользователю следующие средства для проведения математического анализа.

Символьное дифференцирование и интегрирование производят с помощью панели Calculus (вычисления) и символьного знака равенства → , набираемого совместным нажатием клавиш [Ctrl]и [.](точка), например:

Вычисление пределов тоже выполняют с использованием панели Calculus и символьного знака равенства. Покажем примеры вычисления пределов.

 

 

Аналогичными действиями организуют вычисление суммы и произведения членов некоторого ряда.

Столь популярное в математике разложение в ряд Тейлора осуществляют следующим образом. Определяют функцию, после чего вызывают оператор series (ряд) панели Calculus и заполняют маркеры ввода. Второй из них предназначен для определения переменной, по которой производят разложение, и точки, в окрестности которой оно осуществляется. По умолчанию производится разложение в окрестности нулевой точки. В примере показано, как задается другая точка с помощью знака логического равенства.

Три видаинтегральных преобразований: Фурье, Лапласаи Z-преобразование, - производит символьный процессор пакета. Каждое из них вызывается своим оператором – соответственно fourier, laplase, ztrans. Преобразования служат для перехода от оригинала к его изображению. Например, переход от сигнала во временной области с помощью преобразования Фурье к его изображению в частотной области позволяет существенно упростить за счет этого последующую обработку. Каждое из преобразований предполагает использование обратного преобразования. Оно реализуется соответствующими операторами: invfourier, invlaplase, invztrans. Приведем иллюстративный пример использования преобразования Фурье.

 

Следует заметить, что далеко не всегда преобразование может быть выполнено столь просто, как показано в примере, или выполнено вообще. Аналогичным образом выполняются два других интегральных преобразования, суть которых поясняется ниже.

Преобразование Лапласа: F(s) = и его

обратное преобразование: f(t) = .

Z-преобразование: F(z) = и соответствующее

обратное преобразование: f(n) = .