11763

Математические методы исследования операций

Книга

Математика и математический анализ

МЕТОДИЧЕСКИЕ УКАЗАНИЯ к изучению курса и выполнению контрольной работы по дисциплине Математические методы исследования операций для студентов специальности 7.080404 Интеллектуальные системы принятия решений заочной ускоренной формы обучения УДК Ме...

Русский

2013-04-11

2.73 MB

20 чел.

МЕТОДИЧЕСКИЕ УКАЗАНИЯ

к изучению курса и выполнению контрольной работы по дисциплине
«Математические методы исследования операций»

для студентов специальности
7.080404 «Интеллектуальные системы принятия решений»

заочной ускоренной формы обучения

УДК

Методические указания к изучению курса и выполнению контрольной работы по дисциплине «Математические методы исследования операций» для студентов заочной ускоренной формы обучения специальности 7.080404 «Интеллектуальные системы принятия решений» / Сост.: С.С. Турлакова, С.И.Протыняк, И.И. Сташкевич. – Краматорск: ДГМА, 2011. – 68 с.

Составители: Турлакова С.С., к.е.н., ст.преп.

  Протыняк С.И., асс.

  Сташкевич И.И..ю асс

Отв. за выпуск   Гитис В.Б., к.т.н., доц.


Содержание

[1]
ОСНОВЫ РАБОТЫ В MathCad

[2] 5 нахоЖДЕНИЕ корНЕЙ УРАВНЕНИЯ, РЕШЕНИЕ УРАВНЕНИЙ И СИСТЕМ УРАВНЕНИЙ

[3] 6 ПрограмМИРОВАНИЕ в MathCad

[4] Примеры выполнения практических заданий в MathCad

[5] Лабораторная работа №1

[6] ОСНОВЫ РАБОТЫ В MathCad

[7] Нахождение корней  уравнения  в MathCad

[7.1] Часть 2.

[7.2] Нахождение решений системы  линейных уравнений в MathCad


ОСНОВЫ РАБОТЫ В MathCad

ОБЩИЕ ПОЛОЖЕНИЯ

Объекты программы MathCad: формулы и текстовые блоки, - располагаются в документе MathCad, который называется рабочий лист. В процессе выполнения расчетов формулы обрабатываются постепенно, слева направо и сверху вниз.

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

1) курсор  в виде крестика используется, если этот курсор определяет местоположение следующего объекта;

2) угловой курсор используется при введении формул. Этот курсор  указывает на текущий элемент выражения;

3) текстовый курсор (I-образная вертикальная черточка)  используется при введении текста.

1 Интерфейс пользователя

1.1 Математические панели

Математических панелей в MathCad  девять. Приоткрываются панели с помощью соответствующих команд панели Math (Математические) (рис.1), однако можно использовать и стандартный метод обращения к меню Toolbars (Инструменты), меню Vіew (Вид).

Кратко охарактеризуем все панели семейства Math (Математические).

– Calculator (Калькулятор, Арифметика). На данной панели расположены арифметические операторы, цифры от 0 до 9, наиболее распространенные функции и математические константы, а также операторы вывода (рис.1, а).

– Graph (Графические, Графики). С помощью этой панели можно вызвать шаблоны для построения разнообразных графиков и поверхностей. На панели также расположены ссылки на инструменты для анализа данных (рис.1, б).

– Matrіx (Матричные, Матрица). На панели расположены операторы создания, обращение, транспонирование матриц, а также операторы матричных индексов и колонок. На панели также расположены операторы для работы с векторами (рис.1, в).

– Evaluatіon (Выражения). На панели находятся  ссылки на все операторы ввода и вывода в  MathCad, а также шаблоны  для создания пользовательских операторов (рис.1, г).

– Calculus (Вычислительные, Вычисление, Матанализ). На панели находятся  применяемые при решении задач математического анализа операторы: определенного и неопределенного интегралов, производных, лимитов,  сложений и произведений,  символ бесконечности (рис.1, д).

– Boolean (Булевые, Логика). Эта панель предназначена для задания логических операторов (рис.1, е).

– Programmіng (Программирование). Панель содержит операторы языка программирования MathCad  (рис.1, ж).

– Greek (Греческие, Греческий Алфавит). На данной панели расположенные буквы греческого алфавита (рис.1, з).

– Symbolіc (Символика, Символы). Панель предназначена для проведения аналитических преобразований (рис.1, и).

                     

        а)                      б)                      в)                         г)                      д)            

            

        е)                      ж)                         з)                                і)

Рисунок 1 – Математические панели инструментов  программы  MathCad  

2 Создание формул

Формулы - основные объекты MathCad. Новый объект по умолчанию является формулой. Для того, чтобы начать ввод  формулы необходимо установить крестообразный курсор в нужное место и начать ввод букв, цифр, знаков операций. При этом создается область формулы, в которой появляется угловой курсор.

Элементы формул можно вводить с клавиатуры или  с помощью панелей.

Формулы, которые введены в MathCad, автоматически приводятся к стандартной научно-технической форме записи.

В программе MathCad  можно использовать  буквенные определения, которым сопоставляются числовые значения, и которые рассматриваются как переменные. Буквенные значения задаются с помощью оператора присваивания (он вводится символом ":="). Таким  же образом можно задавать числовые последовательности, аналитически определенные функции, матрицы, векторы.

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

– для выделения элементов формулы, которые в рамках операции должны рассматриваться как одно целое, используется клавиша Space;

– при нажатии каждого раза на клавишу Space угловой курсор расширяется, включая элементы формулы, которые расположены рядом с данным;

– после введения  знака операции элементы в пределах углового курсора автоматически заключаются в скобки.

Если все значения переменных известны, то для вычисления числового значения выражения  (скалярного,  векторного или матричного) необходимо подставить все числовые   значения и выполнить заданные действия. В программе MathCad  применяется оператор вычисления, который вводится символом "=".  Кроме того, есть возможность задавать значение известных параметров, провести вычисление с представлением  аналитическими формулами, результат присвоить некоторой переменной, а потом использовать оператор вычисления для вывода значения этой переменной.

Комментарии, описания и иллюстрации располагаются в  текстовых блоках, которые игнорируются при проведении расчетов.

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

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

3 Графики

Графики, которые строятся на основе результатов вычислений также рассматриваются как формулы.

В Mathcad встроено несколько типов разных графиков, которые можно разбить на две группы: двумерные и трехмерные графики.

Все основные типы графиков и инструменты работы с ними расположены на рабочей панели Graph (Графические) семейства Math (Математические) (рис.2,б):

– График кривой в двумерной декартовой системе координат (X-Y Plot).

– График кривой в полярной системе координат (Polar Plot).

– Поверхность (Surface).

– Контурный график (Contour Plot).

– Столбиковая трехмерная (3D) диаграмма (3D Bar Plot).

– Точечный трехмерный (3D) график (3D Scatter Plot).

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

Аналогично панели Graph (Графические) список всех типов графиков Mathcad расположен в одноименном подменю меню Insert (Вставка).

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

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

Первым шагом есть введения специальной заготовки для будущего графика - так называемой графической области. Ввести графическую область как для декартового, так и для любого другого графика можно: из панели Graph (Графические), командой одноименного меню Іnsert (Вставка) или  нажатием комбинации клавиш Shіft+2.

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

В окне Properties (Свойста) могут быть полезными два параметра, расположенных на вкладке Display.

– Highlight Region (Цветная область). Установив этот флажок можно  на палитре Choose Color (Выбор цвета) определить наиболее подходящий цвет заливки для графической области.

– Show Border (Показать границу). Параметр отвечает за отображение внешней границы графической области. По умолчанию граница не визуализируется.

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

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

1. Ввести графическую область.

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

3. В центральный маркер, расположенный по левую сторону от внутренней рамки, ввести функцию или имя функции.

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

Для того, чтобы изменить область изменения, нужно просто уменьшить интервал изменения  переменной или функции. Для этого необходимо выделить графическую область щелчком левой кнопки мыши. Непосредственно под крайними значениями (для оси X) или по левую сторону от них (для оси Y) появятся цифры, которые отражают максимальные и минимальные величины координат узловых точек  графика. Чтобы изменить их значения необходимо удалить  старые величины и ввести другие.  Изменения границ по оси X вызывает автоматический перерасчет крайних значений по оси Y.

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

В ряде случаев  намного удобнее задать векторы данных самостоятельно. Выполнить это можно с помощью оператора ранжированной переменной (вводится  из панели Matrіx (Матричные)).

Чтобы задать вектор значений переменной с помощью оператора Range Varіable (Ранжированная переменная), выполняется  следующая последовательность действий.

1. Ввести имя переменной вместе с оператором присваивания.

2. Задать левую границу интервала построения и поставить запятую.

3. Ввести оператор ранжированной переменной.

4. В левом маркере введенного оператора задать вторую точку на промежутке (тем самым  определяется шаг).

5. В правый маркер оператора ранжированной переменной вводится значение правой границы на интервале.

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

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

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

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

1. Установить курсор по правую сторону от выражения, которое определяет координаты последнего ряда данных по оси Y (предварительно выделив его).

2. Опустить курсор на строку ниже, нажать на знак запятой (,) и в маркер, который появился, ввести выражение для новой функции или имени функции.

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

Задание графиков в полярной системе координат с технической точки зрения не имеет ровно никаких принципиальных отличий от создания графиков на декартовой плоскости. Для начала нужно ввести графическую область. Выполнить это можно или с помощью специальной кнопки Polar Plot (Полярный график) панели Graph (Графические), или комбинацией клавиш Ctrl+7. Как и в случае зависимости X-Y, для полярного графика существует два основных метода построения: быстрый способ построения и использование ранжированных переменных. При задании полярной системы координат по быстрому методу система автоматически определит область изменения угла от 0 до 360°. В отличие от области изменения угла, величину диапазона полярного радиуса можно задать произвольным образом непосредственно на графической области.

Для форматирования графика необходимо дважды нажать на область графика. Для управления отображением линий на графику существует вкладка  Traces (Линии) (рис.2, а), где приведен формат каждой линии и элементы управления изменением формата. Поле Legend Label (Описание) задает описание линии, которое отображается, если снять флажок Hіde Legend (Закрыть описание) (рис. 2,б). Маркеры для отдельных точек можно выбрать из списка Symbol (Символ), из списка Lіne (Тип линии) выбирается тип линии, а из списка Color (Цвет) - цвет графика. Список Type (Тип) определяет средство связи отдельных точек  графика, а список Weіght (Толщина) - толщину линии на графике (рис.2,в).

Форматирование данных графика выполняется с использованием диалогового окна Result Format (рис.2, г).

Аналогично можно построить и отформатировать график в полярных координатах. Для  его построения нужно воспользоваться командой Іnsert/ Graph/Polar Plot.

   

                        а)                                       б)

Рисунок 2 –  Диалоговые окна  для форматирования графиков

           

в)      г)

Рисунок 2 –  Диалоговые окна  для форматирования графиков

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

Для построения трехмерных графиков можно использовать наиболее простой и практически важный, быстрый метод построения трехмерного графика (QuіckPlot). В его основе лежит тот же принцип, который используется и при быстром задании двумерной зависимости: пользователь определяет только вид функции, а все параметры построения, такие как шаг между узловыми точками, диапазон шкал осей и система координат, задаются автоматически системой.

Типы трехмерных графиков следующие:

Contour Plot - график линий уровня (график поверхности);

3D Bar Plot - график трехмерной гистограммы;

3D Scatter Plot - график множества точек;

Vector Fіeld Plot - график векторного поля. График векторного поля немного отличается от других типов двумерных графиков. Его содержание заключается в построении некоторого вектора в каждой точке плоскости XY. Чтобы задать вектор на плоскости, необходимы два скалярных числа. Поэтому в Mathсad принято, что векторное поле задает комплексная матрица. Действительные части каждого ее элемента задают проекцию вектора на ось х, а мнимые - на ось Y.

Чтобы создать трехмерный график, нужно нажать кнопку с изображением каждого из типов трехмерных графиков на панели инструментов Graph (Графики). В результате появится пустая область графика с тремя осями (рис. 3)  и единым  заполнителем в нижнем левом углу. В этот заполнитель ввести или имя z функции z(x,y) двух переменных для быстрого построения трехмерного графика, или имя матричной переменной z, которая задает функцию z(x,y) на плоскости XY.


Рисунок 3 –  Область для создания трехмерных графиков

3.2.1 Способ построения с использованием быстрого методу построения трехмерного графика

Последовательность создания трехмерного графика с использованием быстрого метода построения трехмерного графика (QuіckPlot) следующая.

1. Сначала необходимо ввести графическую область трехмерного графика. Аналогично зависимости X-Y, сделать это можно тремя стандартными способами: нажатием кнопки Surface Plot (Поверхность) панели Graph (Графические), использованием одноименной команды меню Іnsert (Вставка) или нажатием комбинации клавиш Ctrl+2.

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

2.  После того как графическая область введена, следует задать вид функции, которая определяет трехмерную область. В отличие от X-Y-зависимостей, просто ввести ее выражения в маркер нельзя  - при этом будет выдано сообщение об ошибке: Thіs varіable іs undefіned (Данная переменная не определенна).   В маркер графической области  вводится  имя заданной  функции, для которой строится трехмерный график.  Однако, в отличие от двумерного случая, прописанным должен  быть лишь непосредственно текст имени, без переменных в скобках.

При использовании данной методики поверхность задается на стандартном интервале от -5 до 5 для  переменных. Такой диапазон во многих случаях может быть неприемлемый.  Для форматирования параметров графиков быстрого построения существует специальная вкладка Quіck Plot Data (Данные графика быстрого построения) окна форматирования трехмерных графиков 3D-Plot Format. Открывается это окно двойным нажатием левой кнопки мыши на графической области или с помощью команды Format (Формат) ее контекстного меню (рис. 5).

Все параметры настройки графика быстрого построения расположены на вкладке Plot 1 (График 1). В общем случае таких вкладок может быть больше, это связано с тем, что на одной графической области может быть размещено несколько поверхностей. Чтобы это выполнить, просто вводятся  через запятую имена функций, графики которых должны быть построены. Вкладка Plot 1 (График 1) содержит три меню настраивания, два из которых: Range 1 и Range 2 (Ряд 1 и Ряд 2), идентичны друг другу. Эти меню отвечают за характеристики сетки построения поверхности вдоль каждой из осей переменных (соответствие переменной ряда определяется последовательностью введения ее при задаче имени функции) и содержат следующие параметры настраивания:

– Start (Начало). В поле данного параметра можно произвольным образом задать начальную точку построения прямоугольника по данной оси.

– End (Конец). В поле данного параметра  определяется конечная точка интервала.

– # of Grіds (Количество линий сетки). Параметр определяет, на какое количество отрезков будет разбит интервал построения для выбранной переменной (что отвечает числу отображенных линий сетки). Эта величина обратная шагу изменения переменной.

Аналогично двумерному случаю, интервал по каждой  из осей переменных разбивается на заданное количество отрезков. Границы этих отрезков дают координаты узловых точек. При этом, если количество отрезков по X равняется N, а по Y - М, то для каждого значения X будет существовать М точек с разными координатами по Y, и, наоборот, каждому Y будет отвечать N значений X. Визуально это можно представить в виде сетки,  которая определяется шагом по каждой из переменных, а в узлах находятся точки, относительно которых определяется функция.

Когда сетка разбивки задана, исчисляются значение функции в ее узлах. Если остановиться на этом этапе и визуализировать  только точки, то будет построен так называемый точечный график (Data Poіnts). Каждая точка соединяется с соседней при помощи отрезков прямых, при этом применяются сглаживание и другие графические эффекты, в результате чего, в зависимости от величины шагов  сетки, выходит более или менее гладкая поверхность.

Рисунок 4 –  Окно для форматирования трехмерных графиков

Третье меню вкладки Plot 1 (График 1) - Coordіnate System (Система координат) определяет, в какой системе координат следует отобразить данную зависимость. Возможные следующие варианты:

– Cartesіan (Декартова). График отображается в декартовой системе координат.

– Spherіcal (Сферическую). График отображается в сферической системе координат.

– Cylіndrіcal (Цилиндрическая). График отображается в цилиндрической системе координат.

В диалоге 3-D Plot Format (Форматирование 3-D графика) доступно большое количество параметров, изменение которых способно повлиять на внешний вид графика. Они сгруппированы по принципу действия на нескольких вкладках.

Остановимся кратко на возможностях оформления трехмерных графиков.

Изменение типа графика. Чтобы изменить тип уже имеющегося графика (например построить вместо поверхности график линий уровня и т.д.), надо  установить соответствующий переключатель в нижней части вкладки General (Общие) и нажать  кнопку ОК. График будет преобразован (рис.5).

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

Изменение ориентации графика. С помощью полей Rotatіon (Вращение), Tіlt  (Наклон) и Twіst (Поворот) на вкладке General (Общие) определяют соответствующие углы вращения, наклона и поворота (в градусах) и тем самым задают направление всех трех осей координат в пространстве.

Стиль осей можно изменить с помощью группы переключателей Axes Style (Стиль осей) и задать один из следующих стилей осей координат:

Perіmeter (Периметр),

Corner (Угол),

– None (Нет) - осы отсутствуют.

Если установить флажок Show Box (Показать куб), то координатное пространство будет изображено в виде куба.

Масштабирование графика - можно задать числовое значение масштаба в поле Zoom (Масштаб) вкладки General (Общие).

Рисунок 5 – Вкладка  General (Display as) для изменения типа графика

Форматирование осей выполняется с использованием   вкладки    Axes (Оси) (рис.6). Вкладка Axes (Оси) содержит три вложенных вкладки, в которых задаются параметры для каждой из трех координатных осей. В частности, можно включить или отключить отображение линий сетки, нумерацию и задать диапазон по каждой из осей.

Рисунок 6 – Вкладка Axes (Оси) форматирования осей

С помощью еще одной вкладки — Backplanes (Плоскости заднего плана) (рис. 7) задается отображение проекций координатной сетки на три спрятанные плоскости трехмерного графика.

Рисунок 7 – Вкладка Axes (Оси) форматирования осей

С помощью вкладки Appearance (Оформление) (рис. 8) можно изменить стиль задания заливки  линий для контурного и поверхностного графиков. При выборе переключателя Fіll Surface (Заливка поверхности) из группы Fіll Optіons (Опции заливки) можно получить доступ к опциям цвета (в группе Color Optіons). Если выбрать переключатель Solіd Color (Один цвет), то получится однотонная заливка поверхности. Если установить переключатель Colormap (Цветовая схема), то поверхность или контурный график будут залиты разными цветами и оттенками, причем выбрать цветовую схему можно на вкладке Advanced (Дополнительно) (рис. 9).

Рисунок 8 – Вкладка Appearance (Оформление) стиля задания заливки

Рисунок 9 – Вкладка Advanced (Дополнительно) для задания цвета в  спецэффектов

Заголовок графика  можно изменить с помощью вкладки Title (Заголовок) (рис. 10).

Рисунок 10 – Вкладка TITLE для изменения заголовка графика

3.2.2 Способ построения трехмерного графика с помощью матрицы значений

Существует еще один способ построения трехмерного графика  с помощью матрицы значений, которая представляет собой  таблицу из трех колонок: в первой будут расположены координаты точек по оси X, во второй -по оси Y, в третьей - по оси Z. В Mathсad существует специальная функция маtrіх(m,n,f) (матрица). Функция формирует матрицу, элементы которой равны значениям функции f(x,y), исходя из того условия, что x=i, y=j (т.е. переменные определяются равными  соответствующим матричным индексам данного элемента). Количество строк создаваемой матрицы определяется в первом маркере имени функции (параметр m), количество колонок - во втором (параметр n).

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

3.2.3 Способ построения с помощью специальной матричной функции CreateMesh

Можно создать график также с помощью специальной матричной функции CreateMesh (Создать сетку).

Функция CreateMesh(F,s,sl,t,tl,sgrіd,tgrіd,fmap) вводится в маркер графической области и имеет пустые маркеры, в которые последовательно вводятся:

– имя матрицы значений или функции F;

– начальное значение первой переменной s;

– начальное значение второй переменной sl;

– конечное значение первой переменной t;

– конечное значение второй переменной tl;

– число линий сетки по первый переменной sgrіd;

– количество линий сетки по второй переменной tgrіd;

– карта отображения frnap.

Кроме поверхностей в пространстве можно задавать и разного рода линии. Для этого существует специальная функция CreateSpace(F,t,tl,tgrіd,frnap) (Создать пространство). Она имеет пять маркеров, в которые последовательно вводятся имя массива данных или системы параметрических уравнений, начальное и конечное значения параметра, количество разбивок промежутка параметра, карта отображения.

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

1. Задать уравнение любой функции f(x).

2. Задать систему параметрического закручивания и соединить ее в один массив:

A(u,v) :=u,

B(u,v):=f(u)cos(v),

C(u,v):=f(u)sin(v),

3. Внести в маркер  следующую запись: CreateMesh(M, s,sl,t,tl,sgrid,tgrid).

4 ДЕЙСТВИЯ С МАТРИЦАМИ

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

Создать матрицу можно следующим образом:

записать оператор присваивания, для введения правой части использовать команду Іnsert/Matrіx  или на панели инструментов Matrіx. В окне, которое раскроется, задать  число строк и столбцов матрицы. Вектор является матрицей с одним столбцом. Ввести значение элементов матрицы в соответствующие места. Дальше можно выполнять все необходимые операции с матрицами

Для работы с элементами матрицы используются индексы элементов. Нумерация строк и столбцов матрицы начинается  из нуля. Индекс элемента определяется на панели инструментов Matrіx кнопкой Subscrіpt (рис.1,в), например Mn,k. Два индекса, которые определяют элемент матрицы, отделяются запятой. Номер столбца матрицы отображается как верхний индекс, который заключен в угловые скобки, для чего используется кнопка Column  на панели инструментов Matrіx, например, М<1> .  

Для проведения операций с матрицами используется меню Symbolіc и команда Matrіx (рис. 12).

Рисунок 12 – Меню Symbolic для работы с матрицами в символьном виде.

5 нахоЖДЕНИЕ корНЕЙ УРАВНЕНИЯ, РЕШЕНИЕ УРАВНЕНИЙ И СИСТЕМ УРАВНЕНИЙ

Для числового поиска  корней уравнения в MathCad  используется встроенная функция root. Она позволяет решать уравнение вида f(x)=0, где f(x)-уравнение, корни которого необходимо найти, х - неизвестная. Использование функции root требует задания начального приближения.

Функция polyroot возвращает вектор, который имеет все корни уравнения, коэффициенты которого задаются вектором v. Коэффициенты у вектора v располагаются в порядке возрастания степеней  в уравнении.

Существует возможность символьного решения  уравнения. Для этого необходимо обратиться к меню  Symbolіc/Varіable/Solve. Корни уравнения выводят в виде вектора.

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

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

Для решения систем линейных и нелинейных уравнений  используется "блок решений", который начинается из ключевого слова gіven и  заканчивается вызовом функции fіnd. Между ними находятся уравнение. Всем неизвестным в уравнении должны быть присвоены начальные значения. В уравнении, для которого необходимо найти решение, нужно использовать знак логического равенства = на панели инструментов   Evaluatіon. Как аргументы в функции должны быть неизвестные, которые необходимо найти.

Решение системы линейных уравнений с помощью встроенной функции lsolve(А,b)  возвращает вектор решений b. Матрица А - квадратная невырожденная,  вектор b  - вектор правых частей в системе уравнений.

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

Аналитические решения можно также получить с помощью "блока решений", который начинается из ключевого слова gіven.

Приближенные решения системы уравнений можно получить с использованием   встроенной функции mіnerr( x1,...). Эта функция подобная по своей работе к функции fіnd, однако она имеет другие условия для завершения итеративного процесса поиска решений. Функция mіnerr позволяет  находить решение в том случае, когда их не находит функция  fіnd.

6 ПрограмМИРОВАНИЕ в MathCad

Для написания программ  в среде MathCad  [4,6] существует специальная панель Programmіng (Программирование) (рис.16, а), она  относится  к панели Math (Математические) (рис.16, б).

Язык  программирования MathCad  имеет предельно малое количество операторов (рис. 16, а). Чтобы написать программу, прежде всего для нее должен  быть создан блок. Выглядит он как черная вертикальная линия с маркерами, в которые записывают те или иные выражения алгоритма.

       

                                 а)                                                       б)

Рисунок 16–Панель программирования

 Чтобы построить единичный элемент программного блока, используется  кнопка команды Add Line (Добавить линию) панели Programming (Программирование). При этом в области курсора появится следующий объект: , в который можно занести две строки программы. Для создания большего числа строк программы необходимо последовательно нажимать несколько раз соответствующую кнопку на панели Programming. Программный блок можно создать и внутри уже заданного блока.

Для присвоения значений переменным и функциям в  MathCad  используется специальный оператор:  (Local Defіnіtіon - Локальное присваивание), расположенный на панели Programmіng (Программирование). Использовать оператор обычного присваивания := в программах нельзя.  Локальные переменные и функции имеют приоритет над глобальными в рамках родной  программы.  Несколько переменных можно объявлять в одной строке через запятую.

Практически любая программа создается с использованием специальных управляющих операторов, таких как  оператор цикла for или оператора условия іf.

Чтобы задать нужный оператор, используются соответствующие кнопки панели Programmіng (Программирование). Просто набрать оператор из клавиатуры нельзя  - он будет воспринят системой MathCad  как неизвестная функция.  Такие операторы как: іf, for, whіle, активируют код, расположенный в  левом верхнем маркере, в том случае, если выполняется условие в правом. Для задачи условия используются также операторы панели Boolean (Логические). Можно задать и комплекс условий.

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

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

Если в некоторых ситуациях при работе программы необходимо прервать работу цикла, для этого надо использовать оператор break (Прервать). Этот оператор почти всегда работает с оператором іf (Если) или on error (Перехват  ошибок).

Программный оператор  условия іf (Если) используется  практически во всех создаваемых алгоритмах. Условный оператор іf имеет два маркера: ٠іf۰. В правый маркер вводится условие, в левый - операция, которая  выполняется в случае, если условие выполняется (если же оно не выполняется, то программа, пропускает данный фрагмент). В маркер оператора может быть внесено несколько условий.

Если алгоритм имеет несколько условий, при этом выполнение одного из них может привести к невыполнению или ошибке в других операторах условий, то можно использовать специальный оператор contіnue (Продолжить). Его применение аналогично применению оператору break (Прервать).

Оператор otherwіse (Иначе) предназначен для определения  действия, которое  должно быть выполнено, если условие оператора іf (Если) окажется ошибочным. Одновременно может быть использовано несколько условных операторов іf (Если). Оператор otherwіse (Иначе) в таком случае будет задействован, если не выполнятся  условия всех операторов іf (Если).

С помощью оператора return (Возвратить) можно прервать работу программы и возвратить некоторое значение. Этот оператор используется при ошибочной ситуации в программе.

В MathCad  существует возможность использовать специальный оператор on error (Перехват  ошибок). Он дает возможность  в программах избегать ошибок  и обходить их. Этот оператор по синтаксису полностью отвечает оператору іf.

Примеры выполнения практических заданий в MathCad

Нахождение корней  уравнения  в MathCad

Цель работы: нахождение корней уравнения  в программе MathCad  с использованием встроенных функций root, polyroots, символьного решения.

Указания к выполнению лабораторной работы:

I Нахождение корней уравнения в программе MathCad  с использованием встроенной функции root

1. Запустить программу MathCad .

2.  Записать на  рабочем листе  MathCad  вид функции f(х), для которой необходимо найти на заданном интервале корни.

3. Создать цикл из точек интервала, на котором  определяются корни,  и вычислить  в этих точках функцию f(х). Построить график функции f(х) и график функции х0=0 (т.е. ось х).  

4. Определить точки пересечения двух кривых f(х) и х0, которые будут приближением к корням уравнения.   

4.1. Использовать для определения на графике значений корней  в  контекстном меню (рис.17, a) опцию Trace (рис. 17,б), установить  флажок в окне Track Data Poіnt.

4.2. Подвести курсор мыши  к точкам пересечения кривых, координаты точек пересечения кривых, т.е. корни, будут представлены в окнах Х-Value и У- Value, а на графике отобразится вертикальная прямая.

5. Задать для независимой переменной х начальное приближение, которое выбирается как значение точки пересечения кривых f(х) и х0.   Обратиться ко встроенной в MathCad  функции root(f(x), x) (функция root возвращает значение независимой переменной х, для которой  f(х) равняется 0) и найти корень х1.

6. Найти второй (х2) и третий (х3) корни уравнения f(х)=0 (уравнение третьей степени имеет не больше трех действительных корней), задав для них соответственно их начальные значения как координаты точек пересечения кривых f(х) и х0 и использовав функцию   root.

  

                                     а)                                          б)

Рисунок 17 – Диалоговые окна для определения координат точек пересечения кривых

ІІ Нахождение корней уравнения в программе MathCad  с использованием встроенной функции polyroots, которая возвращает вектор, имеющий все корни уравнения, коэффициенты уравнения при этом задаются вектором.

1. Записать на  рабочем листе  MathCad  вид функции f(х), для которой необходимо найти на заданном интервале корни.

2. Записать как вектор v все коэффициенты уравнения, расположить их в порядке увеличения степеней.

3.  Найти корни, обратившись ко встроенной функции  r:=polyroots(v),    результат будет получено  относительно трансформированного вектора rT.

4. Для интервала нахождения корня и количества элементов вектора rT   создать соответствующие циклы и вычислить значение функции в точках цикла.

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

ІІІ  Нахождение корней уравнения   в программе MathCad  с использованием символьных решений уравнений.

1. Ввести левую часть уравнения.

2. Ввести знак равенства  с использованием панели управления Evaluatіon (Выражения) или с помощью  нажатия  клавиш Ctrl + =.

3. За знаком равенства ввести правую часть уравнения.

4. Выделить переменную, относительно которой решается  уравнение.

5. Выбрать команду Symbolіc/Varіable/Solve.

По окончанию решения корни уравнения выводятся в виде вектора.

ІV Найти приближенное решение с использованием функции mіnerr(x1,...).

1. Задать приближение последовательно для первого корня х:=1.

2. Ввести ключевое слово gіven (дано), из которого начинается блок решений.

3. Записать уравнение, используя знак логического равенства между правой и левой частями уравнения.

4. Обратиться к функции mіnerr( x). Корень будет найдено.

Пример

І Для уравнения   найти корни на интервале [-1, 1], шаг изменения переменной х равен 0.1.

1 Записать цикл  из точек интервала х:=-1, -0.9..1.

2  Записать функции    и х0=0.

3 Построить графики для этих функций.

4 Определить на графике точки пересечения кривых    и х0=0.

5 Задать как приближение значения точек пересечения х1, х2, х3. В примере х1=-0.9, х2=0.2, х3= 0.7.

6 Вычислить значение корней с помощью формул: root (f(x1),x1), root (f(x2),x2), root (f(x3),x3). Полученные значения корней такие: х1=-0.92, х2=0.21, х3= 0.721 (рис. 18).

Рисунок 18 – Результат нахождения корней с использованием функции root

II  Для уравнения    найти корни на интервале  [-1.1, 7.1] , шаг изменения переменной х равен 0.1.

1. Создать вектор из коэффициентов уравнения, используя панель управления Matrix (Матрица) (рис.19) и задав один столбец и четыре строки для коэффициентов уравнения.

Рисунок 19 – Диалоговое окно для определения вектора из коэффициентов уравнения

Вектор из коэффициентов уравнения будет иметь следующий вид

2. С помощью встроенной функции r:=polyroots(v) найти корни уравнения и представить их в виде вектора rT, транспонированного по отношению к r, то есть преобразованного из столбца в строку.

3.  Создать циклы для переменной х и количества найденных корней:

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

5.  Определить значения корней на графике (рис. 20).

Рисунок 20 – Результат нахождения корней с использованием функции polyroots

III Для уравнения   найти корни с использованием символьных решений уравнений.

1. Записать левую часть уравнения  

.

2. Поставить логический знак «=» и в правой части записать 0.

3. Выделить переменную х.

4. Обратиться в главном меню MathCad  к команде Symbolic/Variable/ Solve.

Найдены корни уравнения запишутся в виде вектора:

IV  Найти приближенное решение  вышеприведенного уравнения с использованием функции minerr( x1,…).

1. Задать приближение последовательно для первого корня х:=1.

2. Ввести ключевое слово given (дано), с которого начинается блок решений.

3. Записать уравнение, используя знак логического равенства между правой и левой частью уравнения.

4. Обратиться к функции minerr( x). Корень будет найдено.

5. Аналогические действия выполнить  для двух других корней уравнения, поскольку уравнения третьей степени имеет не больше трех корней. 

Нахождение решений системы  линейных уравнений в MathCad

Цель работы: нахождение решений системы линейных уравнений  в программе MathCad .

Указания к выполнению лабораторной работы:

I Найти решение  системы линейных уравнений с использованием функции soln.

1 Запустить программу MathCad.

2 Создать матрицу А из коэффициентов при неизвестных.

3 Создать вектор b из свободных членов.

4 Обратиться к встроенной программе решения линейных уравнений soln и записать soln1:=А-1 b.

5 Получить решение линейного уравнения у векторному виде

.

II Найти решение   системы  линейных уравнений с использованием так званого «блоку решений».

1 Задать начальные значения переменным, которые есть в уравнении.

2 Ввести ключевое слово given (дано), с которого начинается блок решений.

 3 Записать уравнение, используя знак логического равенства между правой и левой частью уравнения из  панели управления Evaluation (Выражения).

 4 Ввести ключевое слово find (найти), которым  заканчивается блок решений.

III Найти решение  вышеприведенной системы уравнений с использованием функции lsolve.

1Создать матрицу А из коэффициентов при неизвестных.

2 Создать вектор b из свободных членов.

4 Обратиться к встроенной программе решения линейных уравнений lsolve  и записать lsolve(А,b). 

5 Получить результат решения линейного уравнения в векторном виде

.

IV Найти приближенное решение с использованием функции minerr(x1,…).

1 Задать приближение последовательно для значений переменной х1, х2,… хn.

2 Ввести ключевое слово given (дано), с которого начинается блок решений.

3 Записать систему уравнений, используя знак логического равенства между правой и левой частями каждого уравнения.

4 Обратиться к функции minerr( x1,x2,..). Значения неизвестных  будут найдены.

Пример

I Найти решение системы уравнений с использованием функции soln

1 Создать матрицу А

А:=.

  1.  Создать вектор b

b:=.

3 Найти решение системы,  используя  функцию soln

.

4 Результат решения

II Найти решение  вышеприведенной системы уравнений с использованием так званого «блоку решений»

1 Задать начальные значения переменным, которые присутствуют в уравнении

x=0; y=0; z=0.

2 Ввести ключевое слово given (дано), с которого начинается блок решений.

3 Записать уравнение, используя знак логического равенства между правой и левой частями уравнения из  панели управления Evaluation (Выражения).

4 Ввести ключевое слово find (найти), которым  заканчивается блок решений.

find(x,y,z) =

5 Результат решения

III Найти решение  вышеприведенной системы уравнений с использованием функции lsolve.

1 Создать матрицу А

.

2  Создать вектор b

.

3 Найти решение системы,  используя  функцию lsolve:

   

 

IV Найти  решение  вышеприведенной системы уравнений с использованием функции minerr (x,у,z).

1 Задать начальные условия  для неизвестных, например,  x=1,у=1,z=1.

2 Ввести ключевое слово given (дано), с которого начинается блок решений.

3 Записать уравнения, используя знак логического равенства между правой и левой частью уравнения из  панели.

4 Обратиться к функции minerr (x,у,z). Решение системы уравнений будет найдено.

   

Литература:

  1.  Охорзин В.А. Оптимизация экономических систем. Примеры и алгоритмы в среде Mathcad: Учеб. пособие. М.: Финансы и статистика, 2005. – 144 с.
  2.  Охорзин В.А. Прикладная математика  в системе Mathcad: Учеб. пособие. Спб.: Издательство «Лань», 2008. – 352 с.
  3.  Плис А. И., Сливина Н. А. МАТНСАD: математический практикум для экономистов и инженеров: Учеб. пособие. — М.: Финансы и статистика, 1999. — 656 с.
  4.  Черняк А.А., Новиков В.А., Мельников О.И., Кузнецов А.В. Математика для экономистов на базе Mathcad. – СПб.: БХВ-Петербург, 2003. – 496 с.

Лабораторная работа №1

ОСНОВЫ РАБОТЫ В MathCad

Часть 1.

Нахождение корней  уравнения  в MathCad 

Цель работы: нахождение корней уравнения  в программе MathCad  с использованием встроенных функций root, polyroots, символьного решения.

Указания к выполнению лабораторной работы:

I Нахождение корней уравнения в программе MathCad  с использованием встроенной функции root

1. Запустить программу MathCad .

2.  Записать на  рабочем листе  MathCad  вид функции f(х), для которой необходимо найти на заданном интервале корни.

3. Создать цикл из точек интервала, на котором  определяются корни,  и вычислить  в этих точках функцию f(х). Построить график функции f(х) и график функции х0=0 (т.е. ось х).  

4. Определить точки пересечения двух кривых f(х) и х0, которые будут приближением к корням уравнения.   

4.1. Использовать для определения на графике значений корней  в  контекстном меню (рис.17, a) опцию Trace (рис. 17,б), установить  флажок в окне Track Data Poіnt.

4.2. Подвести курсор мыши  к точкам пересечения кривых, координаты точек пересечения кривых, т.е. корни, будут представлены в окнах Х-Value и У- Value, а на графике отобразится вертикальная прямая.

5. Задать для независимой переменной х начальное приближение, которое выбирается как значение точки пересечения кривых f(х) и х0.   Обратиться ко встроенной в MathCad  функции root(f(x), x) (функция root возвращает значение независимой переменной х, для которой  f(х) равняется 0) и найти корень х1.

6. Найти второй (х2) и третий (х3) корни уравнения f(х)=0 (уравнение третьей степени имеет не больше трех действительных корней), задав для них соответственно их начальные значения как координаты точек пересечения кривых f(х) и х0 и использовав функцию   root.

  

                                     а)                                          б)

Рисунок 17 – Диалоговые окна для определения координат точек пересечения кривых

ІІ Нахождение корней уравнения в программе MathCad  с использованием встроенной функции polyroots, которая возвращает вектор, имеющий все корни уравнения, коэффициенты уравнения при этом задаются вектором.

1. Записать на  рабочем листе  MathCad  вид функции f(х), для которой необходимо найти на заданном интервале корни.

2. Записать как вектор v все коэффициенты уравнения, расположить их в порядке увеличения степеней.

3.  Найти корни, обратившись ко встроенной функции  r:=polyroots(v),    результат будет получено  относительно трансформированного вектора rT.

4. Для интервала нахождения корня и количества элементов вектора rT   создать соответствующие циклы и вычислить значение функции в точках цикла.

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

ІІІ  Нахождение корней уравнения   в программе MathCad  с использованием символьных решений уравнений.

1. Ввести левую часть уравнения.

2. Ввести знак равенства  с использованием панели управления Evaluatіon (Выражения) или с помощью  нажатия  клавиш Ctrl + =.

3. За знаком равенства ввести правую часть уравнения.

4. Выделить переменную, относительно которой решается  уравнение.

5. Выбрать команду Symbolіc/Varіable/Solve.

По окончанию решения корни уравнения выводятся в виде вектора.

ІV Найти приближенное решение с использованием функции mіnerr(x1,...).

1. Задать приближение последовательно для первого корня х:=1.

2. Ввести ключевое слово gіven (дано), из которого начинается блок решений.

3. Записать уравнение, используя знак логического равенства между правой и левой частями уравнения.

4. Обратиться к функции mіnerr( x). Корень будет найдено.

Таблица 1.1 – Варианты заданий к лабораторной работе № 1

№ варианта

Интервал нахождения корней

Уравнение

1

2

3

1

[-1; 3]

x3-2,92x2+1,4355x+0,791=0

2

[-2; 3]

x3-2,56x2-1,325x+4,395=0

3

[-3,5; 2,5]

x3+2,84x2-5,606x-14,766=0

4

[-2,5; 2,5]

x3+1,41x2-5,472x-7,38=0

Продолжение табл.1.1

1

2

3

5

[-1,6; 1,1]

x3+0,85x2-0,432x+0,044=0

6

[-1,6; 1,6]

x3-0,12x2-1,478x+0,192=0

7

[-1,6; 0,8]

x3+0,77x2-0,251x-0,017=0

8

[-1,4; 1]

x3+0,88x2-0,3999x-0,0376=0

9

[-1,4; 2,5]

x3+0,78x2-0,827x-0,1467=0

10

[-2,6; 1,4]

x3+2,28x2-1,9347x-3,90757=0

11

[-2,6; 3,2]

x3-0,805x2-7x+2,77=0

12

[-3; 3]

x3-0,345x2-5,569x+3,15=0

13

[-2; 3,4]

x3-3,335x2-1,679x+8,05=0

14

[-1; 2,8]

x3-2,5x2+0,0099x+0,517=0

15

[-1,2; 3]

x3-3x2+0,569x+1,599=0

16

[-2,5; 2,5]

x3-2,2x2+0,82x+0,23=0

17

[-1,2; 4,6]

x3-5x2+0,903x+6,77=0

18

[-1; 7,4]

x3-7,5x2+0,499x+4,12=0

19

[-1.6; 9]

x3-7,8x2+0,899x+8,1=0

20

[-3,4; 2]

x3+2x2-4,9x-3,22=0

21

[-3,4; 1,2]

x3+3x2-0,939x-1,801=0

22

[-4,6; 3,0]

x3+5,3x2+0,6799x-13,17=0

23

[-2,4; 8,2]

x3-6,2x2-12,999x+11,1=0

24

[-3,2; 2,7]

x3-0,34x2-4,339x-0,09=0

25

[-1; 3]

x3-1,5x2+0,129x+0,07=0

26

[-1; 3]

x3-5,5x2+2,79x+0,11=0

27

[-1; 3]

x3-5,7x2-6,219x-2,03=0

28

[-1; 3]

x3-3,78x2-7,459x-4,13=0

29

[-1; 3]

x3-5x2-9,9119x+0,01=0

30

[-1; 3]

x3-7x2-1,339x-7,55=0

Пример

І Для уравнения   найти корни на интервале [-1, 1], шаг изменения переменной х равен 0.1.

1 Записать цикл  из точек интервала х:=-1, -0.9..1.

2  Записать функции    и х0=0.

3 Построить графики для этих функций.

4 Определить на графике точки пересечения кривых    и х0=0.

5 Задать как приближение значения точек пересечения х1, х2, х3. В примере х1=-0.9, х2=0.2, х3= 0.7.

6 Вычислить значение корней с помощью формул: root (f(x1),x1), root (f(x2),x2), root (f(x3),x3). Полученные значения корней такие: х1=-0.92, х2=0.21, х3= 0.721 (рис. 18).

Рисунок 18 – Результат нахождения корней с использованием функции root

II  Для уравнения    найти корни на интервале  [-1.1, 7.1] , шаг изменения переменной х равен 0.1.

1. Создать вектор из коэффициентов уравнения, используя панель управления Matrix (Матрица) (рис.19) и задав один столбец и четыре строки для коэффициентов уравнения.

Рисунок 19 – Диалоговое окно для определения вектора из коэффициентов уравнения

Вектор из коэффициентов уравнения будет иметь следующий вид

2. С помощью встроенной функции r:=polyroots(v) найти корни уравнения и представить их в виде вектора rT, транспонированного по отношению к r, то есть преобразованного из столбца в строку.

3.  Создать циклы для переменной х и количества найденных корней:

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

5.  Определить значения корней на графике (рис. 20).

Рисунок 20 – Результат нахождения корней с использованием функции polyroots

III Для уравнения   найти корни с использованием символьных решений уравнений.

1. Записать левую часть уравнения  

.

2. Поставить логический знак «=» и в правой части записать 0.

3. Выделить переменную х.

4. Обратиться в главном меню MathCad  к команде Symbolic/Variable/ Solve.

Найдены корни уравнения запишутся в виде вектора:

IV  Найти приближенное решение  вышеприведенного уравнения с использованием функции minerr( x1,…).

1. Задать приближение последовательно для первого корня х:=1.

2. Ввести ключевое слово given (дано), с которого начинается блок решений.

3. Записать уравнение, используя знак логического равенства между правой и левой частью уравнения.

4. Обратиться к функции minerr( x). Корень будет найдено.

5. Аналогические действия выполнить  для двух других корней уравнения, поскольку уравнения третьей степени имеет не больше трех корней. 

Часть 2.

Нахождение решений системы  линейных уравнений в MathCad 

Цель работы: нахождение решений системы линейных уравнений  в программе MathCad .

Указания к выполнению лабораторной работы:

I Найти решение  системы линейных уравнений с использованием функции soln.

1 Запустить программу MathCad.

2 Создать матрицу А из коэффициентов при неизвестных.

3 Создать вектор b из свободных членов.

4 Обратиться к встроенной программе решения линейных уравнений soln и записать soln1:=А-1 b.

5 Получить решение линейного уравнения у векторному виде

.

II Найти решение   системы  линейных уравнений с использованием так званого «блоку решений».

1 Задать начальные значения переменным, которые есть в уравнении.

2 Ввести ключевое слово given (дано), с которого начинается блок решений.

 3 Записать уравнение, используя знак логического равенства между правой и левой частью уравнения из  панели управления Evaluation (Выражения).

 4 Ввести ключевое слово find (найти), которым  заканчивается блок решений.

III Найти решение  вышеприведенной системы уравнений с использованием функции lsolve.

1Создать матрицу А из коэффициентов при неизвестных.

2 Создать вектор b из свободных членов.

4 Обратиться к встроенной программе решения линейных уравнений lsolve  и записать lsolve(А,b). 

5 Получить результат решения линейного уравнения в векторном виде

.

IV Найти приближенное решение с использованием функции minerr(x1,…).

1 Задать приближение последовательно для значений переменной х1, х2,… хn.

2 Ввести ключевое слово given (дано), с которого начинается блок решений.

3 Записать систему уравнений, используя знак логического равенства между правой и левой частями каждого уравнения.

4 Обратиться к функции minerr( x1,x2,..). Значения неизвестных  будут найдены.

Таблица 3.1 – Варианты заданий к лабораторной работе № 3

№ варианта

Коэффициенты при неизвестных

Свободные члени

a11

а21

а31

а41

а12

а22

а23

а24

а13

а23

а33

а34

а14

а24

а34

а44

в1

в2

в3

в4

1

2

3

4

5

6

1

9

5

7

4

0

4

6

7

8

6

5

8

6

7

3

5

6

7

8

7

2

9

6

3

8

3

4

6

7

4

1

2

3

5

3

4

4

8

3

7

2

3

2

3

2

5

3

5

2

5

7

2

4

2

7

1

3

7

5

1

4

2

4

1

4

2

5

8

4

4

5

3

6

1

2

6

8

7

3

7

3

2

9

5

9

6

3

8

3

4

6

7

4

8

2

3

5

3

5

4

8

3

7

9

6

2

4

7

4

2

4

1

6

2

0

8

3

6

7

3

6

3

5

7

1

7

3

3

4

7

3

2

6

4

6

4

3

4

5

6

8

1

9

3

5

2

8

2

1

5

2

1

5

2

2

6

3

2

2

1

2

0

1

3

3

1

2

9

7

6

2

7

3

4

9

5

5

2

2

3

4

4

0

1

5

6

6

2

10

3

6

5

2

3

4

6

3

5

0

2

3

2

6

4

2

4

3

6

3

11

0,12

-0,43

0,14

0,64

-0,17

-0,07

0,34

-0,72

0,32

0,62

1,18

-0,08

-0,25

0,43

1,12

1,17

0,53

-0,84

-0,53

1,15

12

0,12

-0,43

0,14

0,64

-0,17

-0,07

0,34

-0,72

0,32

0,62

1,18

-0,08

-0,25

0,43

1,12

1,17

0,53

-0,84

-0,53

1,15

13

3,7

5,6

9,5

2

13

4

3,36

31,1

1,5

0

2

7,93

4,2

6,3

4,4

2

42,7

3,7

6,2

3

14

1,3

1,6

5

2,2

3

4,4

6,7

13

2,5

0

2,8

0,73

12

67,8

4

2

3,4

13

6

3

15

5,3

1,6

5,5

2

3,3

4,1

6,4

3,9

5

0

2,1

3,3

2,04

6

4,9

2

4

3

6

3,1

16

3

6

5

0,2

3

4

6

8,3

5,3

0

2

3

2,6

6,1

4,1

2

4

0,93

6

3,8

17

3

6

5

2

34,7

4

6

3,6

5

0

2

3,4

2

6

4,2

2

44,7

3

6

3

18

3

6

5,1

0,2

4

4

6

3,4

5,34

3

2

3

2,7

6,7

4

2

4

3,3

6

7

19

23

6

5

2,5

1,3

4

6

3

5,2

0,78

12

3

2

6,11

4,2

12

4

3

6,78

3,76

20

1

5

5

2,3

3

8

2

3,4

2,5

0

6

3

0,2

6

4

2

4

3

5

3

21

3

6

1,25

2

3

2

5

3,3

8,2

2

5

2

1,2

2

4

2

4

1,3

9

2

22

1

6

5,9

2

3

7

6,6

3

5

0

3

3,3

2,1

6

2

2

4,8

3

6

8

23

3

16

5

12

3

0,4

6

13

5

0

2

3

2

6

14

0,2

4

3

16

3

24

1,3

16

1,5

2,22

3,2

5

8

3,4

5,55

1,3

3

3,3

2,2

6,77

4

2

4,9

3,6

6,88

3

25

3

6

15

2

3

4

6

3

5

0,4

2

3

12

6

14

2

4

3

6

0,3

26

3,3

7,6

5,5

2

3

5,4

7

13

5

0

9,2

4

2

6

4

3,2

4

3

6

3

27

3

6

5

2

3

0,44

9

3

5

0

2

2

2

6

4

0,67

5

3

6

3

28

3,35

3

5,3

2

3

4,22

6,7

3,5

5

0

2,8

3,8

2,9

6

4

2,34

4

3,44

6

3

29

3

6

5,23

2

3

4

6

11

5

0

2

3

18

6

4

2

4

13

6

3

30

13,4

6,33

5,1

2,11

3,33

4,66

6,1

3,33

5,44

0,11

2,22

6

2,55

6,33

4,44

2,98

8

3,78

6,11

3,33

Пример

I Найти решение системы уравнений с использованием функции soln

1 Создать матрицу А

А:=.

  1.  Создать вектор b

b:=.

3 Найти решение системы,  используя  функцию soln

.

4 Результат решения

II Найти решение  вышеприведенной системы уравнений с использованием так званого «блоку решений»

1 Задать начальные значения переменным, которые присутствуют в уравнении

x=0; y=0; z=0.

2 Ввести ключевое слово given (дано), с которого начинается блок решений.

3 Записать уравнение, используя знак логического равенства между правой и левой частями уравнения из  панели управления Evaluation (Выражения).

4 Ввести ключевое слово find (найти), которым  заканчивается блок решений.

find(x,y,z) =

5 Результат решения

III Найти решение  вышеприведенной системы уравнений с использованием функции lsolve.

1 Создать матрицу А

.

2  Создать вектор b

.

3 Найти решение системы,  используя  функцию lsolve:

   

 

IV Найти  решение  вышеприведенной системы уравнений с использованием функции minerr (x,у,z).

1 Задать начальные условия  для неизвестных, например,  x=1,у=1,z=1.

2 Ввести ключевое слово given (дано), с которого начинается блок решений.

3 Записать уравнения, используя знак логического равенства между правой и левой частью уравнения из  панели.

4 Обратиться к функции minerr (x,у,z). Решение системы уравнений будет найдено.

   

Литература:

  1.  Охорзин В.А. Оптимизация экономических систем. Примеры и алгоритмы в среде Mathcad: Учеб. пособие. М.: Финансы и статистика, 2005. – 144 с.
  2.  Охорзин В.А. Прикладная математика  в системе Mathcad: Учеб. пособие. Спб.: Издательство «Лань», 2008. – 352 с.
  3.  Плис А. И., Сливина Н. А. МАТНСАD: математический практикум для экономистов и инженеров: Учеб. пособие. — М.: Финансы и статистика, 1999. — 656 с.
  4.  Черняк А.А., Новиков В.А., Мельников О.И., Кузнецов А.В. Математика для экономистов на базе Mathcad. – СПб.: БХВ-Петербург, 2003. – 496 с.

Лабораторная работа № 2

Решениепрямой и двойственной задачи ЛП симплекс-методом

Цель работы: нахождение оптимальных решений задач линейного программирования с использованием симплекс-метода; составление двойственных задач линейного программирования, нахождение оптимальных решений прямой и двойственной задач, анализ полученных результатов.

Задание: 

  1.  составить математическую модель исходной задачи;
  2.  составить математическую модель двойственной задачи к исходной;
  3.  решить прямую и двойственную ЗЛП симплекс-методом;
  4.  провести экономико-математический анализ полученных оптимальных решений.

Работа виполняется:

  1.  с использованием Mathcad (минимальний уровень) и расчетами, выполненными вручную (с помощью построения симплекс-таблиц).
  2.  с использованием любого языка программирования.

Варианты заданий.

Примечание:

Для нечетных вариантов выполняется задача 1, для четных вариантов выполняется задача 2.

Задача 1.

Для производства двух видов изделий А и В используется  три типа технологического оборудования. На производство единицы изделия А оборудование первого типа используется a1 ч,  оборудование второго типа - a2 ч, третьего - a3 ч. На производство единицы изделия В оборудование первого типа используется b1 ч, оборудование второго типа - b2 ч, третьего - b3 ч.

На изготовление  всех изделий администрация предприятия может предоставить оборудование первого типа не более,  чем на  t1 часов, оборудование второго типа не более, чем на t2 часов, оборудование третьего типа не более, чем на t3 часов.

Прибыль от реализации единицы готового изделия А составляет r1 денежных единиц, изделия В - r2 денежных единиц.

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

Задача 2.

Для производства двух видов изделий А и B используется  три вида сырья.

На производство единицы изделия А требуется затратить сырья первого  вида a1 кг,  сырья второго вида - a2 кг,  третьего - a3 кг.  На производство единицы изделия В требуется затратить сырья первого вида b1 кг, сырья второго вида - b2 кг, третьего - b3 кг.

Производство обеспечено сырьем первого  вида  в  количестве t1 кг, второго вида в количестве t2 кг, третьего вида t3 кг.

Прибыль от реализации единицы готового изделия А составляет r1 денежных единиц, изделия В - r2 денежных единиц.

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

Вариант 1

a1=5,   b1=3,   t1=750;

a2=4,   b2=3,   t2=630;

a3=3,   b3=4,   t3=700;

r1=5,   r2=6.

Вариант  2

a1=6,   b1=2,   t1=600;

a2=4,   b2=3,   t2=520;

a3=3,   b3=4,   t3=600;

r1=6,    r2=3.

Вариант 3

a1=4,   b1=3,   t1=440;

a2=3,   b2=4,   t2=393;

a3=3,   b3=5,   t3=450;

r1=6,    r2=5.  

Вариант  4

a1=3,   b1=2,   t1=273;

a2=3,   b2=3,   t2=300;

a3=2,   b3=5,   t3=380;

r1=4,     r2=5.

 Вариант 5

a1=2,   b1=1,   t1=438;

a2=3,   b2=6,   t2=747;

a3=3,   b3=7,   t3=812;

r1=7,   r2=5.

Вариант 6

a1=4,   b1=3,   t1=480;

a2=3,   b2=4,   t2=444;

a3=2,   b3=6,   t3=546;

r1=2 ,  r2=4.

Вариант 7

a1=8,   b1=2,   t1=840;

a2=6,   b2=3,   t2=870;

a3=3,   b3=2,   t3=560;

r1=6,    r2=2.

Вариант  8

a1=5,   b1=2,   t1=505;

a2=3,   b2=3,   t2=393;

a3=2,   b3=3,   t3=348;

r1=7,   r2=4.

Вариант 9

a1=6,   b1=2,   t1=600;

a2=4,   b2=3,   t2=520;

a3=3,   b3=4,   t3=600;

r1=6.   r2=3.

Вариант 10

a1=2,   b1=3,   t1=428;

a2=3,   b2=6,   t2=672;

a3=2,   b3=8,   t3=672;

r1=3,   r2=8.

Вариант 11

a1=3,   b1=2,   t1=273;

a2=3,   b2=3,   t2=300;

a3=2,   b3=5,   t3=380;

r1=4,    r2=5.

Вариант 12

a1=7,   b1=3,   t1=1365;

a2=6,   b2=3,   t2=1245;

a3=1,   b3=2,   t3=650;

r1=6,   r2=5.

Вариант 13

a1=4,   b1=3,   t1=480;

a2=3,   b2=4,   t2=444;

a3=2,   b3=6,   t3=546;

r1=2,   r2=4.

Вариант 14

a1=5,   b1=3,   t1=750;

a2=4,   b2=3,   t2=630;

a3=3,   b3=4,   t3=700;

r1=5,   r2=6.

Вариант 15

a1=5,   b1=2,   t1=505 ;

a2=3,   b2=3,   t2=393;

a3=2,   b3=3,   t3=348;

r1=7,    r2=4.

Вариант 16

a1=4,   b1=3,   t1=440;

a2=3,   b2=4,   t2=393;

a3=3,   b3=5,   t3=450;

r1=6,   r2=5.

Вариант 17

a1=2,   b1=3,   t1=428;

a2=3,   b2=6,   t2=672;

a3=2,   b3=8,   t3=672;

r1=3,   r2=8.

Вариант 18

a1=2,   b1=1,   t1=438;

a2=3,   b2=6,   t2=747;

a3=3,   b3=7,   t3=812;

r1=7,   r2=5.

Вариант 19

a1=7,   b1=3,   t1=1365;

a2=6,   b2=3,   t2=1245;

a3=1,   b3=2,   t3=650;

r1=6,   r2=5.

Вариант 20

a1=8,   b1=2,   t1=840;

a2=6,   b2=3,   t2=870;

a3=3,   b3=2,   t3=560;

r1=6,   r2=2.

Вариант 21

a1=5,   b1=3,   t1=750;

a2=4,   b2=3,   t2=630;

a3=3,   b3=4,   t3=700;

r1=5,   r2=6.

Вариант 22

a1=6,   b1=2,   t1=600;

a2=4,   b2=3,   t2=520;

a3=3,   b3=4,   t3=600;

r1=6,   r2=3.

Вариант 23

a1=4,   b1=3,   t1=440;

a2=3,   b2=4,   t2=393;

a3=3,   b3=5,   t3=450;

r1=6,   r2=5.

Вариант 24

a1=3,   b1=2,   t1=273;

a2=3,   b2=3,   t2=300;

a3=2,   b3=5,   t3=380;

r1=4,   r2=5.

Вариант 25

a1=2,   b1=1,   t1=438;

a2=3,   b2=6,   t2=747;

a3=3,   b3=7,   t3=812;

r1=7,   r2=5.

Вариант 26

a1=4,   b1=3,   t1=480;

a2=3,   b2=4,   t2=444;

a3=2,   b3=6,   t3=546;

r1=2,   r2=4.

Вариант 27

a1=8,   b1=2,   t1=840;

a2=3,   b2=3,   t2=393;

a3=2,   b3=3,   t3=348;

r1=6,   r2=4.

Вариант 28

a1=5,   b1=2,   t1=505;

a2=6,   b2=3,   t2=870;

а3=3,   b3=2,   t3=560;

r1=7,    r2=2.

Вариант 29

a1=2,   b1=3,   t1=428;

a2=3,   b2=6,   t2=672;

a3=2,   b3=8,   t3=672;

r1=3,   r2=8.

Вариант 30

a1=7,   b1=3,   t1=1365;

a2=6,   b2=3,   t2=1245;

a3=1,   b3=2,   t3=650;

r1=6,   r2=5.

Отчет о выполненной работе должен содержать:

  1.  Тему и цель работы
  2.  Индивидуальное задание согласно варианту
  3.  Формализацию прямой и двойственной задач
  4.  Решение прямой и двойственной ЗЛП симплекс-методом с использованием Mathcad (минимальний уровень) и расчетами, выполненными вручную (с помощью построения симплекс-таблиц).
  5.  Решение задачи линейного программирования с использованием любого языка программирования (листинг программы и результат ее выполнения)
  6.  Выводы по результатам выполнения лабораторной работы

Вопросы к защите лабораторной работы

  1.  В какой форме должна быть записана ЗЛП для решения ее симплекс-методом?
  2.  Какие переменные являются зависимыми (базисными), а какие – независимыми (свободными)?
  3.  Какие переменные приравниваются к 0 для нахождения первого опорного плана?
  4.  Что является первым опорным решением ЗЛП?
  5.  Что выступает критерием оптимальности при минимизации (максимизации) целевой функции?
  6.  Каков алгоритм симплекс-метода?
  7.  Как выбирается направляющий столбец?
  8.  Как выбирается направляющая строка?
  9.  Какой элемент называется разрешающим?
  10.  Когда ЗЛП не имеет решения?
  11.  Что представляет из себя жорданова перестановка (транспозиция)?
  12.  Как определяются элементы новой симплекс-таблицы (разрешающий элемент, элементы направляющего столбца и строки, остальные элементы)?
  13.  Сформулируйте экономическое содержание двойственной задачи производственного планирования.
  14.  Сформулируйте общие правила построения двойственной задачи.
  15.  Чему равняется количество переменных двойственной задачи?
  16.  Чему равняется количество ограничений двойственной задачи?
  17.  Что ограничению-неравенству прямой задачи соответствует в двойственной задаче? Что ограничению-равенству прямой задачи соответствует в двойственной задачи?
  18.  Какая взаимосвязь между матрицами систем ограничений прямой и двойственной задачи?
  19.  Что характеризует дефицитность ресурсов?

Литература:

  1.  Наконечний С. І., Савіна С. С. Математичне програмування: Навч. посіб.К.: КНЕУ, 2003. — 452 с. ─ С. 65-100;
  2.  Охорзин В.А. Оптимизация экономических систем. Примеры и алгоритмы в среде Mathcad: Учеб. пособие. М.: Финансы и статистика, 2005. – 144 с.
  3.  Кутковецький В.Я. Дослідження операцій: Навчальний посібник. – Миколаїв: Вид-во МДГУ ім. П. Могили, 2003. – 260 с. С.45-54,66-90;
  4.  Математичні методи дослідження операцій. Навч. посібник // В.П.Лавренчук, М.І. Букатар, Т.І. Готинчан, Г.С.Пасічник. – Рута, 2008. – 360с.  ─ С.53-83;
  5.  Вентцель Е. С. Исследование операций. — М.: Сов. радио, 1972. —552 с. ─ С.59-82;
  6.  Исследование операций : Учебник/ О.А.Косоруков, А.В.Мищенко // Под ред. Н.П.Тихомирова. – М.: Издательство «Экзамен», 2003. – 448 с.   С.50-83;
  7.  Исследование операций в экономике : Уч.пособие для вузов /Н.Ш.Кремер, Б.А.Прутко, И.М.Тришин, М.Н.Фридман; Под ред. Н.Ш.Кремера. — М.:ЮНИТИ, 2003. – 407 с. С. 64-98;
  8.  Шикин Е.В., Шикина Г.Е. Исследование операцій: ученик. – М.: ТК Велби, Изд-во Проспект, 2006. – 280 с. С. 74-93;
  9.  Білогурова Г.В., Самойленко М.І. Математичне програмування: Конспект лекцій . – Х.: ХНАМГ, 2009. – 72 с. ─ С. 24-38;
  10.  Охорзин В.А. Оптимизация экономических систем. Примеры и алгоритмы в среде Mathcad: Учеб. пособие. М.: Финансы и статистика, 2005. – 144 с.
  11.  Охорзин В.А. Прикладная математика  в системе Mathcad: Учеб. пособие. Спб.: Издательство «Лань», 2008. – 352 с.
  12.  Лунгу К.Н. Линейное программирование . Руководство к решению задач. – М.: ФИЗМАТЛИТ, 2005. – 128 с.С.45-65;
  13.  Линейное программирование/ Ашманов С.А. – М.: Наука, 1981. – 340 с. С.158-192.

Лабораторная работа №3 

Транспортная задача

Цель работы: нахождение оптимального решения транспортной задачи.

Задание:

Уровень 1.

Решить транспортную задачу (найти оптимальный план) с помощью метода потенциалов, Excel и MathCAD.

Уровень 2.

Разработать программный продукт, который бы позволял найти:

1) опорные план транспортной задачи методом :

1.1. северо-западного угла;

1.2. минимальной стоимости;

2) сравнение методов нахождения опорного плана по эффективности (Fmin);

3) оптимальный план (методом потенциалов).

Пример решения в Excel.

Исходные данные.

bj

ai

b1 = 110

b2 = 80

b3 = 100

b4 = 90

b5 = 70

а1 = 250

1

4

7

9

1

а2 = 300

2

3

1

2

4

а3 = 150

2

1

3

1

4

Лист с исходными данными.

Лист с формулами

Поиск решения.

Необходимо ввести ограничения:

 (по строкам)

 (по столбцам)

(для каждого Х).

Результат.

Пример решения в MathCAD.

Варианты.

Вариант 1.

bj

ai

b1 = 120

b2 = 120

b3 = 200

b4 = 180

b5 = 110

а1 = 200

1

2

3

5

2

а2 = 150

4

6

7

3

1

а3 = 350

2

2

3

4

5

Вариант 2.

bj

ai

b1 = 140

b2 = 110

b3 = 170

b4 = 90

b5 = 140

а1 = 250

4

3

4

5

3

а2 = 200

2

4

5

7

8

а3 = 220

4

3

7

2

1

Вариант 3.

bj

ai

b1 = 110

b2 = 140

b3 = 220

b4 = 190

b5 = 120

а1 = 180

2

4

5

8

6

а2 = 300

7

3

6

4

5

а3 = 230

8

5

6

5

3

Вариант 4.

bj

ai

b1 = 160

b2 = 120

b3 = 140

b4 = 200

b5 = 170

а1 = 300

1

4

2

1

3

а2 = 250

6

2

3

5

1

а3 = 200

2

3

4

1

4

Вариант 5.

bj

ai

b1 = 110

b2 = 200

b3 = 90

b4 = 100

b5 = 120

а1 = 100

5

2

3

6

1

а2 = 300

1

1

4

4

2

а3 = 150

4

1

2

3

5

Вариант 6.

bj

ai

b1 = 100

b2 = 120

b3 = 100

b4 = 200

b5 = 300

а1 = 150

5

1

2

3

4

а2 = 320

7

8

1

1

2

а3 = 400

4

1

3

1

2

Вариант 7.

bj

ai

b1 = 100

b2 = 100

b3 = 80

b4 = 90

b5 = 70

а1 = 200

1

4

5

3

1

а2 = 350

2

3

1

4

2

а3 = 150

2

1

3

1

1

Вариант 8.

bj

ai

b1 = 100

b2 = 90

b3 = 200

b4 = 30

b5 = 80

а1 = 200

1

2

4

1

5

а2 = 120

1

2

1

3

1

а3 = 150

2

1

3

3

1

Вариант 9.

bj

ai

b1 =100

b2 = 120

b3 = 130

b4 = 100

b5 = 90

а1 = 300

1

4

5

3

1

а2 = 120

2

1

2

1

2

а3 = 300

3

1

4

2

1

Вариант 10.

bj

ai

b1 = 100

b2 = 20

b3 = 70

b4 = 90

b5 = 180

а1 = 300

1

4

2

1

2

а2 = 90

2

2

3

1

3

а3 = 70

3

4

5

6

7

Вариант 11.

bj

ai

b1 =100

b2 = 200

b3 = 130

b4 = 180

b5 = 110

а1 = 150

1

4

7

2

1

а2 = 200

2

5

1

4

3

а3 = 170

46

27

36

40

45

Вариант 12.

bj

ai

b1 = 120

b2 = 130

b3 = 200

b4 = 180

b5 = 110

а1 = 200

1

4

7

8

1

а2 = 150

2

3

1

4

1

а3 = 35

5

1

3

2

3

Вариант 13.

bj

ai

b1 = 140

b2 = 110

b3 = 170

b4 = 90

b5 = 140

а1 = 250

1

2

3

5

2

а2 = 200

4

6

7

3

1

а3 = 220

3

2

3

4

5

Вариант 14.

bj

ai

b1 = 110

b2 = 130

b3 = 200

b4 = 180

b5 = 110

а1 = 200

2

4

5

8

6

а2 = 150

7

3

6

4

5

а3 = 350

8

2

3

4

5

Вариант 15.

bj

ai

b1 = 100

b2 = 120

b3 = 140

b4 = 200

b5 = 170

а1 = 300

1

4

2

1

3

а2 = 250

6

2

3

5

1

а3 = 200

2

3

4

1

4

Вариант 16.

bj

ai

b1 = 100

b2 = 120

b3 = 100

b4 = 200

b5 = 300

а1 = 150

2

5

3

6

1

а2 = 320

1

1

4

4

2

а3 = 400

4

1

2

3

5

Вариант 17.

bj

ai

b1 = 100

b2 = 100

b3 = 80

b4 = 90

b5 = 70

а1 = 200

1

4

7

2

1

а2 = 350

2

5

1

4

3

а3 = 150

2

3

1

2

1

Вариант 18.

bj

ai

b1 = 100

b2 = 120

b3 = 100

b4 = 200

b5 = 300

а1 = 150

1

4

2

1

3

а2 = 320

6

2

3

5

1

а3 = 400

2

3

4

1

4

Вариант 19.

bj

ai

b1 = 180

b2 = 110

b3 = 70

b4 = 90

b5 = 170

а1 = 250

1

2

4

1

5

а2 = 200

1

2

1

3

1

а3 = 220

2

1

3

3

1

Вариант 20.

bj

ai

b1 = 110

b2 = 170

b3 = 200

b4 = 180

b5 = 110

а1 = 200

5

2

3

6

1

а2 = 150

1

1

4

4

2

а3 = 350

4

3

1

2

1

Вариант 21.

bj

ai

b1 = 100

b2 = 20

b3 = 70

b4 = 100

b5 = 180

а1 = 300

1

4

7

2

3

а2 = 90

1

5

3

1

6

а3 = 70

2

1

3

1

4

Вариант 22.

bj

ai

b1 = 100

b2 = 120

b3 = 90

b4 = 70

b5 = 80

а1 = 300

1

4

1

5

6

а2 = 250

1

3

1

1

2

а3 = 200

4

1

2

2

3

Вариант 23.

bj

ai

b1 = 110

b2 = 80

b3 = 100

b4 = 90

b5 = 70

а1 = 350

1

5

1

7

1

а2 = 200

2

3

1

8

3

а3 = 150

6

7

9

10

8

Вариант 24.

bj

ai

b1 = 110

b2 = 90

b3 = 100

b4 = 80

b5 = 200

а1 = 270

1

4

7

9

1

а2 = 300

2

3

1

2

4

а3 = 100

5

6

7

1

2

Вариант 25.

bj

ai

b1 = 40

b2 = 80

b3 = 100

b4 = 150

b5 = 200

а1 = 250

1

5

1

3

1

а2 = 300

2

4

7

1

3

а3 = 150

2

4

5

6

1

Вариант 26.

bj

ai

b1 = 100

b2 = 100

b3 = 80

b4 = 70

b5 = 90

а1 = 200

1

4

2

3

1

а2 = 150

2

1

7

8

1

а3 = 200

2

1

3

1

4

Вариант 27.

bj

ai

b1 = 110

b2 = 80

b3 = 100

b4 = 90

b5 = 70

а1 = 250

1

4

7

9

1

а2 = 300

2

3

1

2

4

а3 = 150

2

1

3

1

4

Вариант 28.

bj

ai

b1 = 100

b2 = 120

b3 =90 

b4 = 70

b5 = 80

а1 = 200

1

4

7

9

1

а2 = 100

1

3

1

1

2

а3 = 160

4

1

2

3

1

Вариант 29.

bj

ai

b1 = 100

b2 = 120

b3 = 90

b4 = 70

b5 = 80

а1 = 350

1

5

1

7

1

а2 = 200

3

2

1

8

3

а3 = 150

6

7

9

1

3

Вариант 30.

bj

ai

b1 = 100

b2 = 90

b3 = 80

b4 = 70

b5 = 200

а1 = 200

1

4

7

9

1

а2 = 200

2

3

1

2

4

а3 = 140

2

4

5

6

1

Отчет о выполненной работе должен содержать:

  1.  Тему и цель работы
  2.  Индивидуальное задание согласно варианту
  3.  Формализацию транспортной задачи
  4.  Решение транспортной задачи с помощью Excel и MathCAD.
  5.  Решение транспортной задачи любого языка программирования (листинг программы и результат ее выполнения)
  6.  Выводы по результатам выполнения лабораторной работы

Вопросы к защите лабораторной работы:

  1.  Общая математическая постановка транспортной задачи.
  2.  Открытая и закрытая транспортная задачи.
  3.  Особенности транспортных задач.

4)  Методы поиска опорного плана транспортных задач: метод северо-западного угла, метод наименьших стоимостей.

5)  Метод потенциалов для решения транспортной задачи.

Литература:

  1.  Математичні методи дослідження операцій. Навч. посібник // В.П.Лавренчук, М.І. Букатар, Т.І. Готинчан, Г.С.Пасічник. – Рута, 2008. – 360с. С.136-176;
  2.  Наконечний С. І., Савіна С. С. Математичне програмування: Навч. посіб.К.: КНЕУ, 2003. — 452 с. С.184-251;
  3.  Охорзин В.А. Оптимизация экономических систем. Примеры и алгоритмы в среде Mathcad: Учеб. пособие. М.: Финансы и статистика, 2005. – 144 с.
  4.  Охорзин В.А. Прикладная математика  в системе Mathcad: Учеб. пособие. Спб.: Издательство «Лань», 2008. – 352 с.
  5.  Кулян В. Р., Юнькова Е. А., Жильцов А. Б. Математическое программирование с элементами информационных технологий. — К.: МАУП, 2000. — 124 с.
  6.  Кутковецький В.Я. Дослідження операцій: Навчальний посібник. – Миколаїв: Вид-во МДГУ ім. П. Могили, 2003. – 260 с. С.102-128;
  7.  Исследование операций в экономике : Уч.пособие для вузов /Н.Ш.Кремер, Б.А.Прутко, И.М.Тришин, М.Н.Фридман; Под ред. Н.Ш.Кремера. — М.:ЮНИТИ, 2003. – 407 с. С.123-152;
  8.  Таха Х. Введение в исследование операций. — 6-е изд.: Пер. с англ. — М.: Изд. дом “Вильямс”, 2001. — 912 с. С.193-242;
  9.  Шикин Е.В., Шикина Г.Е. Исследование операцій: ученик. – М.: ТК Велби, Изд-во Проспект, 2006. – 280 с. С.93-113;
  10.  Акулич И. Л. Математическое программирование в примерах и задачах. — М., 1986. — 319 с. С.134-174;
  11.  Лунгу К.Н. Линейное программирование . Руководство к решению задач. – М.: ФИЗМАТЛИТ, 2005. – 128 с. С.85-110;
  12.  Линейное программирование/ Ашманов С.А. – М.: Наука, 1981. – 340 с. С.217-237.
  13.  Грешилов А.А. Прикладные задачи математического программирования: Учебное пособие. – М.: Логос, 2006. – 288 с. С.66-74,
  14.  Вентцель Е. С. Исследование операций. — М.: Сов. радио, 1972. —552 с. С.83-119.

Лабораторная  работа №4 

Решение задач нелинейного программирования

Цель работы: нахождение оптимальных решений задач нелинейного программирования

Задание:

  1.  Решить задачи нелинейного программирования согласно варианта графическим методом.
  2.   Найти оптимальное решение задачи НеЛП градиентным методом:

Уровень 1) с помощью MathCad.

Уровень 2) разработать программный продукт, позволяющий найти оптимальное решение задачи НеЛП градиентным методом.

Варианты задания

Варианты заданий

Вариант

Задание 1

Задание 2

1

1

2

2

2

3

3

3

4

4

4

5

5

5

6

6

6

7

7

7

8

8

8

9

9

9

1

10

1

2

11

2

3

12

3

4

13

4

5

14

5

6

15

6

7

16

7

8

17

8

9

18

9

2

19

1

3

20

2

4

21

3

5

22

4

6

23

5

7

24

6

8

25

7

9

26

8

1

27

9

2

28

1

3

29

2

4

30

3

5

1. Найти максимальное и минимальное значения функции F

2. Найти максимальное и минимальное значения функции F

3. Найти максимальное и минимальное значения функции F

4. Найти максимальное и минимальное значения функции F

5. Найти максимальное и минимальное значения функции F

6. Найти максимальное и минимальное значения функции F

7. Найти максимальное и минимальное значения функции F

8. Найти максимальное и минимальное значения функции F

9. Найти максимальное и минимальное значения функции F

Отчет о выполненной работе должен содержать:

  1.  Тему и цель работы
    1.  Индивидуальное задание согласно варианту
    2.  Формализацию задачи
    3.  Решение задачи нелинейного программирования графическим методом.
    4.  Решение задачи нелинейного программирования методом с помощью MathCad.
    5.  Листинг программы для нахождения оптимального решения задачи нелинейного программирования и результаты ее выполнения.
    6.  Выводы по результатам выполнения лабораторной работы

Вопросы к защите лабораторной работы:

  1.  Понятие нелинейного программирования.
  2.  Локальный и глобальный экстремумы.
  3.  Метод множителей Лагранжа.
  4.  Градиентные методы решения задач нелинейного программирования.

Литература:

  1.  Экономико-математические методы и прикладные модели / Под ред. В.В.Федосеева. – М.:ЮНИТИ, 2000. – С.102-127
  2.  Бережная Е.В. Математические методы моделирования экономических систем. – М.: ФиС, 2006. –с.346-374
  3.  Грешилов А.А. Прикладные задачи математического программирования. – М.: Логос, 2006 –с.75-93
  4.  Вентцель Е.С. Исследование операций. – М.: Высш.школа , 2002, -  с.120-177


Навчальне видання

Методические указания

к выполнению лабораторных работ по дисциплине
«Математические методы исследования операций»

для студентов специальностей направления подготовки
«Комп
ютерные науки» дневной формы обучения

(Російською мовою)

Укладач:

Турлакова Світлана Сергіївна

Протиняк Світлана Іванівна

Сташкевич Ігор Ігорович

Редактор

Підп. до друку                    Формат 60х84/16

Папір офсетний.   Ризограф. друк.  Ум. друк.арк          .      Обл.-вид.арк.         .

Тираж          прим.       Зам.№

Видавець і виготівник

«Донбаська державна машинобудівна академія»

84313, м. Краматорськ, вул. Шкадінова, 72

Свідоцтво про внесення суб’єкта видавничої справи до Державного реєстру

серія ДК №1633 від 24.12.2003 р.


 

А также другие работы, которые могут Вас заинтересовать

63950. Особливості мотиваційної сфери підлітків 744.59 KB
  Особливості цілепокладання і образу мети в підлітковому віці. Дослідження індивідуального образу мети за допомогою методики Карта казкової країни Зінкевич Євстігнєєвої. Мета цієї роботи: Виявити особливості мотиваційної сфери підлітків і їх індивідуальний образ мети.
63951. Особенности функционирования альтернативной молодежной культуры «ХИП-ХОП» 7.58 MB
  Целью исследования является становление, развитие и современное состояние молодёжной культуры «хип-хоп». Для достижения поставленной цели требуется решить ряд следующих задач: проследить историю становления и развития хип-хопа определить современные направления хип-хопа дать характеристику национальным особенностям хип-хопа...
63952. СОВЕРШЕНСТВОВАНИЕ СИСТЕМЫ ПЕНСИОННОГО ОБЕСПЕЧЕНИЯ ИНВАЛИДОВ РОССИИ 186.62 KB
  Целью дипломной работы является анализ назначения, установления и выплат трудовых пенсий по инвалидности на территории Российской Федерации. Задачами дипломной работы являются: изучить нормативные документы по действующей пенсионной системе, а также по реформе существующей пенсионной системы...
63953. ФОРМИРОВАНИЕ И РАЗВИТИЕ ЖЕНСКОГО ПЛУТОВСКОГО РОМАНА В ЗАРУБЕЖНОЙ ЛИТЕРАТУРЕ 18 – 19 ВЕКОВ 214 KB
  Цель настоящего исследования состоит во всестороннем исследовании проблем жанровой специфики плутовского романа в гендерном аспекте во французской и английской литературе 18-19 веков.
63954. Широкосмугові бездротові мережі доступу на базі технологій LTE 1.16 MB
  Мобільні телефони першого покоління були розміром трохи менше середньостатистичного валізи і складалися з бази і окремої трубки, яку практично не можна було носити з собою. Зараз важко собі уявити таке диво техніки, яке важило кілька кілограмів...
63955. Пути повышения рентабельности предприятия (на примере ООО «Телепласт») 1.35 MB
  Данная проблема не позволяет достаточно точно определить результаты деятельности компании периодически можно встретить случаи прямо противоположной ситуации компании на рынке например по результатам бухгалтерской и финансовой отчетности можно сделать выводы...
63956. Информационная система управления проектами в сбласти клинической лабораторной диагностики 3.29 MB
  Объектом исследования дипломного проекта является компания специализирующаяся в области лабораторной медицины в частности в области клинической лабораторной диагностики. Предметом исследования в дипломном проекте является деятельность данной компании в области управления проектами.
63958. Характеристика института соучастия в уголовном праве Российской Федерации 139.13 KB
  Достаточно большое количество фикций и презумпций при квалификации преступления совершенного несколькими лицами распространенность общественно опасных деяний которые совершаются их объединенными усилиями а также неисчислимое количество условностей при обосновании их ответственности обусловливают...