close

Вход

Забыли?

вход по аккаунту

?

Eltysheva

код для вставкиСкачать
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ
Федеральное государственное автономное
образовательное учреждение высшего образования
САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
АЭРОКОСМИЧЕСКОГО ПРИБОРОСТРОЕНИЯ
И. В. Елтышева
РЕШЕНИЕ ИНЖЕНЕРНЫХ ЗАДАЧ
В СРЕДЕ MATHCAD
Учебно-методическое пособие
Санкт-Петербург
2017
УДК 004.4
ББК 32.973-5-05
Е55
Рецензенты:
кандидат технических наук, доцент М. В. Бураков;
кандидат технических наук, доцент А. А. Мартынов
Утверждено
редакционно-издательским советом университета
в качестве учебно-методического пособия
Елтышева, И. В.
Е55 Решение инженерных задач в среде MathCAD: учеб.-метод.
пособие / И. В. Елтышева. – СПб.: ГУАП, 2017. – 92 с.
ISBN 978-5-8088-1202-4
В учебно-методическом пособии рассматриваются вопросы применения компьютерной программы MathCAD для решения инженерных задач различной направленности. В каждом разделе приводится
теоретический материал и примеры решения задач, а также набор
индивидуальных заданий для выполнения их на персональном компьютере.
Издание предназначено для студентов очной формы обучения по
направлениям подготовки 13.03.02 «Электроэнергетика и электротехника» и 15.03.06 «Мехатроника и робототехника». Пособие будет
полезно студентам и преподавателям при проведении учебно-вычислительной практики.
УДК 004.4
ББК 32.973-5-05
ISBN 978-5-8088-1202-4
©
©
Елтышева И. В., 2017
Санкт-Петербургский государственный
университет аэрокосмического
приборостроения, 2017
ПРЕДИСЛОВИЕ
Учебно-методическое пособие «Решение инженерных задач
в среде MathCAD» подготовлено в качестве материала для проведения практики учебно-вычислительной, целью которой является
формирование у студентов практических навыков получения, хранения и переработки информации, а также использования компьютера для создания поддерживающей среды во всех случаях работы
с информацией. Пакет MathCAD будет полезен и начинающим
пользователям, и разработчикам сложных систем для визуализации результатов математического моделирования или оформления
приложений научных исследований.
Учебно-методическое пособие состоит из семи разделов. Каждый
раздел содержит теоретический материал, подкрепленный примерами решений, а также набор вариантов заданий для выполнения
лабораторных работ на персональном компьютере.
В первом разделе изложены основные правила работы в среде
MathCAD, работа с массивами, матрицами, дискретными аргументами и графическим представлением информации.
Второй раздел посвящен решению уравнений и систем уравнений в среде MathCAD.
Третий раздел знакомит с возможностями аналитических или
символьных вычислений.
В четвертом разделе рассмотрены возможности и правила программирования в среде MathCAD.
В пятом разделе показаны возможности решения задач оптимизации. Задача о ресурсах.
Шестой раздел рассматривает теорию построения транспортной
модели.
Седьмой раздел посвящен применению пакета MathCAD в электротехнических расчетах.
По каждому разделу после освоения теоретического материала
необходимо выполнить лабораторную работу на персональном компьютере, используя предложенные задания.
В результате освоения дисциплины студенты должны овладеть
основными способами получения, хранения и переработки информации с использованием пакета MathCAD.
Пакет прикладных программ MathCAD
Пакет прикладных программ MathCAD является системой автоматизированного проектирования и подготовки интерактивных
3
документов, содержащих как документы с вычислениями, так и
графическое и визуальное сопровождение результатов.
Для удобства работы в системе компьютерной алгебры пакет
снабжен специальными панелями инструментов. В рабочем поле
MathCAD выражения уравнения отображаются графически. При
создании приложений используется принцип «что видишь, то и получаешь».
4
1. ОСНОВЫ РАБОТЫ С MATHCAD
MathCAD работает с документами. С пользовательской точки
зрения документ – это область, в которой можно размещать блоки трех основных типов: математические выражения, текстовые
фрагменты и графические области. Расположение математических
выражений в документе имеет принципиальное значение – слева
направо и сверху вниз.
Математические выражения
MathCAD работает со следующими основным элементам математических выражений: операторами, типами данных, функциями и управляющими структурами.
Операторы – элементы MathCAD, которые создают математические выражения. К ним, например, относятся символы арифметических операций, знаки вычисления сумм, произведений, производной и интеграла и т. д.:
1) оператор определяет действие, которое должно выполняться
над определенными значениями операндов;
2) оператор определяет, сколько, где и какие должны быть введены операнды.
Операнд – число или выражение, на которое действует оператор.
Например, в выражении 7 + 15! число 7 и выражение 15! – операнды оператора + (плюс), а число 15 – операнд оператора факториал
(!). После указания операндов операторы становятся исполняемыми по документу блоками.
К типам данных относятся числовые константы, обычные и системные переменные, массивы (векторы и матрицы) и данные файлового типа.
Константами называют поименованные объекты, хранящие
некоторые значения, которые не могут быть изменены.
Переменные – это поименованные объекты, имеющие некоторое значение, которое может изменяться по ходу выполнения программы (рис. 1, пример 1). Переменные могут быть числовыми,
строковыми, символьными и т. д. Тип переменной определяется ее
значением. Имена констант, переменных и иных объектов называют идентификаторами. В MathCAD идентификаторы могут содержать латинские или греческие буквы и цифры.
Особую группу объектов MathCAD составляют системные переменные, которые нельзя отнести ни к классу констант, ни к классу
переменных, их значения определены сразу после запуска.
5
Рис. 1. Работа с математическими выражениями
Изменение значений системных переменных производят во
вкладке Встроенные переменные диалогового окна Math Options
команды Математика ⇒ Опции.
Обычные переменные, до начала их использования, должны
быть определены пользователем, им необходимо хотя бы однажды
присвоить значение [1].
Оператор присваивания обозначается знаком := , который на
клавиатуре вызывается нажатием клавиши : (двоеточие).
Оператор вывода значения константы или переменной обозначается знаком = .
Если переменной присваивается начальное значение с помощью
оператора := , такое присваивание называется локальным.
Глобальное присваивание можно обеспечить с помощью знака ≡
(клавиша ~ на клавиатуре) (рис. 1).
6
MathCAD прочитывает весь документ дважды: слева направо и
сверху вниз. При первом проходе выполняются все действия, предписанные глобальным оператором присваивания (≡), а при втором
производятся действия, предписанные локальным оператором
присваивания (:=), и отображаются все необходимые результаты
вычислений (=).
Существуют также жирный знак равенства = (комбинация клавиш Ctrl + =), который используется как оператор приближенного
равенства при решении систем уравнений, и символьный знак равенства → (комбинация клавиш Ctrl + .).
Дискретные аргументы – особый класс переменных. В пакете
MathCAD с их помощью строятся управляющие структуры, называемые циклами (однако полноценной такая замена не является).
Дискретные переменные имеют ряд фиксированных значений, либо
целочисленных (1-й способ), либо в виде чисел с определенным шагом, меняющихся от начального значения до конечного (2-й способ).
1. Name := Nbegin .. Nend,
где Name – имя переменной; Nbegin – ее начальное значение;
Nend – конечное значение; «..» – символ, указывающий на изменение переменной в заданных пределах (вводится на клавиатуре клавишей ;). Если Nbegin < Nend, то шаг переменной будет равен +1,
иначе –1.
2. Name := Nbegin, (Nbegin + Step) .. Nend,
где Step – заданный шаг изменения переменной (он должен быть
положительным, если Nbegin < Nend, или отрицательным в обратном случае).
Дискретные аргументы значительно расширяют возможности
MathCAD, позволяя выполнять многократные вычисления или
циклы с повторяющимися вычислениями, формировать векторы и
матрицы (рис. 1, пример 3).
Массив – имеющая уникальное имя совокупность конечного числа числовых или символьных элементов, упорядоченных
некоторым образом и имеющих определенные адреса. В пакете
MathCAD используются массивы двух типов:
– одномерные (векторы);
– двумерные (матрицы).
Индексом называется порядковый номер элемента, который является его адресом. Индексы могут иметь только целочисленные
значения.
С нуля или единицы идет индексация элементов, определяется
значением системной переменной ORIGIN (0;1).
7
Векторы и матрицы можно задавать различными способами:
– командой Вставка ⇒ Матрица;
– комбинацией клавиш (+ М);
– щелчком на соответствующей кнопке панели Матрица, заполнив массив пустых полей для небольших массивов;
– с использованием дискретного аргумента, когда имеется некоторая явная зависимость для вычисления элементов через их индексы (рис. 1, пример 3).
Функция – выражение, согласно которому проводятся некоторые вычисления с аргументами и определяется ее числовое значение.
Следует особо отметить разницу между аргументами и параметрами функции. Переменные, указанные в скобках после имени
функции, являются ее аргументами и заменяются при вычислении функции значениями из скобок. Переменные в правой части
определения функции, не указанные в скобках левой части, являются параметрами и должны задаваться до определения функции
(рис. 1, пример 2).
Главным признаком функции является возврат значения, т. е.
функция в ответ на обращение к ней по имени с указанием ее аргументов должна возвратить свое значение.
В пакете MathCAD функции могут быть встроенные, т. е. заблаговременно введенные разработчиками, и определенные пользователем.
Для вставки встроенной функции можно:
– выбрать пункт меню Вставка ⇒ Функция;
– нажать комбинацию клавиш Ctrl + E;
– щелкнуть на кнопке f(x).
Текстовые фрагменты
Текстовые фрагменты представляют собой блоки текста, которые пользователь хотел бы видеть в своем документе. Существуют
два вида текстовых фрагментов:
– текстовая область для небольших блоков текста, подписей
или комментариев. Вставляется с помощью команды Вставка ⇒
Текстовый регион или комбинации клавиш Shift + “ (двойная кавычка);
– текстовый абзац применяется в том случае, если необходимо
работать с абзацами или страницами. Вставляется с помощью комбинации клавиш Shift + Enter.
8
Графические области
В пакете MathCAD графические области могут быть трех типов:
двумерные графики, трехмерные графики и импортированные графические образы. Двумерные и трехмерные графики строятся самим MаthCAD на основании обработанных данных.
График в декартовых координатах:
1. Установите визир в пустом месте рабочего документа.
2. Выберите команду Вставка ⇒ График ⇒ Х-Y график, или нажмите комбинацию клавиш Shift + @, или щелкните кнопку на
панели Графики. Появится шаблон декартового графика.
3. Введите в средней метке под осью Х первую независимую переменную, через запятую – вторую и так до 10, например: х1, х2, …
4. Введите в средней метке слева от вертикальной оси Y первую переменную, через запятую – вторую и т. д., например: у1(х1),
у2(х2), …, или соответствующие выражения.
5. Щелкните за пределами области графика, чтобы начать его
построение [2].
Трехмерные, или 3D-графики, отображают функции двух переменных Z(X, Y). При построении трехмерных графиков в ранних
версиях MathCAD поверхность нужно было определить математически, как на рис. 2 (способ 2). Современные версии MathCAD используют функцию CreateMesh:
CreateMesh (F (или G, или f1, f2, f3), x0, x1, y0, y1,
xgrid, ygrid, fmap).
Эта функция создает сетку на поверхности, определенной функцией F; x0, x1, y0, y1 – диапазон изменения переменных; xgrid,
ygrid – размеры сетки переменных; fmap – функция отображения.
Все параметры, за исключением F, – факультативные. Функция
CreateMesh по умолчанию создает сетку на поверхности с диапазоном изменения переменных от –5 до 5 и с сеткой 20 × 20 точек.
Пример использования функции CreateMesh для построения
3D-графиков приведен на рис. 2 (способ 1). На рис. 2 построена одна
и та же поверхность разными способами, с разным форматированием, причем изображены поверхности в виде контурного графика. Такое построение способно придать рисунку большую наглядность [2].
Нередко поверхности и пространственные кривые представляют
в виде точек, кружочков или иных фигур. Такой график создается операцией Вставка ⇒ График ⇒ 3D Точечный, причем поверхность задается параметрически – с помощью трех матриц (X, Y, Z)
9
Рис. 2. 3D-графики различного типа
(рис. 3, способ 2), а не одной, как в примере на рис. 2. Для определения исходных данных для такого вида графиков используется
функция CreateSpace (рис. 3, способ 1):
CreateSpace (F, t0, t1, tgrid, fmap).
Эта функция возвращает вложенный массив трех векторов,
представляющих x-, y-, z-координаты пространственной кривой,
определенной функцией F; t0 и t1 – диапазон изменения переменной; tgrid – размер сетки переменной; fmap – функция отображения. Все параметры, за исключением F, – факультативные.
Построение пересекающихся фигур. Особый интерес представляет собой возможность построения на одном графике ряда разных
фигур или поверхностей с автоматическим учетом их взаимного
пересечения. Для этого надо раздельно задать матрицы соответствующих поверхностей и после вывода шаблона 3D-графика перечислить эти матрицы под ним с использованием в качестве разделителя запятой (рис. 4).
10
Рис. 3. Построение 3D точечных графиков
Файлы. Управление файлами документов MathCAD организуется стандартным для Windows-приложений образом. Каждый
файл – документ MathCAD – представляет собой независимую серию математических расчетов, являясь одновременно и листингом
MathCAD-программы, и результатом, получающимся при ее выполнении, и отчетом, пригодным для распечатки или публикации.
Для создания нового файла – документа, уже работая в MathCAD,
необходимо выполнить одно из следующих действий:
– одновременное нажатие клавиш <Ctrl> + <N>;
– кнопка New на панели инструментов;
– ввод команды верхнего меню File/New (Файл /создать).
Для открытия существующего документа для редактирования
выполните одно из следующих действий:
11
Рис. 4. Построение двух пересекающихся поверхностей
и одновременно контурного графика одной из них
– одновременное нажатие клавиш <Ctrl> + <О>;
– кнопка Open на панели инструментов;
– команду File/ Open (Файл /Открыть).
В диалоговом окне Open выберите файл и нажмите кнопку ОK.
Для сохранения файла – документа в формате MathCAD – необходимо выполнить одно из следующих действий:
– одновременное нажатие клавиш <Ctrl> + <S>;
– кнопка Save (Сохранить) на стандартной панели инструментов;
– команду File/ Save (Файл / Сохранить).
Начиная с версии 12, для сохранения файлов – документов
MathCAD – по умолчанию используется формат *.XMCD. Принудительно файлы могут быть записаны и в других форматах. Например, Rich Text Format (*.RTF) сохраняет файлы для дальнейшего редактирования в текстовых редакторах в целях создания
отчетов.
12
Лабораторная работа к разделу 1
Упражнение 1. Вычислить:
–150 ; 302.
Это и все остальные задания снабдить комментариями, используя команду Вставка ⇒ Текстовая область.
Упражнение 2. Вычислить выражения
Z=
2ab + 3 c
( a2 + b a + c ) c
; N = esin c cos
a
b
при a = 1; b = 2; c = 3.
Упражнение 3.
1. Вычислить значение выражения (задание 1 в таблице вариантов).
2. Вычислить значение выражения для дискретного аргумента
(задание 2 в таблице вариантов).
Используя команду Формат ⇒ Результат ⇒ Формат чисел ⇒
Число знаков, изменить точность отображения результатов вычисления глобально [4].
Упражнение 4. На экран вывести значения системных констант
e и π, установив максимальный возможный формат их отображения локально.
Упражнение 5. Выполнить следующие операции:
0.4
i : 1..10 i + 1) ∫ x2lg ( x + 2
=
=
=
) dx ∑i ∏ (=
i
1.2
∫
0.8
ctg2
x
i
dx x : 2 =
=
2
( sin 2x )
0
d 5
d
x sin=
=
(x)
dx
dx
Варианты заданий к упражнению 3
x2 + y2 − x
В1. 1. ln
2. 
3
2
2
x +y +x
2
, x = 4, y = 7
x +x
, x∈[0.5; 10], h = 0.1
x +1
1
π

B2. 1. arctg x + − cos  y − ,
3

3x3
x = 3, y = 1.7
2.  x sin ( x + 2 ) − cos ( x ), x∈[–2; 2],
h = 0.1
13
Окончание таблицы
В3. 1. ln 1 − x − y − xy , x = 3, y = 4.3
1− x − y
2.  x8 − 2x7 + 5x6 − x + 3, x∈[–2; 2],
h = 0.01
В5. 1.
x −2
+
x + 2y
x+y
x+y
1+ 
 + arcsin
xy
 xy 
при x = –1, y = 0.5
3
2
2.  6 ln(x) − 2x + 9x − 18x, x∈ [1.1;
4.6]
y − x при x = 1,
1+ x
y = 4
2. 
2
В4. 1.
В6. 1.
x2 − 3y + 2 +
1
3 + 2x − y2
,
x = –1, y = 0.5
3
4 − x2
π
+ lg(x − x), x∈ [1.3; 3.9], 2.  sin x + 16 − x2 , x ∈ [0, π], h =
3
20
h = 0.1
x
В7. 1. x cos y − y cos=
, x 1=
.2, y 7.5
1 + sin x + sin y
2.  2x2 + 5 − x , x ∈ [−1; 5], h =0.2
В8. 1.
(sin2 x + sin2 y + sin2 z)
при x = 0.7, y = –1.3, z = 2
2. sinx – cosx при x∈[–4; 4], h = 0.5
2
2
x cos y − y cos x
, x = 2, y = 3.5 В10. 1. ln x + y − x , x = 4, y = 7
1 + sin x + sin y
x2 + y2 + x
1
2.  x x +
, x∈[–2; 4], h = 0.1
3x
2.  (x3 + x2 ) / (x + 1), x∈ [0.5; 10],
h = 0.1
В9. 1 lg
В11. 1. (x2 + y2 )(1 − (x2 + y2 )) /
2
В12. 1.
2
(1 + (x + y )) xyarctg ( xy + x + y )
x+y
, x = 3.6,
y = 7.12
2.  (x2 + 6) / x − cos x, x∈[4; 5.17],
2.  x − 2x + 5 − x , x∈[–1; 5], h = 0.1
h = 0.01
при x = –0.7, y = 3.17
4
2
 2
2
2
2 2  В14. 1. 3ex − 5x + 1.5 при x = 0.5

В13. 1. ln  xy + yx + 1 + xy + yx
 2. 
x log3 ( x + 1), x∈[–0.1; 2.7]


при x = 1, y = 3.17
(
)
2. x2 − 3 + 0.5x, x∈[–3.5; 1.4]
В15. 1. ln
2. 
14
x2 + y2 − x
x2 + y2 + x
, x = 4, y = 7
x 3 + x2
, x∈[0.5; 10], h = 0.1
x +1
В16. 1. acrtgx + 1 / 3x3 , x = 0.75
2.  ( x − 1)2 2x , x∈[–4.1; 3.9]
Упражнение 6. Определить векторы P, G через дискретный аргумент i. Используя заданные таблично функции Pi, Gi, построить
их графики, используя команду Вставка ⇒ График ⇒ X-Y.
i
Pi
Gi
0
5.8
3.2
1
5.9
4.1
2
9
4.5
3
7.2
3.7
4
5.4
2.2
Чтобы оформить график, необходимо выполнить следующие команды.
– Щелкнуть левой клавишей мыши на графике, чтобы выделить
его. Затем щелкнуть правой клавишей мыши, при этом появится
контекстное меню, в котором необходимо выбрать команду Формат (появится диалоговое окно «Formatting Currently Selected X-Y
Plot»).
– Нанести линии сетки на график (Оси X-Y ⇒ Вспом. линии) и
отобразить легенду (След ⇒ Скрыть легенду).
– Отформатировать графики по своему усмотрению.
Упражнение 7.
1. Построить графики указанных функций в декартовых (X-Y
Зависимость) координатах, обозначить оси координат, изменить
цвет линий графика (задание 1 в таблице вариантов).
2. Построить график в полярных координатах (задание 2 в таблице вариантов).
3. Построить трехмерную поверхность (задание 3 в таблице вариантов).
Определить по графику Х-Y Зависимость координаты любой из
точек пересечения графиков Y(α) и P(α), для чего необходимо проделать следующие операции.
– Выделить график и выбрать из контекстного меню Масштаб
(появится диалоговое окно «X-Y Zoom») для увеличения части графика в области точки пересечения.
– На чертеже выделить пунктирным прямоугольником окрестность точки пересечения графиков Y(α) и P(α), которую нужно увеличить.
– Нажать кнопку Масштаб + , чтобы перерисовать график.
– Чтобы сделать это изображение постоянным, выбрать OK.
15
Варианты заданий к упражнению 7
x; g(x) x2 cos(x + 5=
);
В1.=
1. f (x) x sin=
В2. 1. f (x)
y(x)= 2x3 − ln(x4 + 5) + 4x
2. Улитка Паскаля:
=
x a cos t + b cos t;
lg x
y= 3
x −x
x
x
=
; g(x) arcsin ;
4
x2 + 2
=
y a cos t sin t + b sin t, a > 0, t ∈ [0; 2π] 2. Кардиоида:
=
x a cos t(1 + cos t);
3. Эллипсоид:
x2
y2 z2
+
+
=
1
a2 b2 c2
В3.=
1. f (x) arcsin(x − 2);
g(x) = x2 + 4x + 3
2. Эпициклоида:
(a + b)t
;
a
(a + b)t
y=
(a + b)sin t + a sin
, a > 0,
a
b > 0, t ∈ [0; 2π],
причем a/b – целое число
3. Гиперболоид двуполостный:
x2 y2 z2
+
−
=
−1
a2 b2 c2
x=
(a + b)cos t − a cos
В5. 1. =
f (x)
y(x) =
x
x
2
;=
g(x) lg(x2 + 3);
x2
1 + x2
at2
at3
=
;y
;
2
1+ t
1 + t2
t=
[−10; 10], a > 0
3. Эллиптический параболоид:
x2 y2
+
=
z
a2 b2
2. Циссоида:
=
x
16
=
y a sin t(1 + cos t), a > 0, t ∈ [0; 2π]
3. Гиперболоид однополостный:
x2 y2 z2
+
−
=
1
a2 b2 c2
В4. 1. f (x) = x2 + 3x − 2;
x
g(x) = sin 3x + cos + tgx;
2
ax − 1
y(x) = x
ax + 1
2. Астроида:
=
x b cos3 t=
; y b sin3 t, t ∈ [0; 2π]
3. Гиперболический параболоид:
x2
y2
− 2 =
z
a
b
2
В6. 1. f (x) = x4 − 2x + 3;
y(x) =x − z2 + x ;
=
g(x)
ax + a−x
, a > 1, 0 < a < 1
2
=
r a 2 cos 2t , a > 0;
2. Лемниската:
x = r cos t; y = r sin t
3. Конус второго порядка:
x2 y2 z2
+
−
=
0
a2 b2 c2
Продолжение таблицы
В7. 1. f (x) =
1 + tgx; g(x) =
x cos x;
2
В8. 1. f (x) sin
=
=
x; y(x) sin x2 ;
1
x
2. Строфоида:
a(t2 + 1)
at(t2 − 1)
x =
=
;y
,
2
t −1
t2 + 1
a > 0, t ∈ [−10; 10]
g(x)= 1 − sin x
y(x) = sin
2. Конхоида Никомеда:
=
x atg(t + 1)cos t;
y=
atg(t + 1)sin t, a > 0,
3. Эллиптический цилиндр второго
2
2
порядка: x + y =
1
a2 b2
1
1
=
; g(x)
;
2
2
x +1
x −1
y=
(x) cos x ⋅ sin x
=
y(x) arccos(1 − 2x);
=
g(x) arctg(x + 1) + arcctg(x − 1)
2. «Крест»:
2a
,
sin 2t
t ∈ (0; π) ∪ (π; 2π)
 3π π 
t ∈  − ;  – левая ветвь
 2 2
3. Гиперболический цилиндр второ2
2
го порядка: x − y =
1
2
2
a
b
В10. 1. f (x)= lg(x + 3) − x ;
=
В9.
1. f (x)
=
x r=
cos t; y r=
sin t; r
 π π
t ∈  − ;  – правая ветвь,
 2 2
2. Кардиоида:
r=
a(1 + cos t); x =
r cos t;
=
y r sin t, a > 0
2
2
3. Параболический цилиндр второго 3. Эллипсоид: z = ax + by + 2cxy
порядка: y2 = 2 px, р > 0
x
x −2
В11. 1. f (x) = 2 x; y(x) = −5 ;
f (x) sin 3x;=
g(x) 3 cos x + 2;
В12. 1.=
g(x) = xarctgx;
=
y(x) cos(x + 1)
2. Эпициклоида:
at
(a + b)t
x=
(a + b)sin − a sin
, a < b;
b
b
at
(a + b)t
y=
(a + b)cos − a cos
b
b
2. Гипоциклоида:
at
(a − b)t
x=
(a − b)sin − a sin
, a > b;
b
b
at
(a − b)t
y=
(a − b)cos + a cos
b
b
z
3. Поверхность:=
x2
y2
−
a2 b2
2
x2
2 y
−
Поверхность: z=
2
b
a2
17
Продолжение таблицы
sin x + x cos(x + 2);
В13. 1. f (x) =
=
В14.
1. f (x) sin(cos((x2 + x));
y(x) =x4 + 3x2 − ex +1;
2
=
g(x) ln(x + 1)sin(x)
2. Улитка Паскаля:
=
x a cos t + b cos t;
g(x) = x cos x; y(x)= x − tgx
2. Конхоида Никомеда:
=
x atg(t + 1)cos t;
y=
atg(t + 1)sin t, a > 0,
=
y a cos t sin t + b sin t, a > 0, t ∈ [0; 2π]
=
z cos(x2 + y2 ) − sin(x2 − y2 )
 π π
t ∈  − ;  – правая ветвь,
 2 2
 3π π 
t ∈  − ;  – левая ветвь
 2 2
3
2
2
0
3. Поверхность: ax − by + cz =
В15. 1. f (x) = x4 − 6x3 + 2x − 1;
3x − ln(x4 + 3);
В16. 1. f (x) =
3. Поверхность:
g(x) = x3 cos x;
=
g(x) esin x +2 − 3x;
y(x=
) tg(x + 3) − cos x
2. Овалы Кассини:
=
x r cos t;=
y r sin t, a > c 2 > 0;
4
=
r 2 c2 cos 2t ± c cos2 2t4 + a4 − c
3. Поверхность:
z=
cos(x − y)sin(x2 + y2 )
1
В17. 1. f (x) =3x + 8x2 −
;
2
x +2
2
=
g(x) =
; y(x) tgx
x3
=
x a cos t + b cos t;
2. Улитка Паскаля:
=
y a cos t sin t + b sin t, a > 0, t ∈ [0; 2π]
y(x) =tg(x + ln(x2 + 5))
2. Астроида:
=
x b cos3 t=
, y b sin3 t, t ∈ [0; 2π]
3. Поверхность, образованная
вращением вокруг оси ОХ кривой:
f (x) =
−ax2 + bx + c, a > 0, b > 0, c > 0
(x) sin x − cos x;
В18. 1. f=
1
(x) 2x4 + 3x2
g(x)= ln(x + 3) − ; y=
x
=
x a cos t(1 + cos t),
2. Кардиоида:
=
y a sin t(1 + cos t), a > 0, t ∈ [0; 2π]
R 2 , где R –
3. Шар: x2 + y2 + z2 =
3. Поверхность, образованная
радиус шара
в результате вращения равнобедренного треугольника вокруг высоты,
опущенной на его основание
18
Окончание таблицы
sin x В20. 1. f (x)= x − arctgx;
;
x
x+3
g(x) = sin(x + ln(x2 + 5)); y(x) = 3
=
y(x) x3+2x − 1
x+5
2. Строфоида:
2. «Крест»:
a(t2 + 1)
at(t2 − 1)
2a
x =
;y
,
=
x r=
cos t; y r=
sin t, r
, =
t2 − 1
t2 + 1
sin 2t
a > 0, t ∈ [−10; 10]
t ∈ (0; π) ∪ (π; 2π)
В19. 1. f (x) = x cos(x − 1); g(x) =
3. Поверхность: z = cos(x)sin(y)
3. Поверхность:
=
z cos(x2 + y) + sin(x2 − y)
– Выбрать из контекстного меню Трассировка (появится диалоговое окно «X-Y Trace»).
– Нажав внутри чертежа кнопку мыши, переместить указатель
на точку, для которой определяются координаты.
– Выбрать Copy X (или Copy Y), на свободном поле документа набрать Xper := (или Yper := ) и выбрать пункт меню Правка ⇒Вставка.
Упражнение 8. Используя команду Вставка⇒Матрица, создать
матрицу Q размером 6 × 6, заполнить ее произвольно и отобразить
графически с помощью команды Вставка⇒График⇒Поверхности.
Упражнение 9. Построить график поверхности (Поверхности) и
карту линий уровня (Контурный) для функции двух переменных
X(t, α)=: t cos(α)sin(α) двумя способами.
1. С помощью функции CreateMesh (сетка размером 35 × 35, диапазон изменения t от –10 до 10, α – от 0 до 2π).
2. Задав поверхность математически, для этого:
– определить функцию X(t, α);
– задать на осях переменных t и α по 41 точке
i:= 0..40 j:= 0..40
для переменной ti со значениями, изменяющимися от –5 до 5 с шагом 0,25 ti := –5 + 0,25i, а для переменной αj – от 0 до 2π с шагом
π/20 αj := π/20j;
– определить матрицу Мi, j := X(ti, αj) и отобразить ее графически.
С помощью команды Формат контекстного меню вызвать диалоговое окно «Формат 3-D» графика и изменить:
– характеристики просмотра (Общее ⇒ Вид ⇒ Вращение, Наклон);
19
– цвета и линии поверхности (Внешний Вид ⇒ Свойства линии,
Свойства заливки);
– параметры осей (Оси);
– вид заголовка графика (Название).
Контрольные вопросы
1. Как вставить текстовую область в документ MathCAD?
2. Чем отличаются глобальное и локальное определения переменных? С помощью каких операторов определяются?
3. Как изменить формат чисел для всего документа?
4. Как изменить формат чисел для отдельного выражения?
5. Какие системные (предопределенные) переменные вам известны?
6. Как узнать значение системных переменных? Как изменить
их значение?
7. Какие виды функций в MathCAD вам известны?
8. Как вставить встроенную функцию в документ MathCAD?
9. С помощью каких операторов можно вычислить интегралы,
производные, суммы и произведения?
10. Как определить дискретные переменные с произвольным
шагом? Какой шаг по умолчанию?
11. Как определить индексированную переменную?
12. Какие виды массивов в MathCAD вам известны?
13. Какая системная переменная определяет нижнюю границу
индексации элементов массива?
14. Опишите способы создания массивов в MathCAD.
15. Как просмотреть содержимое массива, определенного через
дискретный аргумент?
16. Как построить графики: поверхности, полярный, декартовый?
17. Как построить несколько графиков в одной системе координат?
18. Как изменить масштаб графика?
19. Как определить координату точки на графике?
20. Как построить гистограмму?
21. Какие функции используются для построения трехмерных
графиков?
20
2. РЕШЕНИЕ УРАВНЕНИЙ СРЕДСТВАМИ MATHCAD
MathCAD эффективен при решении уравнений и систем уравнений, многие из которых не имеют аналитического решения. Доказано также, что нельзя построить формулу, по которой можно было
бы решить произвольное алгебраическое уравнение степени выше
четвертой. Такие уравнения могут решаться численными методами с заданной точностью (не более значения, заданного системной
переменной TOL).
Численное решение нелинейного уравнения
Для простейших уравнений вида f(x) = 0 решение в MathCAD
находится с помощью функции root (рис. 5):
root(f(x1, x2, ...), x1, a, b ).
Рис. 5. Решение уравнений средствами MathCAD
21
Эта функция возвращает значение х1, принадлежащее отрезку
[a, b], при котором выражение или функция f(х) обращается в 0.
Оба аргумента этой функции должны быть скалярами. Функция
возвращает скаляр.
Аргументами могут быть функция f(х1, x2, …), определенная
где-либо в рабочем документе, или выражение. Выражение должно
возвращать скалярные значения, а также имя переменной, которая используется в выражении.
Этой переменной перед использованием функции root необходимо присвоить числовое значение. MathCAD при поиске корня
использует его как начальное приближение. a, b – необязательны;
если они используются, то должны быть вещественными числами,
причем a < b.
Приближенные значения корней (начальные приближения) могут быть:
1) известны из физического смысла задачи;
2) известны из решения аналогичной задачи при других исходных данных;
3) найдены графическим способом.
Графический способ определения начальных приближений наиболее распространен, поскольку действительные корни уравнения
f(x) = 0 – это точки пересечения графика функции f(x) с осью абсцисс, достаточно построить график функции f(x) и отметить точки
пересечения f(x) с осью Ох или отметить на оси Ох отрезки, содержащие по одному корню. Часто удается упростить построение графиков, если заменить уравнение f(x) = 0 равносильным ему уравнением
f1 (x) = f2 (x),
где функции f1(x) и f2(x) – более простые, чем функция f(x) (рис. 6, а).
Тогда, построив графики функций у = f1(x) и у = f2(x), искомые корни
получим как абсциссы точек пересечения этих графиков (рис. 6, а и б)
или определим содержащий его отрезок [2, 3].
Отсутствие сходимости функции root
Если после многих итераций MathCAD не находит подходящего
приближения, то появится сообщение Can’t converge to a solution
(отсутствует сходимость). Эта ошибка может быть вызвана следующими причинами:
– уравнение не имеет корней;
22
а)
б)
Рис. 6. Определение корней полинома функцией root (а)
и polyroots (б)
23
– корни уравнения расположены далеко от начального приближения;
– выражение имеет локальные max и min между начальным
приближением и корнями;
– выражение имеет разрывы между начальными приближениями и корнями;
– выражение имеет комплексный корень, но начальное приближение было вещественным.
Чтобы установить причину ошибки, исследуйте график f(x). Он позволит выяснить наличие корней уравнения f(x) = 0 и, если они есть,
то определить приблизительно их значения. Чем точнее выбрано начальное приближение корня, тем быстрее будет root сходиться [3].
Рекомендации по использованию функции root
– Для изменения точности, с которой функция root ищет корень, нужно изменить значение системной переменной TOL. Если
значение TOL увеличивается, функция root будет сходиться быстрее, но ответ будет менее точен. Если значение TOL уменьшается,
то функция root будет сходиться медленнее, но ответ будет более
точен. Чтобы изменить значение TOL в определенной точке рабочего документа, используйте определение вида TOL := 0,01. Чтобы
изменить значение TOL для всего рабочего документа, выберите
команду Инструменты ⇒ Параметры ⇒ Допуск сходимости (TOL).
– Если два корня расположены близко друг от друга, следует
уменьшить TOL, чтобы различить их.
– Если функция f(x) имеет малый наклон около искомого корня,
функция root(f(x), x) может сходиться к значению r, отстоящему
от корня достаточно далеко. В таких случаях для нахождения более точного значения корня необходимо уменьшить значение TOL.
Другой вариант заключается в замене уравнения f(x) = 0 на g(x) = 0:
g(x) =
f (x)
.
d
f (x)
dx
– Для выражения f(x) с известным корнем а нахождение дополнительных корней f(x) эквивалентно поиску корней уравнения
h(x) = f(x)/(x – a). Подобный прием полезен для нахождения корней, расположенных близко друг к другу. Проще искать корень
выражения h(x), чем пробовать искать другой корень уравнения
f(x) = 0, выбирая различные начальные приближения.
24
Нахождение корней полинома
Для нахождения корней выражения, имеющего вид
rnxn + ... + r2x2 + r1x1 + rx0,
лучше использовать функцию polyroots, нежели root. В отличие от
функции root, функция polyroots не требует начального приближения и возвращает сразу все корни, как вещественные, так и комплексные:
Polyroots(R).
Эта функция возвращает корни полинома степени n. Коэффициенты полинома находятся в векторе R длины n + 1. Возвращает
вектор длины n, состоящий из корней полинома. Аргументом является вектор R, содержащий коэффициенты полинома.
Вектор R удобно создавать, использую команду Символика ⇒
Коэффициенты полинома. Рис. 6, б иллюстрирует определение
корней полинома функцией polyroots.
Решение систем уравнений
MathCAD позволяет решать и системы уравнений. Максимальное число уравнений и переменных равно 50. Результатом решения
системы будет численное значение искомых корней.
Для решения системы уравнений выполните следующее.
– Задайте начальное приближение для всех неизвестных, входящих в систему уравнений. MathCAD решает систему с помощью
итерационных методов.
– Напечатайте ключевое слово Given. Оно указывает MathCAD,
что далее следует система уравнений.
– Введите уравнения и неравенства в любом порядке. Используйте [Ctrl] = для печати символа = . Между левыми и правыми частями неравенств может стоять любой из символов <, >, ≥ и ≤.
– Введите любое выражение, которое включает функцию Find,
например: а:= Find(х, у):
Find(z1, z2, . . .).
Эта функция возвращает точное решение системы уравнений.
Число аргументов должно быть равно числу неизвестных.
Ключевое слово Given, уравнения и неравенства, которые следуют за ним, и какое-либо выражение, содержащее функцию Find,
называют блоком решения уравнений.
25
Следующие выражения недопустимы внутри блока решения:
– ограничения со знаком ≠;
– дискретный аргумент или выражения, содержащие дискретный аргумент в любой форме;
– неравенства вида a < b < c.
Блоки решения уравнений не могут быть вложены друг в друга,
каждый блок может иметь только одно ключевое слово Given и имя
функции Find.
Функция, которая завершает блок решения уравнений, может
быть использована аналогично любой другой функции. Можно
произвести с ней следующие три действия.
1. Вывести найденное решение, напечатав выражение вида
Find(var1, var2,…) = .
2. Определить переменную с помощью функции Find:
a := Find(x) – скаляр,
var := Find(var1, var2,…) – вектор.
Рис. 7. Решение систем уравнений в MathCAD
26
Это удобно сделать, если требуется использовать решение системы уравнений в другом месте рабочего документа.
3. Определить другую функцию с помощью Find
f(a, b, c, …) := Find(x, y, z, …).
Эта конструкция удобна для многократного решения системы
уравнений для различных значений некоторых параметров a, b, c,
…, непосредственно входящих в систему уравнений.
Сообщение об ошибке «Решение не найдено» при решении уравнений появляется, когда:
– поставленная задача может не иметь решения [3];
– для уравнения, которое не имеет вещественных решений,
в качестве начального приближения взято вещественное число, и
наоборот;
– в процессе поиска решения последовательность приближений
попала в точку локального минимума невязки. Для поиска искомого решения нужно задать различные начальные приближения;
– возможно, поставленная задача не может быть решена с заданной точностью. Попробуйте увеличить значение TOL.
Пример 1 рис. 7 [3] иллюстрирует решение системы уравнений
в MathCAD.
Решение матричных уравнений
Рассмотрим систему n линейных алгебраических уравнений относительно n неизвестных х1, х2, …, хn:
b1;
a11x1 + a12 x2 + ... + a1n xn =
a x + a x + ... + a x =
(1)
 21 1 22 2
2n n b2 ; 
. . . . . . . .
an1x1 + an2 x2 + ... + ann xn =
bn .
В соответствии с правилом умножения матриц рассмотренная
система линейных уравнений может быть записана в матричном
виде
Àõ = b, (2)
 a11 a12 … a1n 
a

21 a22 … a2n 
; x
=
A =
… … … …


an1 an2 … ann 
b1 
 x1 
 
x 
 2  ; b = b2  . ... 
... 
 
 
bn 
 xn 
(3)
27
Матрица А, столбцами которой являются коэффициенты при
соответствующих неизвестных, а строками – коэффициенты при
неизвестных в соответствующем уравнении, называется матрицей
системы; матрица-столбец b, элементами которой являются правые части уравнений системы, называется матрицей правой части,
или просто правой частью системы. Матрица-столбец х, элементы
которой – искомые неизвестные, называется решением системы.
Если матрица А – неособенная, т. е. det A ≠ 0, то система (1) или
эквивалентное ей матричное уравнение (2) имеет единственное решение. Матричным уравнением называют такое, где неизвестные и
коэффициенты являются прямоугольными матрицами.
В самом деле, при условии det A ≠ 0 существует обратная матрица А–1. Умножая обе части уравнения (2) на матрицу А–1, получим
A–1Ax = A–1b,
x = A–1b.
(4)
Формула (4) дает решение уравнения (2), и оно единственно.
Системы линейных уравнений удобно решать с помощью функции lsolve (рис. 8):
lsolve(А, b).
Эта функция возвращает вектор решения x такой, что Ах = b.
Аргументами функции являются А – квадратная, не сингулярная матрица; b – вектор, имеющий столько же рядов, сколько рядов в матрице А.
Приближенные решения
Функция Minerr очень похожа на функцию Find (использует тот
же алгоритм). Если в результате поиска не может быть получено
дальнейшее уточнение текущего приближения к решению, Minerr
возвращает это приближение. Функция Find в этом случае возвращает сообщение об ошибке. Правила использования функции
Minerr такие же, как и функции Find:
Minerr(z1, z2, . . .).
Функция возвращает приближенное решение системы уравнений. Число аргументов должно быть равно числу неизвестных.
Если Minerr используется в блоке решения уравнений, необходимо всегда включать дополнительную проверку достоверности результатов.
28
Рис. 8. Решение матричных уравнений
Символьные решения уравнений
В MathCAD можно быстро и точно найти численное значение
корня с помощью функции root. Но имеются некоторые задачи,
для которых возможности MathCAD позволяют находить решения
в символьном (аналитическом) виде.
Решение уравнений в символьном виде позволяет найти точные
или приближенные корни уравнения:
– Если решаемое уравнение имеет параметр, то решение в символьном виде может выразить искомый корень непосредственно
через параметр. Поэтому вместо того, чтобы решать уравнение для
каждого нового значения параметра, можно просто заменять его
значение в найденном символьном решении.
– Если нужно найти все комплексные корни полинома со степенью меньше или равной 4, символьное решение даст их точные значения в одном векторе или в аналитическом или цифровом виде.
29
Команда Символы ⇒ Переменные ⇒ Вычислить позволяет решить уравнение относительно некоторой переменной и выразить
его корни через остальные параметры уравнения [3].
Чтобы решить уравнение символьно:
– Напечатайте выражение (для ввода знака равенства используйте комбинацию клавиш [Ctrl]= ).
– Выделите переменную, относительно которой нужно решить
уравнение, щелкнув на ней мышью.
– Выберите пункт меню Символы ⇒ Переменные ⇒ Вычислить.
Нет необходимости приравнивать выражение нулю. Если
MathCAD не находит знака равенства, он предполагает, что требуется приравнять выражение нулю.
Чтобы решить систему уравнений в символьном виде, выполните следующее:
– Напечатайте ключевое слово Given.
– Напечатайте уравнения в любом порядке ниже слова Given.
Удостоверьтесь, что для ввода знака = используется [Ctrl]=.
– Напечатайте функцию Find, соответствующую системе уравнений.
– Нажмите [Ctrl]. (клавиша CTRL, сопровождаемая точкой).
MathCAD отобразит символьный знак равенства →.
– Щелкните мышью на функции Find.
Пример 2 рис. 7 иллюстрирует символьное решение системы
уравнений в MathCAD.
Лабораторная работа к разделу 2
Упражнение 1. Построить график функции f(x) и приблизительно определить один из корней уравнения. Решить уравнение f(x) = 0 с точностью ε = 10–4 с помощью встроенной функции
MathCADroot.
Варианты заданий к упражнению 1
f(x)
В1. ex −1 − x3 − x, x ∈ [0, 1]
В3. x −
1
, x ∈ [0, 1]
3 + sin(3.6x)
f(x)
В2. 0.25x3 + x − 2, x ∈ [0, 2]
1 − x2
, x ∈ [2, 3]
В4. arccos 1 + x2
В5. arccos x − 1 − 0.3x3 , x ∈ [0, 1]
В6. 3x − 4 ln x − 5, x ∈ [2, 4]
В7. 1 − 0.4x2 − arcsin x, x ∈ [0, 1]
В8. ex − e− x − 2, x ∈ [0, 1]
30
Окончание таблицы
f(x)
В9. 3x − 14 + ex − e− x , x ∈ [1, 3]
В11.
2x2 + 1.2 − cos x − 1, x ∈ [0, 1]
f(x)
В10.
1 − x − tgx, x ∈ [0, 1]
В12. 1 − x + sin x − ln(1 + x), x ∈ [0, 2]
2
1 1
В13. cos   − 2 sin   + , x ∈ [1, 2]
x
x x
В14. õ5 – õ − 0.2, õ ∈ [1, 2]
В15. 0.1x2 − x ln x, x ∈ [1, 2]
1 − x2
, x ∈ [0, 2]
В16. arccos 1 + x2
Упражнение 2. Для полинома g(x) выполнить следующие действия:
– с помощью команды Символы ⇒ Коэффициенты полинома
создать вектор v, содержащий коэффициенты полинома;
– решить уравнение g(x) = 0 с помощью функции polyroots;
– решить уравнение символьно, используя команду Символы ⇒
Переменные ⇒ Вычислить.
Варианты заданий к упражнению 2
4
3 2
В1. x − 2x + x − 12x + 20
4
3
2
В2. x + x − 17x − 45x − 100
4
3 2
В3. x + 6x + x − 4x − 60
4
3
2
В4. x − 5x + x − 15x + 50
В5. x4 − 14x2 − 40x − 75
В6. x4 − 4x3 − 2x2 − 20x + 25
4
3 2
В7. x − x + x − 11x + 10
4
3
2
В8. x + 5x + 7x + 7x − 20
4
3 2
В9. x − x − 29x − 71x − 140
4
3
2
В10. x − 7x + 7x − 5x + 100
4
3
2
В11. x + 7x + 9x + 13x − 30
4
3
2
В12. x + 10x + 36x + 70x + 75
4
3
2
В13. x + 3x − 23x − 55x − 150
4
3
2
В14. x + 9x + 31x + 59x + 60
4
3
2
В15. x − 6x + 4x + 10x + 75
4
3 2
В16. x −x + x − 11x + 122
Упражнение 3.
1. Используя функции root и polyroots, найти корни уравнений
(задание 1 в таблице вариантов).
2. Решить системы уравнений несколькими способами (задание 2
в таблице вариантов).
31
Варианты заданий к упражнению 3
0;
В1. 1. а) 2x + 5x − 3 =
b) 0.5x + 1 = (x − 2)2 ;
c) 3x4 + 4x3 − 12x2 − 5 =
0;
x 1, − 2π ≤ x ≤ 2π
d) (x − 3)cos=
B2. 1. a) arctgx +
1
3x3
b) log2 (−x)(x − 2) =
−1;
=
0;
c) 2x3 − 9x2 − 60x + 1 =
0;
π

d) sin  x +  − 0.5x =
0
3

5.06
3.21x1 − 4.25x2 + 2.13x3 =
5.15
0.42x1 − 1.13x2 + 7.05x3 =

2.  7.09x1 + 1.17x2 − 2.23x3 =
4.75
2.  1.14x1 − 2.15x2 + 5.11x3 =
−4.16
0.43x − 1.4x − 0.62x =
−0.71x + 0.21x − 0.02x =
1
2
3 −1.05

1
2
3 −0.17

B3. 1. a) −5x − 3x =
0;
B4. 1. a) 2 ex = 5x;
0;
b) x2 − 2 + 0.5x =
1;
b) x log3 (x + 1) =
0;
c) x4 − x − 1 =
0;
c) 2x4 − x2 − 10 =
1
d) (x − 1)2 ⋅ lg(x + 11) =
x3
d) cos(x + 0.5) =
−4.75
7.09x1 + 1.17x2 − 2.23x3 =
−7.5
2.5x1 − 3.12x2 − 4.03x3 =


2. 
−1.05
2.  0.61x1 + 0.71x2 − 0.05x3 =
0.43x1 − 1.4x2 − 0.62x3 =
0.44
3.21x − 4.25x + 2.13x =
−1.03x − 0.05x + 0.877x =
1
2
3 5.06

1
2
3 −1.16

1
B5. 1. a) 3x −1 + 2 − x =
0;
B6. 1. a) 2arctgx +
b) (x − 4)2 log0.5 (x − 3) =
−1;
b) x2 2x = 1;
c) 3x4 + 8x3 + 6x2 − 10 =
0;
c) x4 − 18x2 + 6 =
0;
d) 5 sin x = x
d) tgx = x, −
2x3
π
π
≤x≤
2
2
=
0;
0.44
0.61x1 + 0.71x2 − 0.05x3 =
−4.16
1.14x1 − 2.15x2 − 5.11x3 =
2.  −1.03x1 − 2.05x2 + 0.87x3 =
−1.16

2. 
−
0
.
71
x
+
0
.
81
−
0
.
02
x
=

2.5x − 3.12x − 5.03x =
1
2
3 −0.17
1
2
3 −7.5

0.42x − 1.13x + 7.05x =
1
2
3 6.15

32
Продолжение таблицы
0;
B7. 1. a) e−2x − 2x + 1 =
b) 0.5x −
1
(x + 2)2
=
0;
c) x4 + 4x3 − 8x2 − 17 =
0;
2
B8. 1. a) 5x − 6x + 3 =
0;
b) 2x2 − 0.5x − 3 =
0;
c) x4 − x3 − 2x2 + 3x − 3 =
0;
1
d) x lg(x + 1) =
d) x cos 2x = −1
0.10
0.10x1 + 0.12x2 − 0.13x3 =
−0.92 2.  0.12x1 + 0.71x2 + 0.15x3 =
3.11x1 − 1.66x2 − 0.60x3 =
0.26
2.  −1.65x1 + 3.15x2 − 0.78x3 =
−0.13x + 0.15x + 0.63x =
2.57
1
2
3 0.38

0.60x + 0.78x − 1.87x =
1
.
65
1
2
3

B9. 1. a) arctg(x − 1) + 2x =
0;
B10. 1. а) 2arcctgx − x + 3 =
0;
1;
b) (x − 2)2 2x2 =
π
2
b) 2 sin  x + =
 0.5x − 1;
3


c) 3x4 + 4x3 − 12x2 + 1 =
0;
0
d) x2 − 20 sin x =
c) 3x4 − 8x3 − 18x2 + 2 =
0;
d) 2 lg x −
x
+1 =
0
2
0.29
0.71x1 + 0.10x2 + 0.12x3 =
0.33
0.34x1 − 0.04x2 + 0.10x3 =
2.  0.10x1 + 0.34x2 − 0.04x3 =
0.32

2. 
0
.
04
x
0
.
10
x
0
.
12
x
−
+
+
=

0.12x − 0.04x + 0.10x =
1
2
3 −0.05
1
2
3 −0.10

0.10x + 0.12x + 0.71x =
1
2
3 0.28

B11. 1. a) 3x + 2x − 2 =
0;
B12. 1. a) 2arctgx − 3x + 2 =
0;
2
b) ( x − 2 ) − 1 ⋅ 2x =
1;


1;
b) log2 (x + 2)(x − 1) =
0;
c) 2x4 − 8x3 − 8x2 − 1 =
d) (x − 2)cos=
x 1, − 2π ≤ x ≤ 2π
c) 2x4 + 8x3 + 8x2 − 1 =
0;
d) sin(x − 0.5) − x + 05 =
0
1.15
1.17x1 + 0.53x2 − 0.84x3 =
−0.17
0.12x1 − 0.43x2 + 0.14x3 =

2. 
0
.
04
x
−
0
.
72
x
−
0
.
43
x
=

1
2
3 0.15
2.  −0.07x1 + 0.34x2 + 0.72x3 =
0.62
0.32x + 0.43x − 0.93x =
1
2
3 −0.48

1.18x − 0.08x − 0.25x =
1
2
3 1.12

33
Продолжение таблицы
0;
B13. 1. a) x3 + 2x − 5 =
B14. 1. a) 2ex − 3x + 1 =
0;
b) x2 − 3 + 0.5x =
0;
2;
b) x log3 (x + 1) =
c) x4 − 4x3 − 8x2 + 1 =
0;
c) 3x4 + 4x3 − 12x2 − 5 =
0;
1
d) (x − 2)2 lg(x + 11) =
d) cos(x + 0.3) =
x2
0.48
0.82x1 + 0.43x2 − 0.57x3 =
1.83
0.66x1 − 1.44x2 − 0.18x3 =

2. 
2.  0.48 x1 − 0.24x2 + 0.37x3 =
0.52
−0.35x1 + 1.12x2 − 0.48x3 =
−0.84
0.48x + 0.23x + 0.37x =
0.86x + 0.43x + 0.64x =
1
.44
0
.
64
1
2
3

1
2
3

B15. 1. a) 3x −1 + 4 − x =
0;
B16. 1. a) arctgx +
−1;
b) (x − 3)2 ⋅ log0.5 (x − 2) =
1;
b) (x − 1)2 ⋅ 2x =
c) 2x3 − 9x2 − 60x + 1 =
0;
c) x4 − x − 1 =
0;
d) 5sin x = x
d) tg3 x= x, −
1
3x3
=
0;
π
π
≤x≤
2
2
0.18
1.6x1 + 0.12x2 + 0.57x3 =
0.43
1.16x1 + 1.3x2 − 1.14x3 =
2.  0.38x1 + 0.25x2 − 0.54x3 =
0.63
2.  0.83x1 − 0.48x2 − 2.44x3 =
−0.15
0.28x + 0.46x − 1.12x =
1
2
3 0.88

2x − 0.16x + 1.3x =
1
.
5
2
3
 1
0;
В17. 1. a) ex + x + 1 =
В18. 1. a) 3x − 2x + 5 =
0;
b) 0.5x − 5 = (x + 2)2 ;
b) 2x2 − 0.5x − 2 =
0;
c) 2x4 − x2 − 10 =
0;
c) 3x4 + 8x3 + 6x2 − 10 =
0;
d) x2 cos 2x = −1
d) x lg(x + 1) =
1
0.34
0.63x1 + 0.05x2 + 0.15x3 =
−0.15
0.10x1 − 0.04x2 − 0.13x3 =

2. 

0
.
05
x
+
0
.
34
x
+
0
.
10
x
=

2.  −0.04x1 + 0.34x2 + 0.05x3 =
1
2
3 0.32
0.31

0.42
−0.13x + 0.05x + 0.03x =
0.15x1 + 0.10x2 + 0.71x3 =
1
2
3 0.37

34
Окончание таблицы
0;
В19. 1. a) arctg(x − 1) + 3x − 1 =
0;
В20. 1. a) 2arcctgx − x + 3 =
1;
b) (x − 2)2 ⋅ 2x =
π
b) 2 sin  x −  = x2 − 0.5;
3

c) x4 − 18x2 + 6 =
0;
0;
c) x4 + 4x3 − 8x2 − 17 =
0
d) x2 − 20 sin x =
d) 2 lg x −
x
+1 =
0
2
−0.60
1.20x1 − 0.20x2 + 0.30x3 =
−0.60
0.30x1 + 1.2x2 − 0.20x3 =
2.  −0.20x1 + 1.60x2 − 0.10x =
0.30
2.  −0.10x1 − 0.20x2 + 1.60x3 =
−0.30x + 0.10x − 1.5x =
0.30
1
2
3 0.40

−1.50x − 0.30x + 0.10x =
1
2
3 0.40

Упражнение 4. Решить систему линейных уравнений:
1) используя функцию Find;
2) матричным способом и используя функцию lsolve [3].
Варианты заданий к упражнению 4
8
2x1 + x2 + 2x3 + 3x4 =
3x + 3x =
6
3
В1.  1
4
2x1 − x2 + 3x4 =
x1 + 2x2 − x3 + 2x4 =
4
−4
2x1 + x2 − 5x3 + x4 =
x − 3x − 6x =
−
7
 1
2
4
В2. 
2
2x2 − x3 + 2x4 =
x1 + 4x2 − 7x3 + 6x4 =
−2
22
x1 + 2x2 + 3x3 + 4x4 =
2x + 3x + x + 2x =
17
2
3
4
В3.  1
8
x1 + x2 + x3 − x4 =
x1 − 2x3 − 3x4 =
−7
x1 + 2x2 + 3x3 + 4x4
2x + 3x + 4x + x
2
3
4
В4.  1
3x1 + 4x2 + x3 + 2x4
4x1 + x2 + 2x3 + 3x4
23
9x1 + 10x2 − 7x3 − x4 =
7x − x − 5x =
37

3
4
В5.  1
22
5x1 − 2x3 + x4 =
4x1 + x2 + 2x3 + 3x4 =
26
−18
2x1 − 8 x2 − 3x3 − 2x4 =
x − 2x + 3x − 2x =
28

2
3
4
В6.  1
10
x2 + x3 + x4 =
11x2 + x3 + 2x4 =
21
158
6x1 − x2 + 10x3 − x4 =
2x + x + 10x + 7x =

1
2
3
4 128
В7. 
7
3x1 − 2x2 − 2x3 − x4 =
x1 − 12x2 + 2x3 − x4 =
17
66
2x1 − x2 + 4x3 + x4 =
2x − 6x + x =

2
3
4 −63
В8. 
146
8x1 − 3x2 + 6x3 − 5x4 =
2x1 − 7x2 + 6x3 − x4 =
80
=
26
=
34
=
26
=
26
35
Окончание таблицы
88
x1 − 2x2 + 6x3 + x4 =
5x + 2x − 3x =
3
4 88
В9.  1
7
x
−
3
x
+
7
x
+ 2x4 =
181
1
2
3

3x1 − 7x2 + 5x3 + 2x4 =
99
−16
2x1 − 3x3 − 2x4 =
2x − x + 13x + 4x =
2
3
4 213
В10.  1
3
x
+
x
+
2
x
+
x
=
72
1
2
3
4

x1 − 12x3 − 5x4 =
−159
−7
x1 − 2x2 − 8x4 =
 x + 4x − 7x + 6x =
2
3
4 −8
В11.  1
−10
x1 + x2 − 5x3 + x4 =
2x1 − x2 + 2x4 =
7
5
7x1 + 7x2 − 7x3 − 2x4 =
3x + 4x + 5x + 8x =
2
3
4 60
В12.  1
27
2x1 + 2x2 + 2x3 + x4 =
2x1 − 2x3 − x4 =
−1
15
2x1 + 2x2 + 6x3 + x4 =
− x + 2x + x =
18
3
4
В13.  2
4
x
−
3
x
+
x
− 5x4 =
37
1
2
3

3x1 − 5x2 + x3 − x4 =
30
124
6x1 − 9x2 + 5x3 + x4 =
7x − 5x − x =
−
54
3
4
В14.  2
5
x
−
5
x
+
2
x
83
1
2
3 + 4x4 =

3x1 − 9x2 + x3 + 6x4 =
45
165
4x1 − 5x2 + 7x3 + 5x4 =
2x + x − 3x − x =
−
15
2
3
4
В15.  1
194
9x1 + 4x3 − x4 =
x1 − x2 − 2x3 − 3x4 =
−19
−7
x1 − 2x2 − 8x4 =
 x + 4x − 7x + 6x =
2
3
4 −18
В16.  1
−12
x1 + x2 − 5x3 + x4 =
2x1 − x2 + 2x4 =
7
Упражнение 5. Преобразовать нелинейные уравнения системы
к виду f1(x) = y и f2(y) = x. Построить их графики и определить начальное приближение решения. Решить систему нелинейных уравнений с помощью функции Minerr [4].
Варианты заданий к упражнению 5
2
sin x + 2y =
В1. 
0.7
cos ( y − 1) + x =
−0.4
sin y + x =
В2. 
0
2y − cos ( x + 1) =
1
sin(x + 0.5) − y =
В3. 
−
+
=
cos
y
2
x
0
(
)

1.5
sin(x + 2) − y =
В4. 
cos
y
−
2
+
x
=
0.5
(
)

1.5
cos x + y =
В5. 
1
2x − sin ( y − 0.5) =
2
cos(x + 0.5) − y =
В6. 
sin
y
−
2
x
=
1

36
Окончание таблицы
0.8
cos ( x + 0.5) + y =
В7. 
sin
y
−
2
x
=
1
.
6

0
cos(x − 2) + y =
В8. 
sin
y
+
0
.
5
−
x
1
) =
 (
sin(x − 1) = 1.3 − y
В9. 
0.8
x − sin ( y + 1) =
1
cos(x + 0.5) + y =
В10. 
1
sin ( y + 0.5) − x =
1
cos(x + 0.5) + y =
В11. 
sin
y
−
2
x
=
2

1
sin(x) − 2y =
В12. 
2
cos(y + 0.5) − x =
0.8
− sin(x + 1) + y =
В13. 
−
+
=
sin(
y
1
)
x
1
.
3

1
2y − sin(x − 0.5) =
В14. 
+
=
cos(
y
)
x
1
.
5

1
sin(x) − 2y =
В15. 
sin(
y
−
1
)
+
x
=
1.3

0.5
cos(x − 1) + y =
В16. 
x
−
cos
y
=
3

1.5
cos x + y =
В17. 
2
x
−
sin(
y
− 0.5) =
1

1
sin(x + 0.5) − y =
В18. 
cos(
y
−
2
)
+
x
=
0

1.5
sin(x + 2) − y =
В19. 
0.5
x + cos(y − 2) =
sin(x − 1) = 1.3 − y
В20. 
0.8
x − sin(y + 1) =
0
2y − cos(x + 1) =
В21. 
−0.4
x + sin y =
1.2
sin(y + 1) − x =
В22. 
2
2y + cos x =
2
sin y + 2x =
В23. 
0.7
cos(x − 1) + y =
1.2
sin(x + 0.5) − y =
В24. 
0
cos(y − 2) + x =
Контрольные вопросы
1. Назовите способы нахождения начального приближения.
2. Какие функции для решения одного уравнения в MathCAD вы
знаете? В чем их отличие?
3. Какие аргументы функции root не обязательны?
4. В каких случаях MathCAD не может найти корень уравнения?
5. Какая системная переменная отвечает за точность вычислений?
6. Как изменить точность, с которой функция root ищет корень?
7. Как системная переменная TOL влияет на решение уравнения
с помощью функции root?
37
8. Назовите функции для решения систем уравнений в MathCAD
и особенности их применения.
9. Опишите структуру блока решения уравнений.
10. Какой знак равенства используется в блоке решения? Какой
комбинацией клавиш вставляется в документ?
11. Какие выражения не допустимы внутри блока решения
уравнения?
12. Опишите способы использования функции Find.
13. В каких случаях MathCAD не может найти решение системы
уравнений?
14. Дайте сравнительную характеристику функциям Find и
Minerr.
15. Какие уравнения называются матричными?
16. Назовите способы решения матричных уравнений.
17. Как символьно решить уравнение или систему уравнений
в MathCAD? Какой знак равенства используется? Какой комбинацией клавиш вставляется в документ?
18. Назовите особенности использования символьного решения
уравнений.
38
3. СИМВОЛЬНЫЕ ВЫЧИСЛЕНИЯ В MATHCAD
Система MathCAD снабжается специальным процессором для
выполнения аналитических (символьных) вычислений. Основой
компьютерной алгебры является ядро, хранящее всю совокупность
формул и формульных преобразований, с помощью которых производятся аналитические вычисления. Работа символьного процессора тем надежнее, чем больше формул в этом ядре; тем вероятнее,
что поставленная задача будет решена, если такое решение существует. Ядро символьного процессора системы MathCAD – несколько упрощенный вариант ядра известной системы символьной математики Maple V фирмы Waterloo Maple Software. Для пользователя
символьные вычисления выполняются просто:
– непосредственно в командном режиме (операции меню Символы);
– с помощью операторов символьного преобразования.
Рассмотрим первый способ.
Выделение выражения для символьных вычислений
Для выполнения операции с символьным процессором необходимо выделить объект синими линиями.
Чтобы символьные операции выполнялись, процессору необходимо указать, над каким выражением эти операции должны производиться, т. е. надо выделить выражение. Для ряда операций
следует не только указать выражение, к которому они относятся,
но и наметить переменную, относительно которой выполняется та
или иная символьная операция. Само выражение в таком случае не
выделяется.
Символьные операции разбиты на пять характерных разделов.
Первыми идут наиболее часто используемые операции. Они могут
выполняться над выражениями, содержащими комплексные числа или имеющими решения в комплексном виде.
Символьные операции с выделенными выражениями
Над выделенными выражениями можно выполнять следующие
операции:
Расчеты – преобразовать выражение с выбором вида преобразований из подменю;
Символические [Shift] F9 – выполнить символьное преобразование выделенного выражения;
С плавающей запятой… – вычислить выделенное выражение
в вещественных числах;
39
Комплексные – выполнить вычисления в комплексном виде;
Упростить – упростить выделенное выражение с выполнением
таких операций, как сокращение подобных слагаемых, приведение к общему знаменателю, использование основных тригонометрических тождеств и т. д.;
Расширить – раскрыть выражение [например, для (Х + Y)(Х – Y)
получаем X2 – Y2];
Фактор – разложить число или выражение на множители [например, X2 – Y2 даст (Х + Y)(Х – Y)];
Подобные – собрать слагаемые, подобные выделенному выражению, которое может быть отдельной переменной или функцией со
своим аргументом (результатом будет выражение, полиномиальное относительно выбранного выражения);
Коэффициенты полинома – по заданной переменной найти коэффициенты полинома, аппроксимирующего выражение, в котором эта переменная использована.
Для ряда операций надо знать, относительно какой переменной
они выполняются. В этом случае необходимо выделить переменную, установив на ней маркер ввода. После этого становятся доступными следующие операции подменю Переменные:
Вычислить – найти значения выделенной переменной, при
которых содержащее ее выражение становится равным нулю;
Замена – заменить указанную переменную содержимым буфера обмена;
Дифференциалы – дифференцировать выражение, содержащее выделенную переменную, по этой переменной (остальные
переменные рассматриваются как константы);
Интеграция – интегрировать все выражение, содержащее
переменную, по этой переменной;
Разложить на составляющие... – найти несколько членов
разложения выражения в ряд Тейлора относительно выделенной переменной;
Преобразование в частичные доли – разложить на элементарные дроби выражение, которое рассматривается как рациональная дробь относительно выделенной переменной.
Операции с выделенными матрицами
Операции с выделенными матрицами представлены позицией
подменю Матрицы, которая имеет свое подменю со следующими
операциями:
Транспонирование – получить транспонированную матрицу;
40
Инвертирование – создать обратную матрицу;
Определитель – вычислить детерминант (определитель) матрицы.
Результаты символьных операций с матрицами часто оказываются чрезмерно громоздкими и поэтому плохо обозримы.
Операции преобразования
В позиции Преобразование содержится раздел операций преобразования, создающий подменю со следующими возможностями.
Преобразование Фурье
Фурье – выполнить прямое преобразование Фурье относительно
выделенной переменной;
Фурье обратное – выполнить обратное преобразование Фурье относительно выделенной переменной.
Преобразование Лапласа
Лапласа – выполнить прямое преобразование Лапласа относительно выделенной переменной (результат – функция переменной s);
Лапласа обратное – выполнить обратное преобразование Лапласа относительно выделенной переменной (результат – функция
переменной t);
Z – выполнить прямое Z-преобразование выражения относительно выделенной переменной (результат – функция переменной z);
Обратное Z – выполнить обратное Z-преобразование относительно выделенной переменной (результат – функция переменной n).
Стиль представления результатов вычислений
На наглядность вычислений влияет стиль представления их
результатов. Следующая команда позволяет задать тот или иной
стиль:
Стиль вычислений... – задать вывод результата символьной операции под основным выражением, рядом с ним или вместо него
(рис. 9).
«Символьные операции легко выполняются. Символьная операция Расчеты обеспечивает работу с математическими выражениями, содержащими встроенные в систему функции и представленными в различном виде: полиномиальном, дробно-рациональном, в виде сумм и произведений, производных и интегралов и т. д.
(рис. 10). Операция стремится произвести все возможные числен41
Рис. 9. Стиль вычислений
ные вычисления и представить выражение в наиболее простом виде.
Она возможна над матрицами с символьными элементами. Производные и определенные интегралы, символьные значения которых
вычисляются, должны быть представлены в своей естественной форме» [3].
Особо следует отметить возможность выполнения численных
вычислений с повышенной точностью – 20 знаков после запятой.
Для перехода в такой режим вычислений нужно числовые константы в вычисляемых объектах задавать с обязательным указанием десятичной точки, например 130.0 или 15.0, а не 130 и 15.
Этот признак является указанием на проведение вычислений с повышенной точностью.
Типовые примеры действия операции Расчеты показаны на рис. 10.
Здесь слева показаны исходные выражения, подвергаемые символьным преобразованиям, а рядом – результат этих преобразований.
Операция Расчеты – одна из самых мощных. Как видно из
рис. 10, она позволяет в символьном виде вычислять суммы (и произведения) рядов, производные и неопределенные интегралы, выполнять символьные и численные операции с матрицами.
Эта операция содержит подменю. Команда Символические тут
наиболее важная. Назначение других команд очевидно: они нужны, если результат требуется получить в форме комплексного или
действительного числа. К примеру, если вы хотите вместо числа π
получить 3.141..., используйте команду С плавающей запятой… .
В режиме символьных вычислений результат может превосходить
машинную бесконечность системы – см. пример на вычисление
ехр(1000.0) на рис. 10. При этом число точных значащих цифр результата практически не ограничено (или, точнее говоря, зависит
от емкости ОЗУ).
42
Рис. 10. Символьные вычисления
Операция Разложить на составляющие... возвращает разложение в ряд Тейлора выражения относительно выделенной переменной с заданным по запросу числом членов ряда n (число определяется по степеням ряда). По умолчанию задано п = 6. В разложении указывается остаточная погрешность разложения. На рис. 11
представлено применение этой операции для разложения функции
sin(x)
. Минимальная погрешность получается при малых х (см.
x
графическое представление функции и ее ряда).
Операторы вычисления пределов
функций
Для вычисления пределов функций в систему введен символьный оператор limit. Помимо ввода с наборной панели Матанализ,
его в трех формах можно ввести нажатием следующих комбинаций
клавиш:
43
Рис. 11. Разложение функции в ряд Тейлора
[Ctrl] L – ввод шаблона оператора вычисления предела функции
при х, стремящемся к заданному значению;
[Ctrl] A – ввод шаблона вычисления предела функции слева от
заданной точки;
[Ctrl] B – ввод шаблона вычисления предела функции справа от
заданной точки.
Примеры вычисления пределов показаны на рис. 12. При вычислении пределов нужно заполнить шаблоны, входящие в главный шаблон для вычисления пределов, а затем ввести функцию,
имя переменной, по которой ищется предел, и значение переменной – аргумента функции.
Для получения результата установите после блока вычисления
предела стрелку с острием, направленным вправо. Предел (если он
существует) будет вычислен и появится в шаблоне у острия стрелки. Если функция не имеет предела, вместо результата появится
надпись Undefine.
44
Рис. 12. Вычисление пределов
Создание операторов пользователя
Еще одна экзотическая возможность, присущая новым версиям
системы MathCAD, – создание новых операторов пользователя. Такой оператор создается практически так же, как функция пользователя, но вместо имени выбирается какой-либо подходящий знак.
Например, можно создать оператора деления в виде:
A
– создание нового оператора деления;
÷ ( A, B ) :=
B
÷ (6, 2) = 3 – применение функции деления;
6 ÷ 2 = 3 – применение нового оператора деления.
45
Проблема состоит в том, что встроенные в систему операторы
нельзя переопределить. Поэтому набор доступных знаков для обозначения новых операторов ограничен. Нельзя создать нового оператора деления знаком / (он уже использован), но можно взять знак
÷, поскольку этот символ системой не используется.
«Вторая проблема связана с вводом символа нового оператора.
Скорее всего, его напрямую ввести нельзя. Придется воспользоваться типовыми приемами ввода новых символов в документы
Windows. Один из этих приемов – использование приложения, выдающего таблицу символов, с возможностью его экспорта из этой
таблицы в документ другого приложения (в нашем случае – в документ MathCAD).
Можно также воспользоваться подходящим знаком из набора
MATH SYMBOL, имеющегося в составе Шпаргалок, доступ к которым дает Ресурс Центр (? ⇒ Ресурс Центр ⇒ Справочный стол и
краткое руководство ⇒ Дополнительные математические символы). На рис. 13 показан такой вариант создания нового оператора
Рис. 13. Создание оператора пользователя
с выбором имени из набора знаков
46
пользователя. Для перетаскивания знака можно скопировать его
в буфер обмена с помощью операции Копировать, а затем ввести
в документ, используя операцию Вставка.
После того как оператор создан, его можно использовать как
функцию и как оператор. Примеры показаны на рис. 13. Для применения нового оператора надо вывести его шаблон с помощью
панели математических знаков (она также показана на рис. 13).
В нашем случае следует нажать кнопку XFY этой панели – она выводит особый шаблон вида   . Введите операнды, например 6
и 3, в крайние прямоугольники, а символ оператора – в средний.
Поставив после этой конструкции знак равенства, увидите результат – число 2.
Можно создать и другие операторы, например, для работы с одним операндом. Так, вы можете создать оператор для пересчета
значения температуры по шкале Цельсия, с тем чтобы определить
соответствующее ему значение по шкале Фаренгейта, следующим
образом:
9
°C(x) :=
x + 32
°F := 1
5
Затем, используя кнопку XF наборной панели символов отношения, можно выполнять операцию пересчета в виде
37°C = 98.6°F
Есть области математики и физики, где создание новых операторов необходимо, поскольку является частью специфического языка их описания» [3].
Лабораторная работа к разделу 3
Упражнение 1. Используя различные операции (Символы ⇒
Расчетры ⇒ С плавающей запятой…), представьте:
1) число π в семи позициях;
2) число 12.345667 в трех позициях.
Упражнение 2. Выведите следующие числа в комплексной форме,
используя операцию Расчеты ⇒ Комплексные из меню Символы:
−3
π
1+ i
4
e
.
); 3)
1) −7; 2) tg(a
Упражнение 3. Для полинома R(x) (см. таблицу вариантов) выполните следующие действия:
1) разложите на множители, используя операцию Символы ⇒
Коэффициент;
47
2) подставьте выражение x = y + z в R(x), используя операцию
Символы ⇒ Переменные ⇒ Замена (предварительно скопировав
подставляемое выражение в буфер обмена, выделив его и нажав
комбинацию клавиш Ctrl+C);
3) используя операцию Символы ⇒ Расширить, разложите по
степеням выражение, полученное в п. 2;
4) используя операцию Символы ⇒ Подобные, сверните выражение, полученное в п. 3, по переменной z.
Варианты заданий к упражнению 3
R(x)
R(x)
В1. x4 − 2x3 + x2 − 12x + 20
4
3
2
В2. x + x − 17x − 45x − 100
В3. x4 − 6x3 + x2 − 4x − 60
4
3
2
В4. x − 5x + x − 15x + 50
В5. x4 − 14x3 − 40x − 75
В6. x4 − 4x3 − 2x2 − 20x + 25
В7. x4 − x3 + x2 − 11x + 10
4
3
2
В8. x + 5x + 7x + 7x − 20
В9. x4 − x3 − 29x2 − 71x − 140
4
3
2
В10. x − 7x + 7x − 5x + 100
В11. x4 + 7x3 + 9x2 + 13x − 30
В12. x4 + 10x3 + 36x2 + 70x + 75
В13. x4 − 2x3 + x2 − 12x + 20
В14. x4 + 9x3 + 31x2 + 59x + 60
В15. 3x3 − 2x2 + 4x − 12
В16. x4 + 9x3 + 3x2 + 9x + 270
Упражнение 4. Разложите выражения на элементарные дроби,
используя операцию Символы ⇒ Переменные ⇒ Преобразование
в частичные доли:
6 x2 − x + 1
x3 − x
x +1
3
x − ( x − 1)
;
;
3x2 − 2
(x2 + x + 1) ( x + 1)
5x2 − 4x + 16
;
(x2 + x + 1)2 ( x − 3 )
.
Упражнение 5. Разложите в ряд с заданной точностью, используя операцию Символы ⇒ Переменные ⇒ Разложить на составляющие:
ln (1 + x ), x0 =
0, ïîðÿäîê ðàçëîæåíèÿ 6;
sin(x)2 , x0 = 0, порядок разложения 6.
48
Упражнение 6. Найти первообразную аналитически заданной
функции f(x), используя операцию Символы ⇒ Переменные ⇒ Интеграция.
Упражнение 7. Определить символьное значение первой и второй производных, используя команду Символы ⇒ Переменные ⇒
Дифференциалы.
Варианты заданий к упражнениям 6 и 7
В1. 1 / ( tg2x + 1)
В6. x2arctg ( x / 3 )
В11. ( 2x + 3 ) sin x
В2. cos x / ( 2x + 5 )
2x
В7. e sin 3x
В12. cos 3x / (1 − cos 3x)2
В3. 1 / (x x3 + 4 )
В8. ctg2x / (sin 2x)2
В13. 1 / (1 + x + x2 )
В4. sin x / (1 + sin x )
В9. ( x + 1) sin x
В14. (1 + x ) / ( 2 + x )
В5. x2lg ( x + 2 )
В10. 5x + xlgx
В15. 1 + e− x
Упражнение 8.
1. Транспонируйте матрицу М
 1

 x
 x2

a b

2 c
3 d 
с помощью операции Символы ⇒ Матрицы ⇒ Транспонирование.
2. Инвертируйте матрицу
1 y


 x 2
с помощью операции Символы ⇒ Матрицы ⇒ Инвертирование.
3. Вычислите определитель матрицы М
 1

 x
 x2

a b

2 c
3 d 
с помощью операции Символы ⇒ Матрицы ⇒ Определитель.
49
4. Для заданных матриц вычислите:
1) определители и обратные матрицы (задание 1 в таблице вариантов).
2) произведения матриц (задание 2 в таблице вариантов).
Варианты заданий к упражнению 8
 1 −3 7 


В1. 1. A =  2 5 9 ;
6 4 8


 4 6 12 


В2. 1. A =  0 3 7 ;
 1 −2 9 


 0.3 4.2 −1.8 
2
 0.1 5 3 
3


 


 
B=
B =  8 3.5 2 ; c =  −1 
 −2 3.1 2.7 ; c =
7 
 0.7 5
1
 −2 5 1 
4
−6 

 


 
2. (A + B)c; (A + B–1)B + A
2. (3A + B)(2A – B); (Ac – Bc)c
5 
3 7


В3.
1. A  8 12 −11 ;
=
2 1
4 

 1 −3 7 


В4. 1. A =  2 5 9 ;
6 4 8


 0.1 −7 8.2 
2


 
B=
 9 −10 3 ; c =
3
 −5 4.1 0.2 
0


 
2. (A – B)2 – B; A–1c + Bc
 0.3 4.2 −1.8 
2


 
B=
 −2 3.1 2.7 ; c =
7 
 0.7 5



−6 

1
2. (A + B)Bc; 5Ac – 3Bc + (A + B)–1c
 0.41 2 −2 


В5. 1. A =  3
0 0.1 ;
 −1 4 8 


 10 1.5 0 


В6. 1. A =
−2 ;
 −3 6
 6 −1 1.7 


 −4 3 −1.2 
9
 0.7 0.2 2 
1


 


 
B =
B
c
5 8 4.6 ; c =
7
=
12
11
1
.
9
;
 


9
 1 5 3.9 
 −3 
 7 3.9 8.2 
 


 


 −5 
2. (A + B)B – (2A – 3B); (AT – BT)–1 2. (AAT) – B; (A – B)Tc + (A + B)–1c
 0 3.9 1.9 


В7. 1. A =  −4 4 4.8 ;
 −1 9
−3 

 11 9 8 


В8. 1. A =  4 2 23 ;
 7 −7 11 


−2 
2
3
5
9
8 6
4


 


 
B =  10 8.9 6 ; c =  −9 
B  9 2 −5 ; =
c 9
=
 15 −3 1.7 
 12 
 1 1.4 −7 
1


 


 
2. (A + B)(B – A)c; (A + AT)c – (B + BT)c 2. (BB – AB)T; (B – AB + B–1)Tc
50
Продолжение таблицы
 8 4 −1 


В9.
1. A  9 9 −5 ;
=
2 5 3 


 3 −6 1 


В10. 1. A =  7 3
0 ;
 9 7.1 2.1 


 −1 3 −1 
6
 2.7 2 2 
 11 


 


 
B=
B =
2 ; c =
=
1
9 8 ; c  15 
 −2 1
8

 3 4 −1.7 
5
 4 11 6 
8


 


 
2. AB + 3A – B; (ATB – 1 + A)c – Bc 2. (2A + BB)T – A; (A–1 – A)B + AATB
 8 −9 7 


В12. 1. A =  9 3 11 ;
6 4 8 


 4 1.8 1 


В11. 1. A =  8 3.1 6 ;
 9 8.5 3 


 2 5.1 −5 
5
 0.6 4.2 −8 
6


 


 
B
c
B=
6
6
−
7
;
c
=
−
2
2
1
1
=
−
;
=


 


1
 0.7 5 11 
1
 6 9 10 
4


 


 
2. BA – BB + A–1; Ac – Bc + (A – B)Tc 2. AA + BB – 2AB; AВc + (AT – BT)c
 1 −3 7 


В13. 1. A =  2 5 9 ;
6 4 8


1 3 7 


В14. 1.=
A  2 −5 2 ;
 6 11 8 


 0.3 2 −8 
2
 0.3 4 −1.8 
 0.2 


 




B =
B =
9 3 2 ; c =
4
8 1 0.3 ; c  1.8 
 3 8 −1 
 −1 
 7 5 −6 
 −8 


 




T T
T
2. AA + BB – 2AB; ABc + (A – B )c 2. (A + B + AB) ; (B – BB – AA)c – Ac
 1 −3 0.5 


В15. 1. A =  2 9
4 ;
 6 12 8 


 0.1 −0.3 7 


В16. 1. A =  2.1
3
1 ;
 0.8
2
8 

 56 42 −18 


B =
49 31 27 ; c
 91 85 −66 


4
 
5
9
 
2. AB + ATB – BTA; Ac + Bc + ABc
7
 
B
12 
=
 10 
 
2. AE – BT; (BA – 3A)c + BTc
 5 12 1.9 


2 3 7.2 ; c
=
 7 9 8.1 


51
Окончание таблицы
 1 −3 7 


В17. 1. A =  2 11 9 ;
 8 −6 8 


 1 3 0.8 


В18. 1.=
A  2 −5 8.4 ;
 6 −4 2.3 


3
7.2 
 0.3 4 −1.8 
8
 3
8


 


 
B =
B =
8 3.1
2 =
; c 1
0.2 1 3.14 ; c  7 

 
 0.9 0.5 2.7 
1
−6 
5
 1
9


 
2. (A–1 – BT) + AB; Bc – (AT – ABT)c ABc + ATBTc; (AB + 3AT – 2B–1)c
0 3 2


В19. 1. A =  4 6.5 7 ;
 9 4.7 1 


 13 −3 7 


=
В20.
1. A  2 12 −9 ;
 6 11 8 


 0.9 −3 4.3 
5


 
B=
c
.
−
.
;
=
6
4
5
9
8


 12 
 −3 0.17 10 
 −6 


 
2. (AT + BT)B + A–1; (Ac + BTc)c
 0.7 6 −2 
 −3 


 
B=  5
1
0 ; c =  −6 
 4 3.7 −6 
1


 
2. 2AB + ABB – ABA; Abc – (A + B)Tc
Упражнение 9. Вычислите пределы:
x2 + 2x + 5
1) lim
;
2) lim ( 2 sin ( x ) − cos ( x ) + ctg ( x ) ) ;
π
x →1
x2 + 1
x→
2
3
3) lim
x →1
(x + h)
−x
h
3
;
5) lim x  x2 + 1 − x ;

x →+∞ 
1
4) lim
x2 − 3
x →1 3 x3
+1
→ 1;
6) lim x  x2 + 1 − x  ;

x →−∞ 
n
1

8) lim  1 +  .
+
n
x →0+
n →∞ 

Упражнение 10. Задайте операторы пользователя.
1. Для перерасчета единиц электрической энергии (в киловаттчасах [кВт·ч] – в джоули [Дж], в электронвольтах [эВ] – в джоули),
если известно, что 1 кВт∙ч = 3,6·106 Дж, 1 эВ = 1,602·10–19 Дж.
2. Для перерасчета единиц магнитной индукции (в веберах на
квадратный сантиметр [Вб/см2] – в теслы [Тл], в градусах [Гс] –
в теслы), если известно, что 1 Вб/см2 = 1∙104 Тл; 1 Гс = 1∙10–4 Тл.
7) lim (1 + x ) x ;
52
3. Для перерасчета единиц мощности (в эргах в секунду [эрг/с] –
в ватты [Вт], в килограмм-сила-метрах в секунду [кгс∙м/с] – в ватты), если известно, что 1 эрг/с = 1∙10–7 Вт; 1 кгс∙м/с = 9,80665 Вт.
Контрольные вопросы
1. Назовите способы выполнения символьных операций в MathCAD .
2. Что необходимо сделать с выражением перед применением
символьных преобразований в командном режиме?
3. Перечислите символьные операции с выделенными выражениями.
4. Перечислите символьные операции с выделенными переменными.
5. Перечислите символьные операции с выделенными матрицами.
6. Перечислите символьные операции преобразования.
7. Какие параметры определяет стиль представления результатов вычислений и где он задается?
8. В каких случаях результат символьных преобразований помещается в буфер обмена?
9. Каким образом можно вычислить предел в MathСAD?
10. Для чего необходимо задание операторов пользователя?
11. Как задать оператор пользователя?
12. Как вычислить определитель матрицы?
13. Как можно транспонировать матрицу?
14. Как найти первообразную функцию?
53
4. ПРОГРАММИРОВАНИЕ В СРЕДЕ
MATHCAD
Для вставки программного кода в документы в MathCAD имеется специальная панель инструментов Programming, которую
можно вызвать на экран нажатием кнопки Programmin Toolbar на
панели Math (математика). Большинство кнопок этой панели выполнено в виде текстового представления операторов программирования, поэтому их смысл легко понятен.
Основными инструментами работы в MathCAD являются математические выражения, переменные и функции, например, mod(x, y)
возвращает остаток от деления x на y, а length возвращает количество элементов вектора v и др.). Нередко записать формулу, использующую ту или иную внутреннюю логику (например, возвращение
различных значений в зависимости от условий), в одну строку не
удается. Назначение программных модулей и заключается в определении выражений, переменных и функций в несколько строк,
часто с применением специфических программных операторов.
Программирование имеет ряд существенных преимуществ, которые делают документ более простым и читаемым:
– возможность применения циклов и условных операторов;
– простота создания функций и переменных, требующих нескольких простых шагов;
– возможность создания функций, содержащих закрытый для
остальных документов код, включая преимущества использования
локальных переменных и обработку исключительных ситуаций
(ошибок).
Программный модуль обозначается в MathCAD вертикальной
чертой, справа от которой последовательно записываются операторы языка программирования.
Разработка программы
Вставить строку программного кода в уже созданную программу
можно в любой момент с помощью кнопки Add Line (Добавить линию). Для этого следует предварительно поместить на нужное место внутри программного модуля курсор и добавить линии ввода.
Расположение линии ввода на строке приведет к появлению новой
линии с местозаполнителем перед этой строкой. Если передвинуть
вертикальную линию ввода из начала строки в конец, то новая
линия появится после строки. Если выделить не целиком строку,
54
а лишь некоторую ее часть, то это повлияет на положение в программе новой строки кода:
f(x):= “negative”
if x < 0
“positive”
if x > 0
“zero”
otherwise
Для выделения дополнительного блока внутри программы необходимо ввести новую вертикальную линию, относящуюся к этому
программному блоку. Новая вертикальная черта выделяет фрагмент программы, который относится к условию х > 0:
f(x):= “negative”
if x < 0
If x > 0
“positive”
“zero”
otherwise
Пример программы с результатами работы:
f(x):= “negative”
if x < 0
If x > 0
“positive”
“big positive” if x > 1000
“zero”
F(1) = positive
F(1100) = big positive
otherwise
В режиме выполнения программы, а это происходит при любой
попытке вычислить f(x), выполняется последовательно каждая
строка кода.
Язык программирования MathCAD позволяет создавать внутри
программных модулей локальные переменные, которые «не видны» извне, из других частей документа. Присваивание в пределах
программ, в отличие от документов MathCAD, производится с помощью оператора Local Definition (Локальное присваивание), ко55
торый вставляется нажатием кнопки с изображением стрелки ← на
панели Programming.
Ни оператор присваивания := , ни оператор вывода = в пределах
программы не применяется. Переменная z существует только внутри программы, выделенной вертикальной чертой. Из других мест
документа получить ее значение невозможно.
Пример локального присваивания в программе:
x:= 1
f(x):= z←4
z + x
f(x) = 5
Для построения сложных алгоритмов используются условные
операторы, операторы цикла, операторы возврата и др.
Условные операторы (if, otherwise)
Действие условного оператора if состоит из двух частей. Сначала проверяется логическое выражение (условие) справа от него.
Если оно истинно, выполняется выражение слева от оператора if.
Если оно ложно – ничего не происходит, а выполнение программы
продолжается переходом к ее следующей строке.
Оператор otherwise используется совместно с одним или несколькими условными операторами if и указывает на выражение,
которое будет выполняться, если ни одно из условий не оказалось
истинным.
Операторы цикла (for, while, break, continue)
В языке программирования MathCAD имеются два оператора
цикла: for и while. Первый дает возможность организовать цикл
по некоторой переменной, заставляя ее пробегать некоторый диапазон значений. Второй создает цикл с выходом из него по некоторому логическому условию. Чтобы вставить в программу модуль
оператора цикла:
1. Создайте в программном модуле новую линию.
2. Вставьте один из операторов цикла (for или while) нажатием
одноименной кнопки на панели Programming (Программирование).
3. Если выбран оператор for, то вставьте в соответствующие местозаполнители имя переменной и диапазон ее значений, а если
while – то логическое выражение, при нарушении которого должен
осуществляться выход из цикла.
56
4. В нижний части местозаполнителя введите тело цикла, т. е.
выражения, которые должны выполняться циклически.
5. При необходимости дополните программу другими строками
и введите в них нужный код.
Диапазон значений переменной в условии цикла for можно задать как с помощью диапазона ранжированной переменной, так и
с помощью вектора.
Оператор цикла for с ранжированной переменной:
x:= z←0
for i ∈ 0 ..6
z ← z + i
x = 21
Оператор цикла for с вектором:
x:= z←0
for i ∈ (1 2 3 4)
z ← z + i
x = 10
Оператор цикла while:
x:= z←0
while z < 12
z ← z + 1
x = 12
Иногда необходимо досрочно завершить цикл, т. е. не по условию в его заголовке, а в некоторой строке в теле цикла. Для этого
предназначен оператор break.
Оператор break внутри цикла for:
x:= z←0
for i ∈ 0 ..5
z ← z + i
break if i = 3
x = 6
57
Оператор break внутри цикла while:
x:= z←0
while z < 12
z ← z + 1
break if z > 5
x = 6
Для четкого обозначения границ завершения тела цикла можно
воспользоваться дополнительной строкой с оператором continue,
который вводится одноименной кнопкой панели Programming
в конец цикла.
Оператор continue в конце цикла while:
x:= z←0
while z < 12
z ← z + 1
continue
x = 12
Оператор continue в конце цикла for:
x:= z←0
for i ∈ (1 2 3 4)
z ← z + i
continue
x = 10
Возврат значения (return)
Если для определения переменной или функции применяется
программный модуль, то его строки исполняются последовательно при вычислении в документе этой переменной или функции.
Соответственно, по мере выполнения программы рассчитываемый
результат претерпевает изменения. В качестве окончательного
результата выдается последнее присвоенное значение. Чтобы подчеркнуть возврат программным модулем определенного значения,
можно взять за правило делать это в последней строке модуля.
58
Возврат значения обозначен явно в последней строке программы:
F(x):= z←x
y ← z + 2
y
F(2) = 6
Для прерывания выполнения программы в любой ее точке (например, с помощью условного оператора) и вывода некоторого значения можно использовать оператор return. В этом случае при выполнении указанного условия значение, введенное в местозаполнитель после return, возвращается в качестве результата, а никакой
другой код больше не выполняется. Вставляется в программу оператор return с помощью одноименной кнопки панели Programming
(Программирование).
Применение оператора return:
f(x):= z←x
return “zero” if x = 0
return “i” if x = i
z
f(5) = 5
f(0) = “zero”
f(i) = “i”
Перехват ошибок (on error)
Программирование в MathCAD позволяет осуществлять дополнительную обработку ошибок. Если пользователь предполагает,
что выполнение кода в каком-либо месте программного модуля способно вызвать ошибку (например, деление на ноль), то эту ошибку
можно перехватить с помощью оператора on error. Чтобы вставить
его в программу, надо в ней поместить линии ввода в нужное положение и нажать кнопку с именем оператора on error на панели
Programming (Программирование). В результате появится строка
с двумя местозаполнителями и оператором on error посередине.
В правом местозаполнителе следует ввести выражение, которое
должно выполняться в данной строке программы. В левом – выражение, которое будет выполнено, если при выполнении оператора
возникнет ошибка.
59
Пример перехвата ошибки деления на ноль:
f(r):= z←r
“user error: can’t divide by zero” on error 1/z
F(0) = “user error: can’t divide by zero”
F(–2) = –0.5
Пример использования программных модулей в MathCAD для
численных расчетов:
f(n):= return – 100 if n < 0
z←1
for i 1..n
z ← z*i
z
f(–5) = –100
f(0) = 0
f(3) = 6
Лабораторная работа к разделу 4
Упражнение 1. Решить задачи, используя возможности программирования в MathCAD (написать программы). Разработать алгоритм и написать программу в общем виде. Произвести контрольный расчет не менее чем для трех значений N, N = 1...999.
Варианты заданий к упражнению 1
В1. Дано натуральное число N.
Вычислить значение выражения
cos1 cos 2
cos N
+
+ ... +
sin1 sin 2
sin N
В2. Дано натуральное число N.
Вычислить значение выражения
В3. Дано натуральное число N.
Вычислить значение выражения
1  
1 
1 


 1 + 2  ⋅  1 + 2  ⋅ ... ⋅  1 + 2 
2 
N 
 1  

В4. Дано натуральное число N.
Вычислить значение выражения
cos1
cos 2
cos N
⋅
⋅ ... ⋅
sin N sin(N − 1)
sin1
В5. Дано натуральное число N.
Вычислить значение выражения
sin1 1 + sin2 2 + ... + sin N N
В6. Дано натуральное число N.
Вычислить значение выражения
sin1 + sin 2 + ... + sin N
60
3 + 6 + ... + 3(N − 1) + 3N
Окончание таблицы
В7. Дано натуральное число N.
Вычислить значение выражения
cos1 N + cos2 (N − 1) + ... + cos N1
В8. Дано натуральное число N.
Вычислить значение выражения
N
N2
∑
i =1 2 + N
В9. Дано натуральное число N.
Вычислить значение выражения
N
2k при k = 2
3
∏ 2k2 + 1
i =1
В10. Дано натуральное число N.
Вычислить значение выражения
N
sin i
∑ i!
i =1
В11. Дано натуральное число N.
Вычислить значение выражения
В12. Дано натуральное число N.
Вычислить значение выражения
N
N
sin i 2
−i
i =1 i !
∑ ln(i2 + 1)
∏
В13. Дано натуральное число N.
Вычислить значение выражения
1 1
1
1 + + + ... +
2! 3!
N!
В14. Дано натуральное число N.
Вычислить значение выражения sin1 + cos 2 − sin 3 + ... +
+ cos(N − 1) − sin(N)
В15. Дано натуральное число N.
Вычислить значение выражения
cos(1!) + cos(2 !) + ... + cos(N !)
В16. Дано натуральное число N.
Вычислить значение выражения
ln(1) + ln(2) + ... + ln(N)
В17. Дано натуральное число N.
Вычислить значение выражения
2
N
i
∑ sin  2 
i =1
В18. Дано натуральное число N.
Вычислить значение выражения
N
t−i
∏ i ! при t = 2.7
i =0
В19. Дано натуральное число N.
Вычислить значение выражения
t(t − 1) t(t − 1)(t − 2)
t+
+
+ ... +
2!
3!
t(t − 1)...(t − N + 1)
+
N!
В20. Дано натуральное число N.
Вычислить значение выражения
i =1
ln(i2 + 1)
i!
i =1
N
∑
Контрольные вопросы
1. Назовите способы построения циклов в MathCAD .
2. Что необходимо сделать, чтобы вставить строку программного кода?
3. Для чего используются операторы if и otherwise?
61
4. Какие действия выполняются операторами for и while?
5. Как использовать операторы break и continue?
6. Возможно ли вывести свое сообщение об ошибке?
7. Как запрограммировать вывод сообщения об ошибке?
8. В каких случаях целесообразно использовать оператор return?
9. Что означает local definition?
10. Где работают переменные, определенные как local definition?
11. Содержание панели инструментов Programming?
12. Как задать место ввода программного кода?
13. Как определить вложенные операторы?
14. Как осуществить перехват ошибок?
15. Что выполняет оператор if, если условие не выполнено?
62
5. РЕШЕНИЕ ЗАДАЧ ЛИНЕЙНОГО ПРОГРАММИРОВАНИЯ
В СРЕДЕ MATHCAD
Наиболее известными и эффективными методами решения
математических моделей являются методы линейного программирования, когда целевая функция и все ограничения являются
линейными функциями. Для решения математических моделей
других типов предназначены методы целочисленного программирования (если все переменные должны принимать только целочисленные значения), динамического программирования (где исходную задачу можно разбить на меньшие подзадачи) и нелинейного программирования (когда целевая функция является нелинейной) [6].
Практически все методы не позволяют получить решение в замкнутой форме (в виде формул), а порождают вычислительные алгоритмы, которые являются итерационными по своей природе.
Это означает, что задача решается последовательно (итерационно),
когда на каждом шаге (итерации) получаем решения, постепенно
сходящиеся к оптимальному. Итерационная природа алгоритмов
обычно приводит к объемным однотипным вычислениям. В этом
и заключается причина того, что эти алгоритмы разрабатываются
для реализации с помощью вычислительной техники.
На простом примере задачи о ресурсах с тремя переменными показаны основные элементы модели линейного программирования.
Компания «Электра» производит кабель для внутренних и наружных работ на основе сырья трех типов: М1 М2 и М3. Основные
данные для задачи представлены в таблице.
Расход сырья на тонну кабеля, т
Сырье
Максимально возДля наружных Для внутренних можный ежедневный расход сырья, т
работ
работ
М1
4
5
7
М2
7
4
8
М3
9
8
9
Доход на тонну
кабеля, тыс. руб.
2
3
–
Компания хочет определить оптимальное соотношение между
видами выпускаемой продукции для максимизации общего ежедневного дохода.
63
Модель задачи о ресурсах
Задача (модель) линейного программирования содержит три основных элемента:
1) переменные, которые следует определить;
2) целевую функцию, подлежащую оптимизации;
3) ограничения, которым должны удовлетворять переменные.
Определение переменных – первый шаг в создании модели.
В примере необходимо определить ежедневные объемы производства кабеля для внутренних и наружных работ. Обозначим эти объемы как переменные модели:
х1 – ежедневный объем производства кабеля для наружных работ;
х2 – ежедневный объем производства кабеля для внутренних работ.
Используя эти переменные, далее строим целевую функцию.
Логично предположить, что целевая функция как суммарный ежедневный доход должна возрастать при увеличении ежедневных
объемов производства кабеля. Обозначим эту функцию через F, и
по условиям задачи F(х) = 2х1 + 3х2. В соответствии с целями компании получаем задачу: максимизировать F(х) = 2х1 + 3х2.
Итак, остался не определенным последний элемент модели –
условия (ограничения), которые должны учитывать возможности
ежедневного потребления сырья и ограниченность спроса на готовую продукцию. Ограничения на сырье можно записать следующим образом:
– используемый объем сырья М1 ⇒ 4х1 + 5х2;
– используемый объем сырья М2 ⇒ 7х1 + 4х2;
– используемый объем сырья М3 ⇒ 9х1 + 8х2.
Поскольку ежедневный расход сырья M1, М2 и М3 ограничен
соответственно семью, восемью и девятью тоннами, получаем следующие ограничения:
4х1 + 5х2 < 7 (сырье M1);
7х1 + 4х2 < 8 (сырье М2);
9х1 + 8х2 < 9 (сырье М3).
Еще одно неявное ограничение состоит в том, что переменные
х1 и х2 должны быть неотрицательными. Таким образом, к сформулированным выше ограничениям необходимо добавить условие
неотрицательности переменных: х1 > 0, х2 > 0.
Окончательно задача будет записана следующим образом: максимизировать F(х1, х2) = 2х1 + 3х2 при выполнении ограничений
64
4х1 + 5х2 < 7; 7х1 + 4х2 < 8;
9х1 + 8х2 < 9; х1 > = 0, х2 > = 0.
Любое решение, удовлетворяющее ограничениям модели, является допустимым.
Необходимо найти оптимальное допустимое решение, обеспечивающее максимум целевой функции.
В общем виде задача в среде MathCAD записывается в следующем формате (рис. 14).
Решение задачи в среде MathCAD
Рассмотрим решение задачи в среде MathCAD (рис. 15).
Рис. 14. Математическая модель задачи линейного
программирования в среде MathCAD
65
Рис. 15. Компьютерное решение задачи линейного
программирования в среде MathCAD
Лабораторная работа к разделу 5
1. На основе данных, заданных в таблице, построить словесную
модель работы предприятия.
2. Определить переменные, целевую функцию, подлежащую оптимизации, и ограничения, которым должны удовлетворять переменные.
3. Построить математическую модель задачи.
66
4. Решить задачу линейного программирования, используя среду MathCAD.
Варианты заданий к лабораторной работе 2
Сырье
Для наружных
работ
Для внутренних
работ
Максимально
возможный
ежедневный расход
сырья, т
М1
4
5
16
М2
7
4
14
М3
9
8
24
Доход на тонну
кабеля, тыс. руб.
20
30
–
В1
В2
Расход сырья на тонну кабеля, т
Расход сырья на тонну кабеля, т
Для наружных
работ
Для внутренних
работ
Максимально возможный ежедневный
расход сырья, т
М1
0.4
0.3
7
М2
0.7
0.5
8
М3
0.9
0.8
10
Доход на тонну
кабеля, тыс. руб.
5
3
–
Сырье
В3
Расход сырья на тонну кабеля, т
Для наружных
работ
Для внутренних
работ
Максимально возможный ежедневный
расход сырья, т
М1
40
20
110
М2
70
40
140
М3
20
10
90
Доход на тонну
кабеля, тыс. руб.
50
30
–
Сырье
В4
Расход сырья на тонну кабеля, т
Максимально возможный ежедневный
расход сырья, т
Сырье
Для наружных
работ
Для внутренних
работ
М1
7
5
7
М2
7
4
9
М3
9
8
12
Доход на тонну
кабеля, тыс. руб.
25
13
–
67
Продолжение таблицы
В5
Расход сырья на тонну кабеля, т
Для наружных
работ
Для внутренних
работ
Максимально возможный ежедневный
расход сырья, т
М1
0.4
0.5
7
М2
0.7
0.4
8
М3
0.5
0.8
9
Доход на тонну
кабеля, тыс. руб.
4
3
–
Сырье
В6
Расход сырья на тонну кабеля, т
Для наружных
работ
Для внутренних
работ
Максимально возможный ежедневный
расход сырья, т
М1
4
2
12
М2
7
4
8
М3
9
5
9
Доход на тонну
кабеля, тыс. руб.
20
15
–
Сырье
В7
Расход сырья на тонну кабеля, т
Максимально возможДля внутренних ный ежедневный расход
сырья, т
работ
Сырье
Для наружных
работ
М1
14
5
28
М2
17
14
80
М3
9
7
90
Доход на тонну
кабеля, тыс. руб.
35
23
–
В8
Расход сырья на тонну кабеля, т
Максимально возможДля внутренних ный ежедневный расход
сырья, т
работ
Сырье
Для наружных
работ
М1
4
3
12
М2
7
6
21
М3
6
4
36
Доход на тонну
кабеля, тыс. руб.
12
8
–
68
Окончание таблицы
В9
Расход сырья на тонну кабеля, т
Максимально возможДля внутренних ный ежедневный расход
сырья, т
работ
Сырье
Для наружных
работ
М1
4
3
12
М2
8
4
8
М3
9
5
27
Доход на тонну
кабеля, тыс. руб.
25
14
В10
Расход сырья на тонну кабеля, т
Сырье
Для наружных
работ
Для внутренних
работ
Максимально возможный ежедневный расход
сырья, т
М1
14
15
30
М2
9
7
27
М3
12
10
30
Доход на тонну
кабеля, тыс. руб.
52
30
–
69
6. МОДЕЛЬ ТРАНСПОРТНОЙ ЗАДАЧИ
Решение задачи в среде MathCAD
Автомобильная компания Лахта Auto имеет три завода – в Тихвине, Кингисеппе и Киришах и два распределительных центра –
в Санкт-Петербурге и Москве. Объемы производства заводов компании в следующем квартале составят соответственно 1000, 1500
и 1200 автомобилей. Ежеквартальная потребность распределительных центров составляет 2300 в Москве и 1400 автомобилей в СанктПетербурге. Расстояния между заводами и распределительными
центрами приведены в табл. 6.1.
Таблица 6.1
Расстояние, км, до
Пункт отгрузки
Санкт-Петербурга
Москвы
Тихвин
1000
2690
Кингисепп
1250
1350
Кириши
1275
850
Услуги транспортной компании за перевозку одного автомобиля
по каждому маршруту приведены в табл. 6.2.
Таблица 6.2
Расстояние, км, до
Пункт отгрузки
Санкт-Петербурга
Москвы
Тихвин
80
215
Кингисепп
100
108
Кириши
102
68
1. Построим математическую модель. Сформулируем задачу линейного программирования в общем виде:
xij – груз, перевезенный от производителя i к потребителю j;
cij – стоимость транспортировки от производителя i к потребителю j;
ai – объем грузов в пункте отправления;
bj – объем грузов в пункте назначения.
2. Минимизировать
общую стоимость перевозки:
n,m
∑ xij ⋅ cij
i,j =1
70
ïðè i = 1..n, j = 1..m
при условии
n
m
∑ ai = ∑ bj , xij ≥ 0,
i = 1..n, j = 1..m.
=i 1=j 1
Основываясь на данных из таблиц, сформулируем следующую
задачу линейного программирования.
Математическая модель имеет вид
Z = 80х11 + 215х12 + 100х21 + 108х22 + 102х31 + 68х32
(целевая функция).
Рис. 16. Математическая модель транспортной задачи
в среде MathCAD
71
Рис. 17. Решение транспортной задачи в среде MathCAD
Опишем ограничения производства:
х11 + х12 = 1000 (в Тихвине);
х21 + х22 = 1500 (в Кингисеппе);
х31 + х32 = 1200 (в Киришах).
Ограничения реализующих компаний:
х12 + х22 + х32 = 2300 (в Москве);
72
х11 + х21 + х31 = 1400 (в СПб).
Зафиксируем неотрицательность объема произведенной продукции:
хij ≥ 0 при i = 1, 2, 3, j = 1, 2.
Эти ограничения выражены в виде равенств, поскольку общий
объем произведенных автомобилей (1000 + 1500 + 1200 = 3700) равен
суммарному спросу распределительных центров (2300 + 1400 = 3700)
(задача сбалансирована).
Специфическая структура ограничений позволяет решить эту
задачу с помощью так называемой транспортной таблицы. Когда
суммарный объем предложений (грузов, имеющихся в пунктах отправления) не равен общему объему спроса на товары (грузам, запрашиваемым пунктами получения), транспортная модель называется несбалансированной. Для того чтобы несбалансированную
транспортную задачу сделать сбалансированной, будем вводить
фиктивные пункты назначения или отправления. Выполнение баланса транспортной задачи необходимо для того, чтобы иметь возможность применить алгоритм решения, построенный на использовании транспортных таблиц.
В общем виде транспортная задача в среде MathCAD записывается в следующей форме (рис. 16).
Решение задачи представлено на рис. 17.
Лабораторная работа к разделу 6
Три электрогенерирующие станции мощностью 25, 40 и
30 млн кВт/ч поставляют электроэнергию в три города. Максимальная потребность в электроэнергии этих городов оценивается
в 30, 35 и 25 млн кВт/ч. Цены за 1 млн кВт/ч электроэнергии в данных городах показаны в таблице.
Станция
Цена 1 млн кВт/ч в городе
1
2
3
1
600
700
400
2
320
300
350
3
500
480
450
В августе на 20 % возрастает потребность в электроэнергии
в каждом из трех городов. Недостаток электроэнергии города могут
восполнить из другой электросети по цене 1000 руб. за 1 млн кВт/ч.
Третий город не может подключиться к альтернативной электро73
сети. Электрогенерирующие станции планируют разработать наиболее экономичный план распределения электроэнергии и восполнения ее недостатка в августе.
1. Сформулировать эту задачу в виде транспортной модели.
2. Решить модель задачи в среде MathCAD и определить оптимальный план распределения электроэнергии для штатной и аварийной ситуации.
3. Определить стоимость дополнительной электроэнергии для
каждого из трех городов.
Варианты заданий
Порядковый номер
станции (города)
Генерирование
электроэнергии
станцией,
млн кВт/ч
Потребление электроэнергии городом,
млн кВт/ч
Не подключить
город
В1. Потребность возрастает на 20 %
1
125
130
2
140
135
130
125
3

В2. Потребность возрастает на 15 %
1
40
30
2
25
35
3
30
25

В3. Потребность возрастает на 25 %
1
45
50
2
40
25
3
50
55

В4. Потребность возрастает на 10 %
1
80
75
2
64
70
60
45
3

В5. Потребность возрастает на 12 %
1
125
130
2
140
135
3
130
125

В6. Потребность возрастает на 15 %
1
74
40
30

Продолжение таблицы
Порядковый номер
станции (города)
Генерирование
электроэнергии
станцией,
млн кВт/ч
Потребление электроэнергии городом,
млн кВт/ч
2
25
35
30
25
3
Не подключить
город
В7. Потребность возрастает на 27 %
1
45
50
2
40
25
3
50
55

В8. Потребность возрастает на 10 %
1
25
30
2
40
35
30
25
3

В9. Потребность возрастает на 5 %
1
45
50


2
40
25
3
50
55
В10. Потребность возрастает на 20 %
1
80
75
2
64
70
60
45
3

В11. Потребность возрастает на 12 %
1
25
30
2
40
35
3
30
25

В12. Потребность возрастает на 17 %
1
40
30
2
25
35

30
25

3
В13. Потребность возрастает на 25 %
1
45
50
2
40
25
3
50
55

75
Окончание таблицы
Порядковый номер
станции (города)
Генерирование
электроэнергии
станцией,
млн кВт/ч
Потребление электроэнергии городом,
млн кВт/ч
Не подключить
город
В14. Потребность возрастает на 10 %
1
80
75
2
64
70
60
45
3

В15. Потребность возрастает на 7 %
76
1
25
30
2
40
35
3
30
25

7. РАСЧЕТ ЦЕПИ ПОСТОЯННОГО ТОКА
В СРЕДЕ MATHCAD
Расчет цепи постоянного тока по уравнениям,
составленным по законам Кирхгофа
Определим, что такое узлы и ветви в электрической цепи. Точки,
где сходятся несколько проводников, называются узлами, участки
цепи, соединяющие два соседних узла, называются ветвями.
Первый закон Кирхгофа.
Формулировка 1: Сумма всех токов, втекающих в узел, равна
сумме всех токов, вытекающих из узла.
Формулировка 2: Алгебраическая сумма всех токов в узле равна
нулю.
Второй закон Кирхгофа.
Формулировка: Алгебраическая сумма ЭДС, действующих в
замкнутом контуре, равна алгебраической сумме падений напряжения на всех резистивных элементах в этом контуре.
Здесь термин «алгебраическая сумма» означает, что как величина ЭДС, так и величина падения напряжения на элементах может
быть как со знаком «+», так и со знаком «–». При этом определить
знак можно по следующему алгоритму:
1. Выбираем направление обхода контура (два варианта: по часовой или против).
2. Произвольно выбираем направление токов через элементы цепи.
3. Расставляем знаки для ЭДС и напряжений, падающих на элементах, по правилам:
– ЭДС, создающие ток в контуре, направление которого совпадает с направление обхода контура, записываются со знаком «+», в
противном случае ЭДС записываются со знаком «–»;
– напряжения, падающие на элементах цепи, записываются со
знаком «+», если ток, протекающий через эти элементы совпадает
по направлению с обходом контура, в противном случае напряжения записываются со знаком «–».
На рис. 18 представлена цепь постоянного тока. Все параметры
такой цепи можно рассчитать в среде пакета MathCAD, используя
вычисления в матричной форме.
Общее количество уравнений, составляемых для цепи по первому и второму законам Кирхгофа, равно nв – числу ветвей в цепи.
Количество уравнений n1, составляемых для цепи по первому
закону Кирхгофа, на единицу меньше числа узлов цепи: n1 = nу – 1,
где nу – число узлов в цепи.
77
I6
↑
R6
E6
J1
III
«
R1
E1
I2
↑
R2
I1
I5
R5
I3
«
R7
II
I
R3
J3
R4
I4
Рис. 18. Цепь постоянного тока
Количество уравнений n2, составляемых для цепи по второму
закону Кирхгофа: n2 = nв – n1 = nв – nу + 1.
Если цепь содержит ветви с идеальным источником тока, то
общее количество уравнений уменьшается на число таких ветвей:
n2 = nв – nу + 1 – ni, где ni – число ветвей с идеальными источниками тока.
Рассмотрим цепь, представленную на рис. 18 [7].
Данная цепь содержит пять узлов и девять ветвей, из них две
ветви с идеальными источниками тока. Следовательно, для описания цепи необходимо составить четыре уравнения по первому закону Кирхгофа и три по второму закону Кирхгофа.
Уравнения по первому закону Кирхгофа для 1-, 2-, 3- и 5-го узлов и для трех контуров, указанных на рис. 18, запишутся в виде
системы уравнений
I1 – J1 + I5 + I6 = 0;
–I2 – I7 + I1 + J1 = 0;
–I3 – J3 – I6 + I2 = 0;
–I4 + J3 + I3 = 0; (7.1)
R1 · I1 + R5 · I5 + R1 · I1 = E1;
R2 · I2 + R3 · I3 + R4 · I4 – R7 · I7 = 0;
R1 · I1 + R2 · I2 + R6 · I6 = E1 + E6.
Зададим численные значения параметров цепи и решим полученные уравнения в MathCAD. Процесс решения с комментариями
приведен на рис. 19.
78
Рис. 19. Расчет цепи постоянного тока в среде MathCAD
В MathCAD строки и столбцы матриц нумеруются по умолчанию с 0, что в нашем случае неудобно. Для получения нумерации
с 1 специальной переменной ORIGIN присваивают значение 1.
В меню Math выбрать строку Options или задать
ORIGIN:= 1
Присвоим численные значения идентификаторам сопротивлений и источников напряжения и тока.
Зададим шаблоны матриц А и В и введем элементы матриц в соответствии с системой уравнений (7.1).
Вывод численных значений элементов матриц делается только
для контроля.
79
Процесс вычисления неизвестных токов и размещения их в матрице-столбце X происходит при умножении обратной матрицы
A–1 на матрицу В:
X:= A–1 · B
Результат визуализируется при выполнении операции XТ =
Значения всех токов выводятся в виде матрицы столбца.
Проверку правильности вычислений проводим перемножением
матриц А и X. В результате должна получиться матрица-столбец B.
Решение возможно провести с помощью функции X:= lsolve( – , – )
в категории функций Solving:
lsolve(А, b)
Возвращается вектор решения x такой, что Ах = b.
Аргументы:
А – квадратная, не сингулярная матрица;
b – вектор, имеющий столько же рядов, сколько рядов в матрице А.
Когда в задаче необходимо найти только значения токов, метод,
основанный на описании цепи по законам Кирхгофа, есть кратчайший путь решения такой задачи.
Для более детального исследования цепи можно применять методы контурных токов и узловых потенциалов в матричной форме.
Расчет цепи постоянного тока методами
контурных токов
Матричную форму метода контурных токов и метода узловых потенциалов рассмотрим на примере цепи, представленной на рис. 18.
На рис. 20 изображен граф этой цепи, т. е. изображение цепи, на котором ветви цепи заменены линиями. Ветви графа имеют направления в соответствии с направлением токов, принятым на схеме рис. 18.
Нумерация ветвей, контуров и узлов также соответствует исходной
схеме цепи. Отметим, что ветви с источниками тока на графе не изображаются.
Для полученного графа составим две топологические матрицы:
матрицу соединений A и контурную матрицу B. Число строк матрицы A на единицу меньше числа узлов, а число столбцов равно числу
ветвей. В рассматриваемом примере матрица имеет четыре строки
и семь столбцов. Элементы матрицы ai,j принимают значения 0, 1
и –1:
ai,j = 1, если j-я ветвь принадлежит i-му узлу и направлена от
узла;
80
6
III
1
1
5
I
2
2
3
II
7
3
4
4
Рис. 20. Граф цепи
ai,j = –1, если j-я ветвь принадлежит i-му узлу и направлена
к узлу;
ai,j = 0, если j-я ветвь не принадлежит i-му узлу.
Сформированная таким образом для 1-, 2-, 3- и 4-го узлов матрица A будет иметь вид
1
0
0
0
–1
–1
0
A= –1
1
0
0
0
0
1
0
–1
1
0
0
1
0
0
0
0
–1
1
0
–1
.
Число строк матрицы В соответствует количеству главных контуров, а число столбцов равно числу ветвей цепи. В рассматриваемом примере матрица имеет три строки и семь столбцов. Элементы
матрицы bi,j принимают значения 0, 1 и –1:
bi,j = 1, если j-я ветвь принадлежит i-му контуру и совпадает по
направлению с направлением обхода контура;
bi,j = –1, если j-я ветвь принадлежит i-му контуру и противоположена направлению обхода контура;
bi,j = 0, если j-я ветвь не принадлежит i-му контуру.
Матрица B, сформированная для 1-, 2- и 3-го контуров, будет
иметь вид
1 0 0 0 1 0 1 


B  0 1 1 1 0 0 −1 .
=
1 1 0 0 0 1 0 


81
J
I-J
I
R
E
UR
UB
Рис. 21. Обобщенная ветвь электрической цепи: I – ток в обобщенной
ветви; I-J – ток в сопротивлении; UR – напряжение на сопротивлении;
Uв – напряжение на обобщенной ветви
Обобщенная ветвь электрической цепи может быть представлена последовательным соединением сопротивления и источника
ЭДС с включенным параллельно им источником тока. Обобщенная
ветвь представлена на рис. 21. В некоторых случаях в обобщенной
ветви могут отсутствовать источник ЭДС, источник тока или оба
источника одновременно.
Поскольку каждая ветвь цепи может быть представлена обобщенной, формируют матрицу-столбец источников ЭДС E, матрицустолбец источников тока J и квадратную диагональную матрицу
сопротивлений ветвей R. Размерности этих матриц равны количеству ветвей цепи. Для цепи, представленной на рис. 18, размерность матриц будет равна 7:
 J1 
 
 0 
 J3 
 
0 ; R
=
J =
 0 
 
 0 
 0 
 
 R1

 0
 0

 0
 0

 0
 0

0
R2
0
0
0
0
0
0
0
R3
0
0
0
0
0
0
0
R4
0
0
0
0
0
0
0
R5
0
0
0
0 
 E1 

 
0
0 
 0 
 0 
0
0 

 
0 =
0 ; E  0 .
 0 
0
0 

 
R6 0 
 E6 

 0 
0 R7 
 
Расчет цепи методом контурных токов в среде MathCAD показан
на рис. 22.
В матричной форме первый закон Кирхгофа определяется выражением A · I = 0, второй закон Кирхгофа в матричной форме B · U = 0,
где I и U – матрицы-столбцы токов и напряжений на ветвях.
82
Рис. 22. Нахождение токов в цепи методом контурных токов
Токи в ветвях связаны с контурными токами выражением
I = BT · IK, где BT – транспонированная контурная матрица; IK –
матрица-столбец контурных токов.
Напряжения на ветвях цепи связаны с узловыми потенциалами
выражением U = AT · Ф, где AT – транспонированная узловая ма83
трица; Ф– матрица-столбец потенциалов узлов цепи по отношению
к базисному узлу. Матричная форма уравнений цепи по методу
контурных токов будет иметь вид B · R · BT · IK = B · E + B · R · J.
Расчет цепи постоянного тока методом
узловых потенциалов в матричной форме
Матричная форма уравнений цепи по методу узловых потенциалов запишется как A · G · AT · Ф = – A · G · E – A · G, где G – диа-
Рис. 23. Нахождение токов в цепи методом узловых потенциалов
84
гональная матрица, элементами которой являются проводимости
ветвей.
При вводе значений элементов матриц будет достаточно ввести
значения, отличные от 0, и задать значение последнего элемента,
если он 0. Остальные элементы каждого вектора-столбца принимаются равными нулю по умолчанию.
Формируем узловую матрицу A, контурную матрицу B, из матрицы R формируем диагональную матрицу RD и осуществляем ее
вывод.
При расчете цепи методом узловых потенциалов (рис. 23) из
матрицы RD формируем диагональную матрицу G, диагональными элементами которой являются проводимости ветвей. Решая
матричное уравнение цепи по методу узловых потенциалов, определяем потенциалы всех узлов по отношению к базисному узлу –
матрице Е – столбцу Ф. Рассчитываем напряжения на всех ветвях
цепи U и токи в сопротивлениях цепи IR. Важно, что, сравнивая
результаты решения на рис. 22 и 23, убеждаемся в их совпадении.
Лабораторная работа к разделу 7
Упражнение 1. Опишите заданный вариант цепи.
Задайте численные значения параметров цепи, укажите направления в ветвях и контурах.
Решите полученные уравнения в среде MathCAD. Произведите
расчет параметров цепи постоянного тока:
– используя уравнения, составленные по законам Кирхгофа;
– методом контурных токов;
– методом узловых потенциалов в матричной форме.
Параметры цепи заданы в таблице: R [Ом], J [А], Е [В].
R1
R2
R3
R4
R5
J1
J2
Е1
Е2
2
2
3
4
1
1.5
2
4.5
2.8
85
Варианты схем для лабораторной работы 7
В1.
В2.
R1
»
R2
J2
R4
→
R2
R4
E2
В3.
R4
R4
R2
R2
В4.
R4
R2
R6
→
→
E1
R2
E2
R4
R4
R8
R8
R4
R3
В5.
В6.
R4
R4
R2
R2
»
→
R1
R4
86
J2
E1
R2
R4
R4
R4
Продолжение таблицы
В7.
В8.
J2
R4
»
→
R3
E2
R4
R2
R4
R2
В9.
R4
R2
R4
В10.
R2
»
R2
J1
R3
→
R5
R3
E4
R4
R2
R2
R2
В11.
В12.
R3
R2
R2
R2
E5
R3
R3
«
R4
R3
R4
J1
87
Окончание таблицы
В13.
В14.
R4
E4
↑
J1
R4
R3
R2
В15.
R4
В16.
R2
R3
J1
R3
«
R4
↑
R2
R1
E2
R4
В17.
R4
В18.
R2
R4
J2
«
R4
R4
«
R3
88
R2
R4
R4
R2
R2
R2
«
R2
R3
J1
R2
R2
Контрольные вопросы
1. Чему равно общее количество уравнений, составляемых для
цепи по первому и второму законам Кирхгофа?
2. Если в задаче необходимо найти только токи, то какой метод
позволит это сделать кратчайшим путем?
3. В MathCAD строки и столбцы матриц нумеруются по умолчанию с 0 или с 1?
4. Что определяет переменная ORIGIN?
5. Как изменить номер первого элемента строки или столбца
в матрице?
6. Каков физический смысл значений, записанных в матрицы A
и B?
7. Можно ли решить систему алгебраических уравнений с помощью специальной функции из категории функций Solving?
8. Каким выражением в матричной форме определяется первый
закон Кирхгофа?
9. Какая функция позволяет сформировать диагональную матрицу RD из матрицы R?
10. Если в векторе-столбце присвоить численные значения, отличные от нуля, и обозначить значение последнего элемента, если
он равен нулю, то остальным элементам MathCAD по умолчанию
присвоит численные значения, равные нулю, или нет?
89
Библиографический список
1. Дьяконов В. П. MathCAD 11/12/13 в математике: справочник. – М.: Горячая линия-Телеком, 2007. – 958 с.
2. Ханова А. А., Лаптев В. В. Введение в систему MathCAD:
метод. пособие. – Астрахань: Астраханский государственный
технический университет, 2001. http://mschool.kubsu.ru/npv/
chislmetod/mathcad2.rar
3. Горчакова М. А., Сирант О. В. Методические указания к курсовой работе по курсу «Информатика». – Самара: Поволжская государственная академия телекоммуникаций, 2007. http://www.
pandia.ru/text/78/382/1481.php
4. Мамонова Т. Е. Методические указания по выполнению лабораторных работ по курсу «Информационные технологии». – Томск:
Томский политехнический университет, 2011. http://rushkolnik.
ru/docs/114/index-7495339-4.html
5. Кирьянов Д. В. MathCAD 13. – СПб.: БХВ-Петербург, 2006.
6. Хемди А. Таха. Введение в исследование операций. – М.:
Вильямс, 2005. – 893 с.
7. Коваленко В. М., Свито И. Л. Применение MathCAD в электротехнических расчетах: метод. пособие к выполнению контр. заданий. – Минск: БГУИР, 2008. bsuir.by›m/12_108786_1_63466.pdf
90
СОДЕРЖАНИЕ
Предисловие..................................................................................
Пакет прикладных программ MathCAD........................................
1. ОСНОВЫ РАБОТЫ С MATHCAD...................................................
Математические выражения.......................................................
Текстовые фрагменты................................................................
Графические области.................................................................
Лабораторная работа к разделу 1.................................................
Контрольные вопросы................................................................
2. РЕШЕНИЕ УРАВНЕНИЙ СРЕДСТВАМИ MATHCAD.......................
Численное решение нелинейного уравнения..................................
Отсутствие сходимости функции root...........................................
Рекомендации по использованию функции root.............................
Нахождение корней полинома.....................................................
Решение систем уравнений.........................................................
Find(z1, z2, . . .)..........................................................................
Решение матричных уравнений...................................................
Приближенные решения............................................................
Символьные решения уравнений.................................................
Лабораторная работа к разделу 2.................................................
Контрольные вопросы................................................................
3. СИМВОЛЬНЫЕ ВЫЧИСЛЕНИЯ В MATHCAD................................
Выделение выражения для символьных вычислений .....................
Стиль представления результатов вычислений..............................
Операторы вычисления пределов функций....................................
Создание операторов пользователя...............................................
Лабораторная работа к разделу 3.................................................
Контрольные вопросы................................................................
4. ПРОГРАММИРОВАНИЕ В СРЕДЕ MATHCAD.................................
Разработка программы...............................................................
Лабораторная работа к разделу 4.................................................
Контрольные вопросы................................................................
5. РЕШЕНИЕ ЗАДАЧ ЛИНЕЙНОГО ПРОГРАММИРОВАНИЯ В СРЕДЕ
MATHCAD.....................................................................................
Модель задачи о ресурсах...........................................................
Решение задачи в среде MathCAD................................................
Лабораторная работа к разделу 5.................................................
6. МОДЕЛЬ ТРАНСПОРТНОЙ ЗАДАЧИ............................................
Решение задачи в среде MathCAD................................................
Лабораторная работа к разделу 6.................................................
7. РАСЧЕТ ЦЕПИ ПОСТОЯННОГО ТОКА В СРЕДЕ MATHCAD.............
Расчет цепи постоянного тока по уравнениям,
составленным по законам Кирхгофа.....................................
Расчет цепи постоянного тока методами контурных токов...............
Расчет цепи постоянного тока методом узловых
потенциалов в матричной форме..........................................
Лабораторная работа к разделу 7.................................................
Контрольные вопросы................................................................
Библиографический список .............................................................
3
3
5
5
8
9
13
20
21
21
22
24
25
25
25
27
28
29
30
37
39
39
41
43
45
47
53
54
54
60
61
63
64
65
66
70
70
73
77
77
80
84
85
89
90
91
Учебное издание
Елтышева Ирина Владимировна
РЕШЕНИЕ ИНЖЕНЕРНЫХ ЗАДАЧ
В СРЕДЕ MATHCAD
Учебно-методическое пособие
Редактро А. Г. Ларионова
Компьютерная верстка Ю. В. Умницына
Сдано в набор 21.09.17. Подписано к печати 22.12.17. Формат 60 × 84 1/16.
Усл. печ. л. 5,4. Уч.-изд. л. 5,8.
Тираж 50 экз. Заказ № 356.
Редакционно-издательский центр ГУАП
190000, Санкт-Петербург, Б. Морская ул., 67
Документ
Категория
Без категории
Просмотров
7
Размер файла
3 388 Кб
Теги
eltysheva
1/--страниц
Пожаловаться на содержимое документа