
- •Высокоуровневые методы информатики и программирования: автоматизированная математическая система mathcad
- •351400 “Прикладная информатика (в экономике)”,
- •060800 “Экономика и управление на предприятии”
- •Введение
- •1. Простейшие вычисления и документы
- •1. Ознакомление с системой, ввод текста
- •Панель инструментов
- •2. Математические выражения
- •3. Использование функций
- •4. Дискретные переменные, суммы, произведения
- •5. Вычисление пределов
- •6. Действия с комплексными числами
- •2. Двумерная графика
- •1. Декартовы графики
- •2. Графики в полярной системе координат
- •3. Определение координат точек пересечения графиков по двумерному графику.
- •3. Трехмерная (3d) графика
- •1. Построение поверхностей
- •2. Дополнительные возможности построения поверхностей.
- •Пространственные кривые.
- •4. Алгебраические уравнения, оптимизация
- •1. Численное решение нелинейного уравнения с помощью функции root
- •2. Определение корней полинома
- •3.Решение систем нелинейных уравнений
- •4. Определение точек экстремума функций одной и двух переменных
- •5. Математический анализ, символьные вычисления
- •Вычисление определенных интегралов
- •2. Вычисление неопределенных интегралов
- •3. Дифференцирование
- •4. Символьные вычисления
- •6. Дифференциальные уравнения
- •1. Функция rkfixed
- •2. Функция odesolve
- •7. Линейная алгебра, матрицы
- •1. Матричные8 уравнения
- •2. Действия с матрицами
- •8. Линейное программирование
- •1. Транспортная задача
- •Минимальные затраты на перевозок
- •2. Графический анализ задач оптимизации с двумя переменными
- •9. Программирование в среде MathCad
- •Приложение
- •1. Системные переменные
- •2. Встроенные операторы
- •3. Встроенные функции Тригонометрические функции
- •Рекомендуемая литература
- •351400 “Прикладная информатика (в экономике)”,
- •060800 “Экономика и управление на предприятии”
- •4 28015. Чебоксары, ул. Урукова, 17
2. Графический анализ задач оптимизации с двумя переменными
При числе переменных, равном двум и трем система MathCAD позволяет дать наглядную графическую интерпретацию задачи и ее решения. Рассмотрим в качестве примера задачу из [4]. Найти максимум целевой функции
(5)
при ограничениях
,
,
(6)
,
,
(7)
В документе MathCAD дается графический анализ задачи (рис. 35).
Задача оптимизации
Решение задачи
Графическая интерпретация задачи:
Границы области
Уравнение целевoй функции для оптимального решения
На рис. 35 построены графики прямых, ограничивающих искомую область (6)
,
,
,
показанных толстыми линиями и прямой, соответствующую максимальной прибыли
,
показанной тонкой линией. В соответствии с общими свойствами задачи [4] решение (отмеченное кружком) находится на границе допустимой области.
Рис.35. Графический анализ задачи оптимизации
Задания.
8.2.1. Решить оптимизационные задачи с двумя переменными из табл. 14.
Таблица 14
№ |
Целевая функция |
Максимум или минимум |
Ограничения |
1 |
|
максимум |
|
2 |
|
минимум |
|
3 |
|
максимум |
|
4 |
|
максимум |
|
5 |
|
минимум |
|
6 |
|
минимум |
|
7 |
|
минимум |
|
8 |
|
минимум |
|
9 |
|
минимум |
|
10 |
|
максимум |
|
8.2.2. Решить оптимизационные задачи с тремя переменными (21.1, 21.4,-21.6 и другие) из учебника [4]. Сделать графический анализ построить плоскости, ограничивающие допустимую область.
8.2.3. Решить оптимизационные задачи из [4,9].
9. Программирование в среде MathCad
В системе MathCAD 2000 имеется возможность создания программных блоков (модулей). В тексте документа они выделяются жирной вертикальной чертой. Модуль может вести себя как безымянная функция без параметров, но возвращающая результат и как функция с именем и параметрами. Средства программирования сосредоточены в палитре программных элементов Programming (Программирование) (рис. 2).
На рис. 36 показан пример использования инструкций if и otherwise для построения сложного выражения – функции, определяемой несколькими формулами при различных значениях аргумента. Модуль вводится при выборе элемента палитры Add Line, который создает и при необходимости удлиняет (с добавлением мест ввода) жирную вертикальную черту. Справа от нее в местах ввода задается запись инструкций. Ранжированные переменные MathCAD не обеспечивают полноценной замены циклов, поэтому в системе имеются инструкция for для записи циклов с заданным числом повторений и инструкция while для организации циклов, действующих до тех пор, пока выполняется некоторое условие. Примеры применения этих инструкций для вычисления факториала приведены на рис. 37.
Рис. 36. Использование инструкций if и otherwise
Рис. 37. Программирование циклов в MathCAD
Приведем полный набор инструкций для создания программных модулей:
Add Line – выполняет функции расширенного программного блока. Расширение фиксируется удлинением вертикальной черты блоков или их древовидным расширением. Благодаря этому, в принципе, можно создавать сколь угодно большие программы;
← – символ локального присвоения (в теле модуля);
if – условная инструкция, которая задается следующим образом:
Выражение If условие
Если условие выполняется, то возвращается значение выражения.
for – инструкция задания цикла с фиксированным числом повторений. Она записывается в виде:
for Var € Nmin..Nmax
Эта запись означает, что выражение, помещенное в расположенное ниже место ввода, будет выполняться для значения переменной Var, меняющейся от Nmin до Nmax с шагом +1;
while – инструкция задания цикла, действующего до тех пор, пока выполняется некоторое условие. Она записывается в виде:
while условие ;
otherwise – инструкция иного выбора (обычно применяется с if);
break – инструкция вызывает прерывание выполнения программы всякий раз, как она встречается. Чаще всего эта инструкция используется совместно с условной инструкцией if и инструкциями циклов while и for, обеспечивая переход в конец тела цикла;
continue – инструкция продолжения работы после прерывания программы. Она чаще всего используется совместно с инструкциями циклов While и for ;
return – инструкция возврата;
on error – инструкция обработки ошибок.
Задания
9.1.
Составить программные блоки для
вычисления функций из примеров на с.25
с записью отдельной формулы для
.
Это избавит от необходимости искусственной
малой добавки под знаком корня. Построить
поверхности и уровни указанных функций.
9.2. Составить программные блоки для вычисления сумм, произведений и пределов, приведенных в заданиях к работе 1 на с. 13
9.3.
Составить программу решения уравнений
методом Ньютона
,
причем вычисления
следует проводить пока
.
Предусмотреть проверку выполнения
условия для начального приближения
.
9.4. С помощью программы из п. 9.3 решить уравнения из задания 4.1.1, построить графики функций, сделать проверку.