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

Символьный процессор Mathcad позволяет решать ряд математических задач ана­ли­ти­­чески, без применения численных методов.

Основными являются:

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

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

· пределы функций;

· производные функций;

· неопределенные и определенные интегралы;

· разложение функций в ряд Тейлора;

· решение уравнений;

· интегральные преобразования Фурье, Лапласа, Z-преобразование.

§ символьные матричные вычисления: транспонирование, обращение матрицы, вычисление определителей.

§ подстановка символьных переменных в математическое выражение.

Символьные вычисления в Mathcad можно осуществлять в двух различных вариантах

  • С помощью команд меню Symbolics (Символика).
  • С помощью оператора символьного вывода → , ключевых слов символьного процессора и обычных формул (в справочной системе Mathcad этот способ называется символьными вычислениями в реальном времени – live symbolic evaluation).

Первый способ более удобен, когда требуется быстро получить какой-либо анали­ти­ческий результат для однократного использования, не сохраняя ход вычислений. Для символьных вычислений при помощи команд предназначено главное меню Symbolics (Символика), объединяющее математические операции, которые Mathcad умеет выпол­нять аналитически.

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

Для реализации второго способа применяются все средства Mathcad, пригодные для численных вычислений (например, панели Calculator(Кальку­ля­тор),Evaluation (Выражения) и т.д.), и специальная математическая панель инструментов, которую можно вызвать на экран нажатием кнопки Symbolic Keyword Toolbar (Панель символики) на панели Math (Математика). На панели Symbolic (Символика) находятся кнопки, соответствующие специфическим командам символьных преобразований, например, таким как разложение выражения на множители, расчет преобразования Лапласа и другим операциям, которые в Mathcad нельзя проводить численно, и для которых, соответственно, не предусмотрены встроенные функции.

Оператор символьного вывода → вызывается одновременным нажатием клавиш Ctrl+<.>. Имеется и расширенный оператор символьного вывода, который имеет вид стрелки с двумя шаблонами и позволяет выполнять символьные операции с указанием вида преобразования выражения. Вызывается расширенный оператор символьного вывода одновременным нажатием клавиш Ctrl+Shift+<.>, или соответствующей кнопки панели Symbolic (Символика).

Не всякое выражение поддается аналитическим преобразованиям. Если это так (в си­лу того, что задача не имеет аналитического решения или оказывается слишком сложной для символьного процессора Mathcad), то в качестве результата выводится само выражение.

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

Упрощение символьных выражений в Mathcad осуществляется с помощью следующих команд меню Symbolic: Evaluate(Вычислить),Simplify(Упростить),Expand(Разложить),Factor(Разложить на множители),Collect(Привести подобные),Polynomial Coefficient (Коэффициенты полинома).

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

Чтобы упростить выражение с помощью команды Simplify(Упростить) меню Symbolic необходимо

  • Ввести выражение.
  • Выделить выражение целиком или его часть, которую нужно упростить.
  • Выбрать команду Symbolics|Simplify (Символика|Упростить).

Для упрощения выражения при помощи оператора символьного вывода (расширен­ного) используй­те ключевое слово simplify. При этом не забывайте, что, если каким-либо переменным, входящим в выражение, ранее были присвоены некоторые значения, то они будут под­став­лены в него при выполнении символьного вывода.

Упрощение выражений, содержащих числа, производится по-разному в зависимос­ти от наличия в числах десятичной точки. Если она есть, то выполняется непосредст­вен­ное вычисление выражений.

Операция символьного разложения, или расширения, выражений противоположна по смыслу операции упрощения. В ходе разложения раскрываются все суммы и произве­дения, а сложные три­г­онометрические зависимости раскладываются с помощью тригоно­метрических тождеств. Разложение выражений производится путем выбора команды Symbolics|Expand (Символика|Разложить) либо использованием вместе с оператором символьного вывода ключевого слова expand.

Разложение на простые множители производится при помощи команды Symbolics|Factor (Символика|Разложить на множители) либо использованием вместе оператором символьного вывода ключевого слова factor. Эта операция позволяет разложить полиномы на произведение долее простых полиномов, а целые числа – на простые сомножители.

Приведение подобных слагаемых полинома производится при помощи команды Symbolics|Collect (Символика|Привести подобные) либо использованием вместе оператором символьного вывода ключевого слова collect с именем переменной, относи­тель­но которой требуется привести подобные. После ключевого слова collect допускается задание нескольких переменных через запятую. В этом случае приведение подобных членов выполняется последовательно по всем переменным.

Чтобы разложить сложную дробь на долее простые, следует либо выполнить команду Symbolics| Variable| Convert to Partial Fractions (Символика| Переменная| Разложить на элементарные дроби), либо указать ключевое слово parfrac.

Применяя первый способ (через меню), необходимо перед выбором команды выделить переменную, по которой будет производиться разложение, а если используется второй способ (с оператором символьного вывода), то имя переменной следует указать после ключевого слова parfrac.

Команда Symbolics| Polynomial Coefficient (Символика|Коэффициенты полинома) выдает коэффициенты полинома, представленные в виде вектора.

Следует отметить, что математической теории оптимизации выражений не сущест­ву­ет. Это высоко интеллектуальная работа, и искусственный интеллект Mathcad не может сравниться с естественным. В большинстве случаев при решении практических задач трудно выбрать нужную команду упрощения. Поэтому, пытаясь упростить выражение, обычно используют все команды наугад до получения приемлемого результата.

При практических расчетах широкое применение находит команда Substitute (Замена переменной). Она позволяет производить замену переменных в математических выражениях, выполнять численные расчеты и т.п.

Технология замены переменной через меню состоит в выполнении следующих операций

§ Ввод выражения, которое заменяет переменную. Это выражение может быть числом, символьной переменной или выражением.

§ Сохранение выражения в буфере с помощью команды Edit|Copy.

§ Ввод выражения, требующего замены переменной.

§ Выделение заменяемой переменной двойным щелчком мыши.

§ Выполнение команды Symbolics| Variable| Substitute.

В результате этих действий на экране появится результат.

Следует отметить, что одной командой можно заменить одну переменную. Для замены n переменных процедуру замены переменной следует повторить n раз.

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

Наиболее ярким проявлением возможностей символьного процессора Mathcad яв­ля­ет­ся аналитическое вычисление пределов, производных, интегралов и разложений в ряд.

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

Все перечисленные операции можно осуществить и при помощи оператора сим­воль­ного вывода. Для этого нужно с панели инструментов Calculus или одновре­мен­ным нажатием соответствующей комбинации клавиш вывести нужный шаблон, заполнить пустые знакоместа, ввести оператор символьного вывода → и выполнить щелчок мышью вне выражения.

С помощью символьного процессора Mathcad можно осуществить разложение выражения или функции в ряд Тейлора по любой переменной x в точке x=0, т.е. предста­вить это выражение суммой вида , где – некоторые коэффи­циенты, не зависящие от x, но, возможно, являющиеся функциями других переменных, входящих в исходное выражение.

Чтобы разложить выражение в ряд Тейлора через меню

  • Введите выражение.
  • Выделите имя переменной, по которой проводите разложение.
  • Выполните команду Symbolics| Variable |Expand to Series (Символика| Перемен­ная| Разложить в ряд.
  • В появившемся диалоговом окне введите желаемый порядок аппроксимации (Order of Approximation) и нажмите кнопку OK.

Результат разложения появится под выражением.

Для разложения в ряд при помощи оператора сим­воль­ного вывода, используйте ключевое слово series, после которого, через запятую, указывается имя переменной и порядок аппроксимации.

Визуализация результатов

Таблицы

Часто результатом расчетов является функция. В этом случае важна форма пред­ставления результатов. На практике используется представление функций в виде формулы, таблицы, графика или сочетания этих форм визуализации. Рассмотрим визуализацию результатов расчетов при помощи таблиц и графиков.

В системе Mathcad можно сформировать таблицу значений функции в виде табли­цы ранжированной переменной и соответствующей таблицы значений функции.

В этом случае нужно задать ранжированную переменную x, вывести на экран значения x и f(x) и выровнять соответствующие области горизонтально командой меню Format| Align Regions| Across (Формат| Выровнять области| Горизонтально).

Используя векторное представление данных и матричные функции augment и stack, можно создать полноценную итоговую таблицу. При этом следует иметь в виду, что, если вектор или матрица содержат более 10-и строк, они окаймляются нумерацией строк и столбцов. Векторное представление исходных данных, конечно, не исключает ис­пользования ранжированных переменных для их задания.

Пример.

Пусть необходимо сформировать таблицу значений функции y=sin x для значений x от 0 до π с шагом h=0.1 π.

Этого можно достичь, используя команды

i:=0..10 Xi:=I*0.1* π V:=sin(X) M:=augment (X,V)

Y:=(“x” “sin(x)”) MY:=stack(Y,M) .

Двумерная графика

Задание графика в выбранном месте документа начинается с выбора его типа при помощи меню Insert| Graph или панели Graph с девятью инструментальными кнопками. В Mathcad доступно задание семи основных типов графиков, которые разделены на две группы – 2D и 3D, т.е. двумерные и трехмерные.

§ Двумерные графики

· XY декартов график (X-Y Plot).

· Полярный график (Polar Plot).

§ Трехмерные графики

· График трехмерной поверхности (Surface Plot).

· График линий уровня (Contour Plot).

· Трехмерная гистограмма (3D Bar Plot).

· Трехмерное множество точек (3D Scatter Plot).

· Векторное поле (Vector Field Plot).

Двумерный график любого типа нельзя переделать в график другого типа (в отли­чие от трехмерных графиков).

Все графики создаются совершенно одинаково, различия обусловлены отображае­мыми данными.

Чтобы построить декартов график при помощи панели Graph

· Поместите курсор ввода в то место документа, куда нужно поместить график.

· Нажмите на панели Graph кнопку X-Y Plot для создания декартова графика или другую кнопку для иного желаемого типа графика.

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

Если имена данных введены правильно, график появится на экране. Некорректное определение данных приводит к выдаче сообщения об ошибке.

Точно так же создаются графики при помощи меню Insert| Graph или нажатием соответствующей типу графика горячей клавиши.

Чтобы удалить график, щелкните в его пределах и выберите в верхнем меню Edit команду Cut(Вырезать) илиDelete (Удалить).

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

Для построения XY-графика необходимы два ряда данных, откладываемых по осям X и Y.

Самый простой способ – это сформировать два вектора данных, которые будут отложены вдоль осей X и Y. В этом случае в местозаполнители возле осей вводятся имена векторов. Также допускается откладывать по осям элементы векторов, т.е. в местозаполнители возле осей вводить имена компонент векторов Xi и Yi , соответственно.

В результате полу­ча­ется график, на котором отложены точки, соответствующие парам элементов векторов, соединенные отрезками прямых линий. Образованная ими ломаная называется рядом данных, или кривой (trace).

Подобным образом легко создать и XY-график столбцов или строк матрицы, применяя оператор выделения столбца и откладывая соответствующие выражения по осям графика.

В качестве переменных, откладываемых по любой из осей, можно использовать ранжированную переменную. При этом по другой оси должно быть отложено либо выражение, содержащее саму ранжированную переменную, либо элемент вектора с индексом по этой ранжированной переменной (но не сам вектор!).

Нарисовать график любой скалярной функции f(x) можно двумя способами.

Первый заключается в дискретизации значений функции, присвоении этих значе­ний и прорисовке графика вектора.

Второй, более простой способ, называемый быстрым построением графика, заключается во введении функции в один из местозаполнителей (например, для оси Y), а имени аргумента – в местозаполнитель у другой оси. В результате Mathcad сам создаст график функции в пределах значений аргумента, по умолчанию принятых равными от –10 до +10. Впоследствии можно поменять диапазон значений аргумента, и график автома­ти­чески подстроится под него.

Для создания полярного графика необходимо нажать кнопку Polar Plot на панели Graph и вставить в местозаполнители имена переменной и функции: угол (нижний местозапол­нитель) и радиус (левый местозаполнитель). Точно так же, как при создании декартова графика, по осям могут быть отложены два вектора, элементы векторов и ранжированные переменные в различных сочетаниях или осуществлено быстрое построение графика функции.

Форматирование полярных графиков идентично форматированию декартовых, поэтому все, сказанное ниже об оформлении двумерных декартовых графиков, в полной мере относится и к графикам в полярных координатах.

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

· Поместите линии ввода так, чтобы они целиком захватывали выражение, стоящее в надписи координатной оси Y.

· Нажмите клавишу <,>.

· В появившийся местозаполнитель введите выражение для второй кривой.

· Щелкните в любом месте вне этого выражения, и на графике появится еще одна кривая.

Чтобы убрать один или несколько рядов данных с графика, удалите клавишами Del или Backspace соответствующие им надписи у координатных осей.

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

При построении на одном и том же графике нескольких зависимостей разного аргумента достаточно позаботиться только о соответствии типа данных для каждой пары то­чек в отдельности. Например, можно совместно отобразить график функции от ранжи­ро­ванной переменной и график функции, созданный в режиме быстрого построения.

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

Когда график создается впервые, Mathcad выбирает представленный диапазон для обеих координатных осей автоматически. Чтобы изменить этот диапазон

· Перейдите к редактированию графика, щелкнув в его пределах мышью.

· График будет выделен, а вблизи каждой из осей появятся два поля с числами, обозначающими границы диапазона. Щелкните мышью в области поля, которое нужно изменить.

· Пользуясь клавишами управления курсором, Backspace и Del, удалите содержимое поля.

· Введите новое значение диапазона.

· Щелкните за пределами поля, и график будет перерисован.

Чтобы вернуть автоматический выбор какого-либо диапазона, удалите число из соответствующего поля и щелкните вне него. Граница шкалы будет выбрана Mathcad, исходя из значений данных, представляемых на графике.

Начиная с Mathcad 12, появилась возможность добавления второй оси Y, обладающая собственной шкалой. Использование двух осей ординат очень удобно для представления разнородных данных.

Для того чтобы задать опцию рисования второй оси ординат

· Вызовите двойным щелчком диалоговое окно Formatting Currently Selected X-Y Plot(Форматирование выбранного графика) и откройте его на вкладкуX-Y Axes (Оси X-Y).

· Установите флажок проверки Enable secondary Y axis (Включить вторую ось Y).

· Откройте вкладку Secondary Y axis (Вторая ось Y) и настройте в ней желаемые параметры второй оси.

· Нажмите кнопку OK.

Изменение внешнего вида шкалы, нанесенной на координатную ось, производится с помощью диалогового окна Formatting Currently Selected X-Y Plot(Форматирование выбранного графика), в котором следует перейти на вкладкуX-Y Axes (Оси X-Y). Вызвать диалог можно двойным щелчком мыши в области графика или выполнением команды Format| Graph| X-Y Plot (Формат| График| X-Y График) или выбором в контекстном меню команды Format (Формат).

С помощью флажков и переключателей легко поменять внешний вид любой из трех осей (одной оси X и двух осей Y).

Перечислим доступные опции и поясним их действие

· Log scale (Логарифмический масштаб) – график по данной оси будет нари­сован в логарифмическом масштабе. Это полезно, если данные разнятся на несколько порядков.

· Grid lines (Линии сетки) – показать линии сетки.

· Numbered (Нумерация) – показать нумерацию шкалы. Если убрать этот флажок, то числа, размечающие шкалу, пропадут.

· Auto scale (Автоматический масштаб) – выбор диапазона оси производится автоматически процессором Mathcad.

· Show markers (Показать маркеры) – выделение значений на осях.

· Auto grid (Автоматическая шкала) – разбиение шкалы производится автома­ти­чески процессором Mathcad. Если этот флажок снят, в поле ввода ниже следует указать желаемое количество меток шкалы.

· Equal scales (Одинаковый масштаб) – оси X и Y принудительно рисуются в одинаковом масштабе.

· Axes Style (Вид оси) – можно выбрать один из трех видов системы координат:

o Boxed (Прямоугольник).

o Crossed (Пересечение) – координатные оси в виде двух пересекаю­щих­ся прямых.

o None (Нет) – координатные оси не показываются на графике.

Для полярного графика предусмотрены другие виды осей: Perimeter (Периметр), Crossed (Пересечение) и None (Нет).

Изменить описанные параметры можно и в диалоговом окне Axes Format (Формат оси), если дважды щелкнуть на самой оси.

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

· Дважды щелкните на графике.

· На вкладкеX-Y Axes (Оси X-Y) диалогового окна Formatting Currently Selected X-Y Plot(Форматирование выбранного графика) установите флажок Show markers (Показать маркеры).

· При желании выберите цвет маркера, щелкнув на поле справа от флажка.

· Нажмите кнопку OK.

· В появившийся местозаполнитель введите число или имя переменной, значение которой вы хотите отобразить на оси маркером.

· Щелкните вне маркера.

На каждой из осей допускается установить по два маркера. Если определен лишь один из них, то второй виден не буден.

С помощью вкладки Traces (Ряды данных) диалогового окна Formatting Currently Selected X-Y Plot(Форматирование выбранного графика) легко установить комбинацию параметров линии и точек для каждого из рядов данных, представленных на графике. Пользователю требуется выделить в списке нужный ряд данных (его положение в списке соответствует положению метки зависимости у оси Y) и установить в списках в середине диалогового окна желаемые установки.

На вкладке Traces (Ряды данных) регулируются следующие параметры

· Legend label (Метка легенды) – текст легенды, описывающий ряд данных (легенда объясняет смысл различных параметров).

· Symbol Frequency (Частота символов) – частота символов, отмечающих точки (этот параметр определяет будет ли отмечаться каждая точка графика или каждая вторая, третья т.д.).

· Symbol (Символ) – символ, которым обозначаются отдельные точки данных.

· Symbol Weight (Размер символа) – размер точек данных.

· Line (Линия) – стиль линии:

o Сплошная

o Пунктирная

o Штриховая и т.п.

· Line Weight (Толщина) – толщина линии и точек данных.

· Color (Цвет) – цвет линии и точек данных.

· Type (Тип) – тип представления ряда данных:

o Lines (линии)

o Points (точки)

o Error (ошибка)

o Bar (столбец)

o Step (шаг)

o Draw (рисунок)

o Stem (стержень)

o Solid bar (гистограмма)

· Y-axis (Ось Y) – информация о том на какой из двух осей Y откладывается ряд данных.

Наши рекомендации