Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Решение задач математического моделирования в системе MathCAD. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
08.09.2026
Размер:
2 Мб
Скачать
☆
Продолжение таблицы 1.2
Оператор
Обозначение
Клавиши
Описание
Векторное произ­ведение
u·v
Ctrl+8
Векторное произведе­ние векторов u и v
Суммирование


Ctrl+Shift+
Сумма членов Х для
выражением
Произведение для


Ctrl+Shift+
Произведение членов
бым выражением
Суммирование
ряда

$
Сумма членов Х бес-
Произведение для
да

#
Произведение членов
Предел функций в
lim

()
Ctrl+L
Предел функции f(X)
вычислений)
Предел функции
lim

()
Ctrl+B
Предел функции f(x)
вычислений)
Предел функции
lim

()
Ctrl+A
Предел функции f(x)
вычислений)
для конечного ряда
конечного ряда
для бесконечного
бесконечного ря-
заданной точке
слева от заданной точки
+4
i=m, m+1,…,n, причём
Х может быть любым
+3
Х для i=m, m+1,…,n, где Х может быть лю-
конечного ряда
Х бесконечного ряда
при х стремящемся к а (выполняется только в режиме символьных
при х приближаю­щемся к а слева (вы­полняется только в режиме символьных
справа от задан­ной точки
при х приближаю­щемся к а справа (вы­полняется только в режиме символьных
21
Окончание таблицы 1.2
Оператор
Обозначе­ние
Клавиши
Описание
режиме символьных вы­числений)
Определённый
()

&
Определённый интеграл
интегрирования
Неопределён-
()
Ctrl+I
Вычисление в символь-
гральной функцииf(t)
Производная
менной t

()
?
Первая производная
n-я производная
менной t
)(tf
dt
dn
n
Ctrl+?
n-я производная функции Сложение
X+Y
+
Скалярное, векторное
Xи Y
Вычитание
X-Y
-
Скалярное, векторное
ние Y из Х
Перевод строки
X+Y
Ctrl+Enter
Перенос части выраже-
ку
интеграл
ный интеграл
заданной функ­ции по пере-
заданной функ­ции по пере-
от подынтегральной функции f(t) с нижним (а) и верхним (b) пределами
ном виде неопределённо­го интеграла от подынте-
функции f(t) по перемен­ной t
f(t) по переменной t
или матричное сложение
или матричное вычита-
Примеры вычислений с некоторыми операторами представлены ниже:
I:=1…10
=55 2·
=110 3·
22
=165
ния на следующую стро-
=3.629×106
10!= 3.629×106 11· f(x):=x·exp(-x)
()

sin
= 0.54 cos(x)=0.54 lim

=3.992×10
()= 1
7
(2 · + 1)
()= 1

 ()
= 3.623
x=:1
1
1.3. Построение графиков
Для построения графиков используется программный графиче­ский процессор, позволяющим строить самые разные графики. Например, в декартовой и полярной системе координат, двумерные поверхности, графики уровней и т.д. Графики любого вида можно удалять, выделять, заносить в буфер обмена, извлекать их оттуда и переносить в любое место документа. Их можно перетаскивать с ме­ста на место курсором мыши, а также растягивать по горизонтали, по вертикали и по диагонали, цепляясь за специальные маркеры. Для всех этих действий применяют обычные приемы, используемые в про­граммах, которые работают под управлением системы Windows.
1.3.1. Работа с двумерными графиками
Для построения графиков используют шаблоны. Их можно полу­чить двумя вариантами:
1) Использование команд главного меню:
Вставка ⇒ График ⇒Х-У - зависимость или полярные коор­динаты
с последующей активизацией нужного вида графика.
2) Использованием математической панели:
Для этого следует выполнить 1щ. ЛКМ (один щелчок левой клавишей мыши по кнопке с изображением графика).В появившейся палитре «Графики» выбрать нужный тип графической зависимости (возможно использование всплывающей подсказки). Выбранный вид графика активизировать.
В результате на экране появляется шаблон, он представляет собой прямоугольник с чёрными квадратиками по осям для декартовой си­стемы координат, а для полярной системы – это круг с тремя чёрными квадратиками слева и внизу. Чёрные квадратики – это «вакантные ме-
23
ста», или шаблоны данных, куда в дальнейшем вносится информация для построения графика.
1.3.1.1. Типовое построение графиков в декартовой системе
Построение, как правило, осуществляется в три шага.
Шаг 1. Задание вида функции.
Шаг 2. Формирование значений аргумента. Аргументом может
быть дискретная переменная, переменная с индексом или выражение, содержащее дискретную переменную. В последних версиях предлага­ется упрощенный способ задания аргумента без предварительного определения ранжированной переменной. В этом случае пределы из­менения независимой переменной задаются по умолчанию и находят­ся в диапазоне[-0,10].
Шаг 3. Построение графика. Этот сам состоит из нескольких по- следовательных действий
1) Создание шаблона - прямоугольника с чёрными квадратиками.
2) Заполнение вакантных мест. В средний шаблон данных по
оси абсцисс заносят имя аргумента, а в средней по оси ординат – име­на или определения функций. Если функций несколько, то их разде­ляют запятыми. В крайние шаблоны данных заносят предельные зна­чения аргумента и функций, т.е. задают масштабы по осям. Можно оставить эти шаблоны незаполненными, тогда масштабы по осям бу­дут установлены автоматически.
3) 1щ. ЛКМ вне пределов графической области. На экране по-
явился график.
1.3.2. Типовое построение графиков в полярной системе
Положение точки в полярной системе координат определяется длиной полярного радиуса (ro) и величиной полярного угла (fi). Урав­нение ro = f(fi) определяет вид графической зависимости в этой си­стеме.
Построение графика в полярной системе включает те же три ша­га, что и в декартовой системе.
Шаг 1. Задание видов функций.
Шаг 2. Формирование значений аргумента.
24
Шаг 3. Построение графика:
1) Создание шаблона - круга с чёрными квадратиками по осям.
2) Заполнение «вакантных мест».
В нижнем шаблоне размещают имя аргумента, а в левом - имя или определение функции. Если функций несколько, то их разделяют запятыми. Правые «вакантные места» отведены для указания верхних и нижних пределов функций. Их можно не заполнять. Система Mathcad сделает это автоматически.
1.3.3. Построение поверхностей с использованием
матрицы-аппликат
Типичный поверхностный график показывает значение функции двух переменных. Чтобы создать такой график, необходимо сначала создать матрицу, элементами которой являются значения этой функ­ции, а затем построить поверхностный график этой функции.
Рассмотрим стандартные этапы создания графика поверхности:
1) Создание матрицы- аппликат:
• определить функцию двух переменных в виде функции поль-
зователя F(x,y):=выражение;
• задать количество точек по осям XиY(количество строк и
столбцов матрицы);
• определить дискретные аргументы Iи J, чтобы индексировать
точки;
• определитьx
как точки, равномерно расположенные на
iиyi
осях;
• задать матрицу - аппликат M
=F(xi,yj).
i,j
2) Построение графика.
Вызвать шаблон графика Surface Plot. Левый верхний угол шаб­лона помещается в место расположения курсора на поле документа. Вызвать шаблон Surface Plot можно, выполнив команды: Вставка Графика Surface Plot или сделав один щел­чок по кнопке с изображением поверхности на палитре Графики, если эта палитра присутствует на поле документа. В результате система выдаст рамку с одним полем ввода. В это поле следует внести имя матрицы - аппликат.
25
Для получения изображения необходимо щелкнуть мышкой вне графической области, если работа ведётся в автоматическом режиме, или нажать на клавиатуре клавишу F9. Система Mathcad даст про­странственное изображение матрицы в виде двумерной сетки, нахо­дящейся в трёхмерном пространстве. Каждый элемент матрицы пред­ставляется как точка на высоте, пропорциональной значению элемен­та матрицы. Для задания поверхности функции двух переменных, начиная с версии Mathcad 2000 предлагает новую графическую функ­цию CreateMesh.
Структура функции – CreateMesh (F,a,b,c,d), где F – имя функ­ции; a,b- пределы измерения аргументов по оси Y. Количество точек диапазона изменения аргументов равно 20 и определяется по умолча­нию.
1.4. Символьные вычисления и оптимизация вычисления
Весьма важной возможностью Mathcad является способность вы­полнять символьные (аналитические) вычисления. Лучше всего для этого использовать специальный оператор вывода символьных ре­зультатов и палитру символьных операций (кнопка с академиче­ской шапочкой). Выполняемые операции (знаком ⊕ отмечены опера­ции, имеющиеся только в профессиональных версиях):
simplify -упрощение выражений;
expand -разложение выражения по степеням;
factor -разложение выражения на простые дроби;
complex -преобразования в комплексной форме;
assume -придание переменным заданных свойств и
ограничений;
series -разложение в ряд по заданным переменным;
float -преобразование в формат чисел с плавающей
точкой;
⊕parfac -разложение на элементарные дроби;
⊕coeffs -возвращает коэффициенты полинома;
⊕fourier -прямое преобразование Фурье;
⊕laplace - прямое преобразование Лапласа;
⊕ztrans -прямое z-преобразование;
⊕invfourier -обратное преобразование Фурье;
26
⊕invlaplace -обратное преобразование Лапласа;
x
n
x
n
⋅
)(
120
1
6
1
1
653
x
Oxx
x +⋅+
⋅−⋅
⊕invztrans -обратное z-преобразование;
T
⊕M
- транспонирование матрицы;
-1
⊕M
- инвертирование матрицы;
⊕M - вычисление детерминанта матрицы;
⊕Modifier - модифицированные команды:
assume - вводное слово для приведенных ниже опреде-
лений:
real -для var=real означает вещественное значение;
RealRange -для var=Range(a,b)означает принадлежность
вещественной к интервалу [a,b];
trig -задает направление тригонометрических пре-
образований.
Большую часть из этих операций можно выполнять и в команд­ном режиме, используя команды, входящие в позицию Symbolics главного меню. Последняя команда в этой позиции Evaluation Style… выводит окно установки стиля вывода: снизу исходного выражения (с пустой строкой и без нее), справа от исходного выражения, на его месте и с комментарием или без него. Примеры символьных операций в командном режиме (дифференцирование, интегрирование и разло­жение в ряд Тейлора):
Differentiate Integrate Expand to series…
n xn
x
sin(x)
by integration, yields converts to the series
)1(++
n
x
)1(
n
Следует обратить внимание на то, что часть операций выполняет­ся над выделенным выражением, а часть – над выделенной перемен­ной. В командном режиме символьных вычислений нельзя преобразо­вывать выражения, содержащие функции пользователя. Однако при использовании оператора символьного вывода это возможно. В случае типовых операций символьной математики на вычисление производ­ной, интеграла решение осуществляется следующим образом:
27
f(x,n) :=x
x
n
xnx
f
dx
d
n
⋅→),
(
∫
+
→
+
)1(
),(
)1(
n
x
dxnxf
n
←
a
z
yx
zyxa
zyxFP
++
⋅+
←
=:)
,,(
Как уже отмечалось, Mathcad по существу является системой ви­зуального программирования. Однако есть и палитра со средствами обычного программирования:
Add Line - создает и при необходимости расширяет
жирную вертикальную линию, справа от
- локальное присваивание в теле модуля
if -создание условного выражения;
for - задание цикла с фиксированным числом по-
while - задание цикла типа «пока»;
otherwise - иной выбор (обычно применяется с операто-
break - прерывание;
continue - продолжение;
return - возврат;
onerror - обработка ошибок.
1) Оператор ←выполняет функции внутреннего, локального при-
n
1.5. Программирование в системе MathCAD. Основные средства программирования
которой в шаблоне задается тело программного блока;
программы;
вторений;
ром if);
сваивания. Пример его применения для задания программного модуля (функции пользователя):
FP(1,5,3) = 0.563
FP(2,3,5) = 0.588
28
Оператор ifявляется оператором для создания условных выраже-
otherwisex
xifx
xabc0:)(<−=
210)20(
55)10(..1
0
:
)(
=+←
=∈
←
=
sumiss
sumnifor
s
n
sum
ний.
2) Выражение ifусловие. Если условие выполняется, то возвра-
щается значение выражения. Пример:
3) Совместно с этим оператором часто используются операторы
прерывания break и оператор иного выбора otherwise.
4) Применение оператора цикла for для вычислений. Оператор
for служит для организации циклов с заданным числом повто- рений выражений, помещаемых в шаблон:
forVar∈Nmin..Nmax
Приведём пример (чисто учебный) вычисления суммы n членов
натурального ряда чисел с применением оператора for:
5) Оператор while служит для организации циклов, действующих
до тех пор, пока выполняется некоторое условие:
while условие Приведём учебный пример на задание функции вычисления фак-
ториала F(n) с применением двухступенчатого программного модуля с циклом while:
abs (-5) = 5 abs (5) = 5
29
6
10629.3)10(
6)3(1
1
)1(
1
:)(
×=
==
−←
−⋅←
←
=
Ff
Fnifbreak
nn
nff
while
nf
nF
841.0)1(841.0)1(1)0(
)sin(
01
:)(
=−==
=
=
SSS
otherwise
x
x
xifreturn
xS
6) Оператор иного выбора otherwise обычно используется сов- местно с оператором if. Это поясняет следующая программная конструкция:
f (x) := 1 ifx>0 возвращает 1, если х>0 -1 otherwise e возвращает -1 во всех иных случаях
7) Оператор продолжения используется для продолжения работы
после прерывания программы. Он также чаще всего используется совместно с операторами задания циклов while и for, обеспечивая воз­врат в точку прерывания и продолжение вычислений.
8) Особый оператор return прерывает выполнение программы и
возвращает значение своего операнда, стоящего следом за ним. Например, в выражении return 0 if x<0 будет возвращаться значение 0 при любом x<0. Приведём ниже пример использования оператораre­turn для вычисления sin(x)/x в особой точке х=0:
Оператор обработки ошибок позволяет создавать конструкции
обработчиков ошибок:
Выражение_1 on error Выражение_2
Здесь, если при выполнении Выражение_1 возникает ошибка, то вы­полняется Выражение_2. Для обработки ошибок полезна и функция error(S), которая при возникновении ошибки в программном модуле
30
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]