Международный университет в Москве
Кафедра прикладной математики
Э.Ф.Казанцев
Методические указания по выполнению пра...
132 downloads
292 Views
440KB Size
Report
This content was uploaded by our users and we assume good faith they have the permission to share this book. If you own the copyright to this book and it is wrongfully on our website, we offer a simple DMCA procedure to remove your content from our site. Start by pressing the button below!
Report copyright / DMCA form
Международный университет в Москве
Кафедра прикладной математики
Э.Ф.Казанцев
Методические указания по выполнению практических работ по курсу «Математика» Раздел 3 Математическое моделирование в экономике и управлении.
Москва 2008
УДК 330.4
Казанцев Э.Ф. Математика. Раздел 3. Математическое моделирование в экономике и управлении. Методические указания по выполнению практических заданий.М. : Международный университет в Москве, 2008. - 46 с.
Методические указания предназначены для выполнения практических работ по дисциплине «Математика» студентами, обучающимися по экономическим и управленческим специальностям. Указания содержат теоретический материал о принципах работы в программе MathCad, сведения об экономико-математических моделях, а также задания к лабораторным работам.
© Международный университет в Москве, 2008 © Э. Ф. Казанцев, 2008 2
Содержание ВВЕДЕНИЕ.............................................................................................................. 4 ЛАБОРАТОРНАЯ РАБОТА №1 ........................................................................... 5 ОСНОВЫ РАБОТЫ В СИСТЕМЕ MATHCAD................................................... 5 ЛАБОРАТОРНАЯ РАБОТА №2 ......................................................................... 15 РЕШЕНИЕ ОБЫКНОВЕННЫХ ДИФФЕРЕНЦИАЛЬНЫХ УРАВНЕНИЙ. . 15 ЛАБОРАТОРНАЯ РАБОТА №3 ......................................................................... 21 РЕШЕНИЕ ДИФФЕРЕНЦИАЛЬНЫХ УРАВНЕНИЙ В ЧАСТНЫХ ПРОИЗВОДНЫХ .................................................................................................. 21 ЛАБОРАТОРНАЯ РАБОТА №4 ......................................................................... 30 ДИНАМИЧЕСКИЕ МОДЕЛИ ............................................................................. 30 Литература ............................................................................................................. 45
3
ВВЕДЕНИЕ Одним
из
важнейших
этапов
системного
анализа
является
исследование математической модели. Практически во всех науках о природе, живой и неживой, об обществе построение и использование моделей является мощным орудием познания. Реальные объекты и процессы бывают столь многогранны и сложны, что лучшим способом их изучения часто является построение модели, отображающей лишь какую-то грань реальности и потому многократно более простой, чем эта реальность. Модель является системным отображением оригинала. Математическая модель выражает существенные черты объекта или процесса языком уравнений и других математических средств. Возможности аналитических методов решения сложных математических задач очень ограничены, и, как правило, эти методы гораздо сложнее численных.[1] В данном практикуме приведены численные методы, реализуемые
на
компьютерах.
Компьютеры
при
математическом
моделировании используются не только для численных расчетов, но и для аналитических преобразований. Результат аналитического исследования математической модели часто бывает выражен столь сложной формулой, что при взгляде на нее невозможно представить описываемый процесс. К программам, позволяющим выполнять такие задачи, относится система MathCad, которая представляет собой автоматизированную систему, позволяющую
динамически
обрабатывать
данные
в
числовом
и
аналитическом (формульном) виде. Программа MathCad сочетает в себе возможности проведения расчетов и подготовки форматированных научных и технических документов. Данный лабораторный практикум содержит теоретический материал о принципах
работы
в
программе
MathCad,
краткие
сведения
из
вычислительной математики, а также задания к лабораторным работам. Целью выполнения заданий
является получение и закрепление
навыков решения прикладных задач с использованием программы MathCad. 4
ЛАБОРАТОРНАЯ РАБОТА №1 ОСНОВЫ РАБОТЫ В СИСТЕМЕ MATHCAD
Научно-технические документы
содержат формулы, результаты
расчетов в виде таблиц данных или графиков, текстовые комментарии или описания, другие иллюстрации. В программе MathCad им соответствуют два вида объектов: формулы и текстовые блоки. Формулы вычисляются с использованием числовых констант, переменных, функций (стандартных и определенных
пользователем),
а
также
общепринятых
обозначений
математических операций. Графики, которые автоматически строятся на основе результатов расчетов, также рассматриваются как формулы. Комментарии, описания и иллюстрации размещаются в текстовых блоках, которые игнорируются при проведении расчетов. Чтобы буквенные обозначения можно было использовать при расчетах по формулам, этим обозначениям должны быть сопоставлены числовые значения. В программе MathCad буквенные обозначения рассматриваются как переменные, и их значения задаются при помощи оператора присваивания
«:=».
Таким
же
образом
можно
задать
числовые
последовательности, аналитически определенные функции, матрицы и векторы. Если все значения переменных известны, то для вычисления числового значения выражения (скалярного, векторного или матричного) надо подставить все числовые значения и произвести все заданные действия. В программе MathCad для этого применяют оператор вычисления (вводится символом «=»). Важно следить за тем, чтобы все переменные и функции были
определены
левее
и/или
выше тех
выражений, где
они
используются. Удобно сначала задать значения известных параметров, провести вычисления с использованием аналитических формул, результат присвоить некоторой переменной, а затем использовать оператор вычисления для вывода значения этой переменной. 5
g := 9.8
Например:
M := 3 F := M ⋅ g F = 29.4
При
изменении
автоматически
какой-либо
производит
формулы
необходимые
программа вычисления,
MathCad обновляя
изменившиеся значения и графики. Уравнения и системы уравнений, возникающие в практических задачах, чаще всего можно решить только численно. Методы численного решения реализованы в программе MathCad. Блок уравнений и неравенств, требующих решения, записывается после ключевого слова given (дано). При записи уравнений используется знак логического равенства (комбинация клавиш
CTRL+=).
Значения
переменных,
удовлетворяющие
системе
уравнений и неравенств, находятся с помощью стандартной функции find. Например: given x-y = 2 sin( x ) = sin( y ) ⎡ 2 .571 ⎤ find ( x , y ) = ⎢ ⎥ ⎣ 0 .571 ⎦
При аналитических вычислениях результат получают в нечисловой форме в результате тождественных преобразований выражений. Для такого рода вычислений в программе MathCad используют оператор аналитического вычисления «→»(клавиатурная комбинация CTRL+. , а также команды меню Symbolic (Символьный)). Переменные при аналитических вычислениях рассматриваются как неопределенные параметры. Результат можно использовать для анализа решения при различных значениях этих переменных. При аналитическом решении уравнений и систем за одну операцию можно найти все существующие решения. Например: 6
given z3 + 3 ⋅ z2 + 2 ⋅ z − 6 = 0
[
find ( z ) → 1 − 2 + i ⋅ 2
−2−i⋅ 2
]
В программе MathCad для вычисления производной, а также неопределенных символические
и
определенных
интегралов
могут
использоваться
вычисления с помощью меню Symbolic > Variable
(Символьный>Переменная). Например: 1.
2
cos ( x ) d x
1.
cos ( x ) . sin ( x )
2
x
2
Если функция не задана аналитически или не позволяет получить первообразную
в
виде
формулы,
имеется
возможность
численного
дифференцирования и численного расчета определенных интегралов. Численные
методы
используют
и
для
решения
дифференциальных
уравнений. С помощью программы MathCad можно решать уравнения и системы уравнений первого порядка с заданными начальными условиями. Уравнение более высокого порядка надо сначала преобразовать в систему уравнений первого порядка. 1.1.2. Приемы работы с системой MathCad Документ программы MathCad называется рабочим листом. Он содержит объекты: формулы и текстовые блоки. В ходе расчетов формулы обрабатываются последовательно, слева направо и сверху вниз, а текстовые блоки игнорируются. Ввод информации осуществляется в месте расположения курсора. Программа MathCad использует три вида курсоров. Если ни один объект не выбран,
используется
крестообразный
курсор,
определяющий
место
создания следующего объекта. При вводе формул используется уголковый 7
курсор, указывающий текущий элемент выражения. При вводе данных в текстовый блок применяется текстовый курсор в виде вертикальной черты.
1.1.3. Ввод формул Формулы — основные объекты рабочего листа. Новый объект по умолчанию является формулой. Чтобы начать ввод формулы, надо установить крестообразный курсор в нужное место и начать ввод букв, цифр, знаков операций. При этом создается область формулы, в которой появляется уголковый курсор, охватывающий текущий элемент формулы, например имя переменной (функции) или число. При вводе бинарного оператора по другую сторону знака операции автоматически появляется заполнитель в виде черного прямоугольника. В это место вводят очередной операнд. Для управления порядком операций используют скобки, которые можно вводить вручную. Уголковый курсор позволяет автоматизировать такие действия. Чтобы выделить элементы формулы, которые в рамках операции должны рассматриваться как единое целое, используют клавишу ПРОБЕЛ. При каждом ее нажатии уголковый курсор «расширяется», охватывая элементы формулы. После ввода знака операции элементы в пределах уголкового курсора автоматически заключаются в скобки. Элементы формул можно вводить с клавиатуры или с помощью специальных
панелей
управления.
Панели
управления
(рисунок
1)
открывают с помощью меню View (Вид) или кнопками панели управления Math (Математика). Для ввода элементов формул
предназначены
следующие панели:(см. рис. 1.1): ° панель управления Arithmetic (Арифметика) для ввода чисел, знаков типичных математических операций и наиболее часто употребляемых стандартных функций; ° панель управления Evaluation (Оценка) для ввода операторов вычисления и знаков логических операций; 8
° панель управления Graph (График) для построения графиков; ° панель управления Matrix (Матрица) для ввода векторов и матриц и задания матричных операций; ° панель
управления
Calculus
(Подсчет)
для
задания
операций,
относящихся к математическому анализу; ° панель управления Greek (Греческий) для ввода греческих букв (их можно также вводить с клавиатуры, если сразу после ввода соответствующего латинского символа нажимать сочетание клавиш CTRL+G, например [W][CTRL+G]-Ω); ° панель управления Symbolic (Символьный) для управления аналитическими преобразованиями. Введенное
выражение
обычно
вычисляют
или
присваивают
переменной. Для вывода результата выражения используют знак вычисления, который выглядит как знак равенства и вводится при помощи кнопки Evaluate Expression (Вычислить выражение) на панели инструментов Evaluation (Счет). Знак присваивания изображается как «:=», а вводится при помощи кнопки Assign Value (Присвоить значение) на панели инструментов Evaluation (Счет). Слева от знака присваивания указывают имя переменной. Оно может содержать латинские и греческие буквы, цифры, символы «’», «_», а также описательный индекс. Последний вводится с помощью символа «.» и изображается как нижний индекс, но является частью имени переменной, например Vmin. Индексы, определяющие отдельный элемент вектора или матрицы, задаются по-другому, с помощью символа «[».
9
Рисунок 1 − Панели инструментов программы MathCad Переменную, которой присвоено значение, можно использовать далее в
документе
в
вычисляемых
выражениях.
Чтобы
узнать
значение
переменной, следует использовать оператор вычисления. В следующем примере вычислена площадь круга с радиусом 2 (использованы переменные r и s, значение постоянной π определено в программе MathCad по умолчанию) r := 2
s := π ⋅ r 2
s = 12 .566
1.1.4. Ввод текста
Текст, помещенный в рабочий лист, содержит комментарии и описания и предназначен для ознакомления, а не для использования в расчетах. 10
Текстовый блок создается нажатием кнопки с буквой А на панели инструментов или с помощью команды Insert > Text Region (Вставка > Текстовый блок). Иногда требуется встроить формулу внутрь текстового блока. Для этого служит команда Insert > Math Region (Вставка > Формула). 1.1.5. Форматирование формул и текста Для форматирования формул и текста в программе MathCad используется панель инструментов Formatting (Форматирование). С ее помощью можно индивидуально отформатировать любую формулу или текстовый блок, задав гарнитуру и размер шрифта, а также полужирное, курсивное или подчеркнутое начертание символов. В текстовых блоках можно также задавать тип выравнивания и применять маркированные и нумерованные списки. В качестве средств автоматизации используются стили оформления. Выбрать стиль оформления текстового блока или элемента формулы можно из списка Style (на панели инструментов Formatting (Форматирование). Стиль оформления имени переменной учитывается при ее определении. Так, переменные х и х рассматриваются как различные и не взаимозаменяемы. 1.1.7. Стандартные и пользовательские функции Произвольные
зависимости
между
входными
и
выходными
параметрами задаются при помощи функций. Функции принимают набор параметров и возвращают значение, скалярное или векторное (матричное). В формулах можно использовать стандартные встроенные функции, а также функции, определенные пользователем. Чтобы использовать функцию в выражении, надо определить значения входных параметров в скобках после имени функции. Имена простейших математических
функций
можно
ввести
с
панели
инструментов
Arithmeti(Арифметика). Информацию о других функциях можно почерпнуть в справочной системе. Вставить в выражение стандартную функцию можно 11
при помощи команды Insert > Function (Вставка > Функция). В диалоговом окне Insert Function (Вставка функции) слева выбирается категория, к которой относится функция, а справа — конкретная функция. В нижней части окна выдается информация о выбранной функции. При вводе функции через это диалоговое окно автоматически добавляются скобки и заполнители для значений параметров. Перед
применением
пользовательские
функции
должны
быть
определены. Определение задается при помощи оператора присваивания. В левой части указывается имя пользовательской функции и в скобках формальные параметры — переменные, от которых она зависит. Справа от знака присваивания эти переменные должны использоваться в выражении. При использовании пользовательской функции в последующих формулах ее имя вводят вручную. В диалоговом окне Insert Function (Вставка функции) имя определенной пользователем функции не отображается.
1.1.8. Построение графиков Чтобы построить двумерный график в координатных осях Х-У, надо дать команду Insert > Graph > X-Y Plot (Вставка > График > Декартовы координаты). В области размещения графика находятся заполнители для указания отображаемых выражений и диапазона изменения величин. Заполнитель у середины оси координат предназначен для переменной или выражения, отображаемого по этой оси. Обычно используют диапазон или вектор значений. Граничные значения по осям выбираются автоматически в соответствии с диапазоном изменения величины, но их можно задать и вручную. В одной графической области можно построить несколько графиков. Для этого надо у соответствующей оси перечислить несколько выражений через запятую.
12
Разные кривые изображаются разным цветом, а для форматирования графика надо дважды щелкнуть на области графика. Для управления отображением построенных линий служит вкладка Traces (Линии) в открывшемся диалоговом окне. Текущий формат каждой линии приведен в списке, под которым расположены элементы управления, позволяющие изменять формат. Для построения трехмерного графика необходимо задать матрицу значений. Отобразить ее можно в виде поверхности, столбчатой диаграммы или линий уровня.
Задание 1. Вычислить значения переменных по заданным значениям исходных данных и расчётным формулам.
Вариант 1
a=
2 cos ( x − π 6 ) ; 1 / 2 + sin 2 y
b =1+
z2 ; 3 + z2 5
x = 1,426 у = -1,220 z = 3,5
Вариант 2
a = xy/x − y / x ; b = ( y − x)
Вариант 3
Вариант 4
x = 1,825
y − z ( y − x) 1 + ( y − x)
2
у = 18,225
;
z = -3,298
x 2 x3 x 4 S = 1+ x + + + ; 2! 3! 4! 3 K = x(sin x + cos2 y ); Y =e
− bf
x = 0,335 у = 0,025
sin (af + b ) − bf + a ;
S = b sin (af cos 2 f ) − 1;
a = -0,5 b = 10,7
2
f = 0,44 13
Вариант 5
ω = x 2 + b − b 2 sin 3 ( x + a ) x ; Y = cos2 x 3 −
x a +b 2
b = 15,5
;
2
a = 1,5
x = -2,9
Вариант 6
S = x 3 tg 2 ( x + b ) +
a
2
x+b
;
a = 16,5 b = 3,4
bx 2 − a Q = ax ; e −1 Вариант 7
x = 0,61
x 2 ( x + 1) − sin 2 ( x + a ); b xb 3 + cos 2 ( x + b ) ; S= a R=
a = 0,7 b = 0,05 x = 0,5
Вариант 8
x 2 x3 x 4 S =1+ x + + + ; 2! 3! 4! 3 K = x(sin x + cos 2 y ); Вариант 9
a=
x = 0,335 у = 0,025
2 cos ( x − π 6 ) ; 1 / 2 + sin 2 y
x = 1,582 у = -1,220
z2 b =1+ ; 3 + z2 5
z = 2,9
Вариант 10
a ; sin ( x a ) d = ae −a cos bx ; a
Y = btg 2 x −
a = 3,2
2
( )
b = 17,2 x = -4,8
Вариант 11
a = xy/x − b = (y − x)
x = 2,152
y/x; y − z (y − x) 1 + (y − x)
2
у = 15,225
;
z = -2,322
14
Вариант 12 Y = e−bf sin(af + b) − bf + a ;
b = 15,5
S = b sin(af 2 cos 2 f ) − 1;
f = -2,9 a = 1,5
ЛАБОРАТОРНАЯ РАБОТА №2 РЕШЕНИЕ ОБЫКНОВЕННЫХ ДИФФЕРЕНЦИАЛЬНЫХ УРАВНЕНИЙ.
В
связи
с
большим
разнообразием
типов
дифференциальных
уравнений в систему MathCAD не включены аналитические средства их решения. Однако как отдельные дифференциальные уравнения, так и системы можно решать численными методами (в частности методом конечных разностей). Обычно решение заключается в нахождении ряда значений хi и yi искомой зависимости y (x) при i, изменяющемся от 0 до N при шаге изменения
х,
равном
h.
Будем
рассматривать
способы
решения
дифференциального уравнения, при которых h = const. Рассмотрим
методы
решения
обыкновенных
дифференциальных
уравнений первого порядка вида Y '=f (X, Y). Метод Эйлера реализуется применением на каждом шаге вычислений
следующих итерационных выражений: xi + 1 = xi + h yi + 1 = yi + hf (x, y) При этом для i = 0 значения x0 и y0 должны быть известны как начальные
условия,
без
чего
невозможно
единственное
решение.
Погрешность метода пропорциональна h2. Для уменьшения погрешности решения следует применять более точные методы. Например, метод Эйлера с пересчетом реализуется следующими итерационными выражениями на каждом шаге вычислений: xi + 1 = x i + h 15
yi + 1 = y i + h * (f (xi , yi) + f (xi + h, yi + h * f (xi , yi ))) / 2 Погрешность метода пропорциональна h3. При высоких требованиях к точности решения можно воспользоваться методом Рунге-Кутта, реализующийся следующими формулами:
K1(x, y) = h*f (x, y) K2(x, y) = h*f (x + h/2, y + k1(x, y)/2) K3(x, y) = h*f (x + h/2, y + k2(x, y)/2) K4(x, y) = h*f (x + h, yi + k3(x, y)) xi + 1 = x i + h yi + 1 = y i + (k1(x, y) + 2* K2(x, y) + 2* K3(x, y) + K4(x, y)) / 6 Погрешность метода пропорциональна h5. Для решения обыкновенных дифференциальных уравнений 2 порядка
Y''
+ p(x)Y' + g(x)Y = f(x) c граничными условиями k11*Y(a) + k12*Y'(a) = A, K21*Y(b) + k22*Y'(b) = B, также применяется метод конечных разностей, при этом производные входящие в уравнение и дополнительные условия заменяются следующими конечно-разностными отношениями
Y′ =
Yi +1 − Yi h
Yi′+′1 =
Yi′+1 − Yi′ Yi +1 − Yi − Yi − Yi −1 Yi +1 − 2Yi + Yi −1 = = 2 h h h2
Y′ =
Yi+1 −Yi−1 2h
Y′ =
Yi − Yi −1 h
В результате получим систему алгебраических уравнений, решение которой даст таблицу приближенных значений искомой функции. Пример 1. Решить обыкновенное дифференциальное уравнение 2-го порядка: 16
Y''+XY'-0,5Y/X=1 с граничными условиями: Решение:
Yi+1 − 2Yi +Yi−1 Yi+1 −Yi Yi + − 0 . 5 =1 X i h2 h Xi
(i = 1,2)
Из краевых условий составим конечно-разностные уравнения в конечных точках Y0 + 2
Y1 − Y0 =1 h
Y3 = 2.15 Задача сводится к решению системы уравнений Y2 − Y1 Y1 ⎧Y2 − 2Y1 + Y0 2 . 1 0 . 5 + − =1 ⎪ 0.01 0.1 2.1 ⎪ ⎪Y3 − 2Y2 + Y1 + 2.2 Y3 − Y2 − 0.5 Y2 = 1 ⎪ 0.01 0.1 2.2 ⎨ ⎪ Y −Y ⎪Y0 + 2 1 0 = 1 0.1 ⎪ ⎪⎩Y3 = 2.15
Задание
2.1.
Решите
на
отрезке
[x0,xend]
задачу
Коши
y′ = f ( x, y), y( x0 ) = y0 методом Рунге-Кутта с постоянным шагом. Вид уравнения и начальные значения заданы в таблице 2.1. Изобразите графики решений, вычисленных с шагами h , 2h и h/2. Таблица 2.1 – Данные для расчета
Вариант 1 2 3 4
f(x, y, y′)=0 (e x + 1)dy + e x dx = 0
Начальное условие y (0 ) = 0.5
xend 2
y ln y + xy ′ = 0
y (1) = e
2.6
y (0 ) = −tg 2
2
y (1) = arctg (2 − e )
3
4 − x 2 y′ + xy 2 + x = 0 2 − ex 3e tgy dx + dy = 0 cos 2 x x
17
5
(1 − e x ) yy ′ = e x
y (0 ) = 1
6
y ′ sin x = y ln y
π
7 8
xdx ydy − =0 1+ y 1+ x (1 + y 2 ) dx = xdy
⎛π ⎞ y⎜ ⎟ = e ⎝2⎠ y (1) = 1
π
9
2 y = y′
⎛π ⎞ y⎜ ⎟ = 1 ⎝4⎠ y (0 ) = 1
10
(e x + 2)dy + 2e x dx = 0
1.6
11
2 y ln y + xy ′ = 0`
1 9 y (1) = e
12
π2 4
y (0 ) =
y (0 ) = −1
− x 2 y ′ + xy 2 + x = 0
2.8
3
2
2.6 2
Порядок выполнения задания: 1. Присвойте начальное значение решения переменной у0 . 2. Определите правую часть уравнения f(x,y). 3. Вычислите решение, используя функцию rkfixed с параметром N, вычисленным по формуле
N=
xend − x0
.
h
4. Сохраните решение в матрице У1. 5. Вычислите решение, используя функцию rkfixed с параметром N, вычисленным по формуле
N= 2
xend − x0 h
.
1. Сохраните решение в матрице У2. 7. Вычислите решение, используя функцию rkfixed с параметром N, вычисленным по формуле
N=
xend − x0 2h
.
8. Сохраните решение в матрице У3. 9. Постройте на одном графике все три найденных решения. 10. Оцените погрешности найденных решений по формуле Рунге.
18
Задание 2.2 Решите задачу Коши
y1′ = f1 ( x, y1 , y 2 ), y 2′ = f 2 ( x, y1 , y 2 ), y1 (a ) = y1, 0 , y 2 (a ) = y2,0
на
отрезке
[a,b] методом Рунге-Кутты с постоянным шагом h=0.1. Изобразите графики решений, вычисленных с шагом h, 2h и h/2. Вид уравнений и начальные значения заданы в таблице 2.2.. Таблица 2.2 – Данные для расчета
Вариант 1
f1 ( x, y1 , y 2 )
f 2 ( x, y1 , y 2 ) sin ( y1 y 2 )
y1 (a )
1
sin ( x + y1 )
y 2 (a )
0
a -1
b 1
0.5
1.5
0
2
2
⎛ ⎞ 1 ⎟ arctg⎜⎜ 2 2 ⎟ ⎝ 1 + y1 + y2 ⎠ arctg x 2 + y22
3
x 2 y1 + y2
cos( y1 + xy 2 )
-1
1
0
4
4
x 2 + y 22
xy1 y 2
1
0
0
5
0.2
0
-1
1
0
0
0
4
0.5
-0.5
-1
3
2
2
5
0
-1
3
1.2
0
2
1
1
3
3.5
2
4
(
)
x
5
1+ x + y 2
y2 1+ x + y
2 2
2
2 1
6
sin(x 2 + y 22 )
cos ( xy 1 )
7
sin y 2
cos y1
8
x cos ( y 1 + y 2 )
sin ( y1 − y 2 ) -0.6
9
sin y1 cos 2 y 2
cos y1 cos y 2
10
2 3x 2 + y12 + y1
11
y 12 y2
y12 − y 2
12
y 2 + x 2 + y12
y 2 cos x − sin 2 0.8
0
x 2 + y12 + y 2 1.2
1
Порядок выполнения задания: 1. Присвойте переменной ORIGIN значение, равное единице. 2. Присвойте начальное значение решения переменной у0 . 3. Определите правую часть уравнения f(x,y). 4. Вычислите решение, используя функцию rkfixed с параметром N, вычисленным по формуле
N=
xend − x0 h 19
.
5. Сохраните решение в матрице У1. 6. Вычислите решение, используя функцию rkfixed с параметром N, вычисленным по формуле
N= 2
xend − x0 h
.
7. Сохраните решение в матрице У2. 8. Вычислите решение, используя функцию rkfixed с параметром N, вычисленным по формуле
N=
xend − x0 2h
.
9. Сохраните решение в матрице У3. 10. Постройте на одном графике все три найденные решения. 11. Оцените погрешности найденных решений по формуле Рунге. Задание 2.3. Найдите общее решение линейного однородного
уравнения второго порядка y ′′ + a1 y ′ + a 2 y = 0 . Решите задачу Коши y ′′ + a1 y ′ + a 2 y = 0 , y (a ) = y0 , y ′( a ) = y1 . Изобразите его график. Значения
параметров а1, а2 и а заданы в таблице 2.3. Таблица 2.3 – Данные для расчета
Вариант
a1
a2
y(a)
y′(a)
a
1
2
0
1
1
0
2
-4
4
0
1
0
3
2
0
0
0
π/2
4
0
1
3
0
-π/2
5
2
5
0
0
1
6
-4
4
1
1
0.3
7
6
13
-1
1
0.25
8
0
1
4
1
π/2
9
2
5
6
2
-π/2
10
-4
8
0
2
1
11
2
0
0
2
0
12
-4
4
-1
0.5
2
20
Порядок выполнения задания: 1. Присвойте переменной ORIGIN значение, равное единице. 2. Присвойте начальное значение решения переменной у0 . 3. Определите правую часть уравнения f(x,y). 4. Вычислите решение, используя функцию rkfixed с параметром N, вычисленным по формуле
N=
xend − x0 h
.
5. Сохраните решение в матрице У1. ЛАБОРАТОРНАЯ РАБОТА №3 РЕШЕНИЕ ДИФФЕРЕНЦИАЛЬНЫХ УРАВНЕНИЙ В ЧАСТНЫХ ПРОИЗВОДНЫХ
В зависимости от вида дополнительных условий , существуют 1)
краевая задача для уравнений с частными производными
2)
задача Коши для уравнений с частными производными
3)
нестационарная (смешанная) краевая задача
В первом случае реение U (x, t) ищется в ограниченной области и задаются условия на ее границе U (a, t), U (b, t) (граничные или краевые). Во втором – одной независимой переменной является время и задаются условия в начальный момент времени (начальные условия) U (x, c), U (x, d). В последнем случае задаются начальные и граничные условия (при этом получающиеся решения меняются с течением времени). Построение разностных схем решения уравнений
с частными
производными основано на введении сетки в рассматриваемом пространстве. Узлы сетки являются расчетными точками. Искомая функция является сеточной, ее значения в узлах определяются координатами U (xi, tj) = Ui, (см. рис.3.1.). Шаг разбиения по оси х равен h, по оси t – равен к.
21
j
t
U (xi, tj)
d=tj
c=t0 a=x0
b=xi
x
Рис. 3.1 Прямоугольная сетка. Частные производные, входящие в уравнения заменяются следующими конечно-разностными соотношениями
∂u u ( x + h , t ) − u ( x , t ) u i +1, j − u i , j = = ∂x h h
∂ u u ( x , t + k ) − u ( x , t ) u i , j +1 − u i , j = = ∂t k k ∂ 2u ui +1, j − 2ui , j + ui −1, j = h2 ∂x 2
∂ 2u u i , j +1 − 2 u i , j + u i , j +1 = 2 ∂t k2 ПРИМЕР 1. УРАВНЕНИЕ ПЕРЕНОСА Рассмотрим
пример
дифференциального
производных первого порядка (уравнение переноса).
∂u ∂u +a = F (x , t ) ∂t ∂x
22
уравнения
в
частных
Пусть скорость переноса а=1, 0 ≤ t ≤ 0 .6, 0 ≤ x ≤ 0 .6 F(x, t) = x+t Начальное условие U(x, 0) = 4x Граничное условие U(0, t) = t2 Искомая функция U зависит от времени t и координаты х. Пусть шаг по осям х и t равен 0.1 Построим равномерную сетку хi = ih, tj = jk, i, j = 0,1…6 Введем обозначения V(x) = 4x, W(t) = t2 Вместо функций U(x, t), F(x, t), V(x), W(x) будем рассматривать сеточные функции, значения которых в узлах (xi, tj) соответственно равны Ui, j,
Fi, j = F(xi, tj), V(xi) = Ui, 0, W(tj) = U0, j. Составим разностное уравнение,
используя шаблон в виде правого нижнего уголка (см. рис. 3.2.2.)
i, j+1
i-1, j
i, j
рис.3.2 Шаблон двухслойной схемы
U i , J +1 − U i , j k
U i , j+1 − U i , j 1 Решая
=
+a
U i , j − U i − 1, j h
= Fi , j
ak ak U i , j + U i−1, j + kFi , j h h
разностное
уравнение
относительно
неизвестного значения Ui, j+1 на J+1 слое, получаем
Ui, j +1 = λUi −1, j + (1 − λ )Ui, j + kFi, j λ = 23
ak h
единственного
i = 1,2,..6
j = 0,1,..5
Полученная схема явная, так как значения сеточной функции в каждом узле верхнего слоя j+1 выражается явно через ранее найденные значения на предыдущем слое. Для начала счета, т.е. для вычисления сеточной функции на первом слое, необходимы ее значения на слое j=0. Они определяются начальным условием Ui , 0 = Vi i=0,1,…6. Граничное условие записывается в виде U0 , j= Wj, j = 1,2,…6. Данная схема устойчива, если 0 ≤ k ≤ h / a . ПРИМЕР 2. ВОЛНОВОЕ УРАВНЕНИЕ Одним из наиболее распространенных в инженерной практике уравнений с частными производными 2-го порядка является волновое уравнение, описывающее различные виды колебаний. Одномерное волновое уравнение описывает продольные колебания стержня, поперечные колебания тонкого стержня. Двумерное – колебания тонкой пластины. Трехмерное – распространение волн в пространстве. Рассмотрим одномерное волновое уравнение:
∂ 2u = a ∂t 2
2
∂ 2u ∂x 2
Для поперечного колебания функция u(x, t) описывает положение струны в момент t. a2 =
T , где Т – натяжение струны, р – ее плотность. p
Начальные условия задают в начальный момент времени t=0. u(t=0)= u (x,0) = V (x),
∂u = W (x ) ∂t
V(x) – начальная форма струны, W(x) – скорость точек струны Граничные условия: для струны длины l задают условия на ее концах. u(x=0) = u (0, t) = G (t) 24
u(x=l) = u (l, t) = H (t) Для построения разностной схемы выберем шаблон (рис 3.3)
i, j+1
i-1, j
k
h
i+1, j
i, j
i, j-1 рис.3.3 Шаблон трехслойной схемы
u i , j + 1 − 2 u i , j + u i , j −1 k2
= a2
u i + 1, j − 2 u i , j + u i − 1, j h2
Отсюда можно найти явное выражение для значения сеточной функции на j+1 слое.
u i , j + 1 = 2 (1 − λ )u i , j + λ (u i + 1, j + u i −1, j ) − u i , j −1
где λ = a2 k2 / h2 ; i = 1,…i-1; j = 1,…,k-1 здесь , как обычно в трехслойных схемах, для определения значений на j+1 слое нужно знать решение на j и j-1 слоях. Поэтому начать счет можно лишь для второго слоя, а решение на нулевом и первом слоях должны быть известны. Они находятся с помощью начальных условий. На нулевом слое имеем ui, 0 = u (x, 0) = V (xi). Для получения решения на первом слое заменим производную конечно-разностным соотношением.
u − u i,0 ∂u = W (x i ) / t = 0 = i ,1 ∂t k Откуда получим ui, 1 = ui, 0 + kW (xi)
i = 0,1,…,I
Краевые условия: u (0, t) = u0, j = G(tj) 25
j = 2,…, J
U (I, t) = uI, j = H (tj) Данная схема условно устойчива: условия устойчивости
ak <1 h ПРИМЕР 3. УРАВНЕНИЕ ТЕПЛОПРОВОДНОСТИ Запишем смешанную краевую задачу в виде:
∂u ∂ 2u =a 2 ∂t ∂x
, 0 ≤ x ≤1, t > 0 , a > 0
начальные условия u (x, 0) = f (x), граничные условия u (0, t) = V (x), u (l, t) = W (x), где f (x) – начальное распределение температуры (при t=0) V (x) и W (x) – распределение температуры на концах отрезка в момент времени t. Введем прямоугольную сетку xi = x0 + ih
(i = 0,1,…,I)
tj = t0 + jk
(j = 0,1,…,J)
h и k – соответственно шаг сетки по направлению х и t. Значение функции в узлах сетки ui , j = u (xi, tj) Заменяя в исходном уравнении частные производные искомой функции с помощью конечных разностей, получаем разностную схему
u i , j +1 − u i , j k i = 1,2,…,I-1
=a
u i + 1, j − 2 u i , j + u i − 1, j h2 j = 0,1,…,J
В записи этой схемы для каждого узла сетки использован шаблон (см. рис. 3.4.)
26
i, j+1
i-1, j
i+1, j
i, j Рис.3.4. Шаблон двухслойной схемы
u i , j +1 = λ u i +1, j + (1 − 2 λ )u i , j + λ u i −1, j где λ =
ak 1 ≤ h2 2
Схема устойчива при λ ≤ 1/ 2 Значения на нулевом слое находятся из начальных условий ui, 0 = f (xi) Решение на границе находятся из граничных условий: U0, j = V (tj) UI, j = W (tj) Примеры
решения
дифференциальных
уравнения
в
частных
производных с помощью встроенных функций системы MathCad приведены в приложениях D,E,F. Задание 3.1. Решение смешанной задачи
струны.
для уравнения колебания
Используя метод сеток, решить уравнение колебания струны ∂ 2U ∂ 2U = 2 ∂ 2Т ∂ х
с начальными условиями U(x,0)=V(x),Ut(x,0)=W(x)
и краевыми условиями U(0,t)=G(t), U(1,t)=H(t) Решение выполнить с шагом h=0.1 по оси х, к=0.05 по оси t, причем 0<X<1, 0
Вариант 2. V(x)=x cos πx
Вариант 1. V(x)=x(x+1) 27
W(x)=cos x
W(x)=x(2-x)
G(t)=0
G(t)=2t
H(t)=2(t+1)
H(t)=-1
Вариант 3. V(x)=cos πx/2
Вариант 4. V(x)=(x+0.5)(x-1)
W(x)=x^2
W(x)=sin(x+0.2)
G(t)=1+2t
G(t)=t-0.5
H(t)=0
H(t)=3t
Вариант 5. V(x)=2x(x+1)+0.3
Вариант 6. V(x)=(x+0.2)sinπx/2
W(x)=2sinx
Вариант 7.
W(x)=1+x^2
G(t)=0.3
G(t)=0
H(t)=4.3+t
H(t)=1.2(t+1) Вариант 8. V(x)=3x(1-x)
V(x)=xsinπx W(x)=(x+1)^2
Вариант 9.
W(x)=cos(x+0.5)
G(t)=2t
G(t)=2t
H(t)=0
H(t)=0 Вариант 10. V(x)=(x+1)sinπx
V(x)=x(2x-0.5) W(x)=cos2x
W(x)=x^2+x
G(t)=t^2
G(t)=0
H(t)=1.5
H(t)=0.5t
Вариант 11. V(x)=(1-x)cosπx/2
Вариант 12. V(x)=0.5x(x+1)
W(x)=2x+1
W(x)=xcosx
G(t)=2t+1
G(t)=2t^2
H(t)=0
H(t)=1
Задание 3.2. РЕШЕНИЕ УРАВНЕНИЯ ТЕПЛОПРОВОДНОСТИ Используя метод сеток, составить решение смешанной задачи для дифференциального уравнения параболического типа (уравнения
28
теплопроводности) (x)
δU δ 2U = δΤ δx 2
при заданных начальных условиях U( x ,0) = f
U (0,t)=V (t) , U( x ,0) = f (x) , U (0,t)=V (t) , U (0.6,t) =W(t), где x
[0;0.6]. Решение выполнить при h=0.1 , считая λ = 1/6. Вариант 1. U(x,0) =cos2x
Вариант 2. U(x,0) = x(x+1)
U(0,t) = 1- 6t
U (0,t) =0
U(0.6;t)=0,3624
U(0.6;t)=
t+0,96 Вариант 3 U(x,0) = 1,2 +lg (x+0,4)
Вариант 4.U (x,0) = 1-lg(x+0,4)
U(0,t) = 0,8+ t
U (0,t) = 2t
U (0.6;t) = 1,2
U (0.6;t)
=0,932 Вариант 5.U(x,0) = 3x(2-x)
Вариант 6. U(x,0) = 1-lg(x+0,4)
U(0,t) = 0
U(0,t) =1,4
U(0,6;t)= t+2,52
U(0,6;t)=t+1
Вариант 7. U(x,0) = sin(0,55x+0,03)
Вариант 8. U(x,0) =2x(1-x)+0,2
U(0,t) = t+0,03
U(0,t) =0,2
U(0,6;t)=0,354
U(0,6;t)= t+0,68
Вариант 9. U(x,0) =sinx+0,08
Вариант 10. U(x,0) = cos(2x+0,19)
U(0,t) = 0,08+2t
U(0,t) = 0,932
U(0,6;t) = 0,6446
U(0,6;t) = 0,1798
Вариант 11. U(x,0) = 2x(x+0,2)+0,4
Вариант 12. U(x,0) = lg(x+0,26)+1
U(0,t) = 2t+0,4
U(0,t) = 0,415+t
U(0,6;t) = 1,36
U(0,6;t) = 0,9345 29
ЛАБОРАТОРНАЯ РАБОТА №4 ДИНАМИЧЕСКИЕ МОДЕЛИ
Методы
исследования
поведения
решений
дифференциальных
уравнений, изложенные в предыдущих разделах, можно успешно применять при исследовании моделей реальных систем, зависящих от времени. В этом разделе будут описаны некоторые биологические и экономические модели.
4.1.1. Модель «хищник-жертва» В динамике популяций есть много примеров, когда изменение численности популяций во времени носит колебательный характер. Одним из самых известных примеров описания динамики взаимодействующих популяции являются уравнения Лотки-Вольтерра. Рассмотрим модель взаимодействия хищников и их жертвы, когда между особями одного вида нет соперничества. Пусть х1 и х2 – число жертв и хищников соответственно. Предположим, что относительный прирост жертв х&1 = а – bx2, а,b>0, где а –удельная скорость размножения жертв в х1 отсутствие хищников, -bx2 – потери от хищников. Размножение популяции хищников зависит от количества пищи (жертв), при отсутствии пищи (х 1 =0) относительная скорость изменения популяции хищников равна наличие пищи компенсирует убывание, и при х1>0 имеем
х& 2 = - с, с>0, х2
х& 2 = -с + dx1, d>0. х2
Таким образом, система уравнений Лотки-Вольтерра имеет вид: ⎧ x&1 = (a − bx 2 )x1 ⎨ ⎩ x& 2 = (− c + dx1 )x2
где a, b, c, d>0.
30
Ниже приведен фрагмент рабочего документа Mathcad, содержащий определение системы Лотки-Вольтерра, фазовый портрет системы при a=4, b=2.5, c=2, d=1 и графики решения с начальным условием x1 (0)=3, x2(0)=1. Пример 1. d x1 = (a − bx2 )x1 dt
d x2 = (− c + dx1 )x2 dt
ORIGIN 1 a
4
b
2.5
c
2
d
1
x
3 1
F( t , x) X
a
b .x2 .x1
c
d .x1 .x2
rkfixed( x, 0 , 10, 400, F ) 4
3 <2 > X <3 > X
2
1
0
0
1
2
3
4
5 <1 > X
_____ жертвы …….. хищники
31
6
7
8
9
10
хищники
х2 = х1
х1 = х2 = 0
3
2.5
2 <3 > X 1.5
1
0.5
0.5
1
1.5
2
2.5
3
3.5
4
<2 > X
жертвы Для того чтобы построить графики решений и фазовые кривые для различных начальных значений, определите значения параметров системы, определите и введите вектор-столбец начальных условий х для первого решения, определите и введите вектор-функцию правых частей F(t,x) и сохраните в матрице Х решение, вычисленное методом Рунге-Кутта с постоянным шагом на отрезке [0,10] в 400 точках (воспользуйтесь функцией rkfixed(x, 0, 10, 400, F)). Первый столбец этой матрицы содержит значения аргумента t – координаты 400 узлов сетки, второй столбец – значения х1 (число жертв) в узлах сетки, а третий – значения х2 (число хищников). Чтобы вычислить решение при других начальных значениях, присвойте новые значения вектору X и сохраните вычисленное решение в другой матрице. Чтобы построить фазовые кривые, линии, заданные в параметрической форме уравнениями (х=х1(t), y=x2(t)), щелкните по кнопке, введите через запятую в позиции возле оси абсцисс Х<2>, а в позиции возле оси ординат – X<3> . Видно, что процесс имеет колебательный характер. При заданном начальном соотношении числа особей обоих видов 3:1 обе популяции сначала растут. Когда число хищников достигает величины b=2.5, популяция 32
жертв не успевает восстанавливаться и число жертв начинает убывать. Уменьшение количества пищи через некоторое время начинает сказываться на популяции хищников, и, когда число жертв достигает величины x1 =
c = 2, d
число хищников тоже начинает сокращаться вместе с сокращением числа жертв. В этой точке сокращение популяции происходит до тех пор, пока число хищников не достигнет величины
a = 1.6 , в этой точке х&1 = 0 . b
С
этого момента начинает расти популяция жертв; через некоторое время пищи становится достаточно, чтобы обеспечить прирост хищников, обе популяции растут, и процесс повторяется снова и снова. На графике четко виден периодический характер процесса. Количество жертв и хищников колеблется возле величин x1 = 2 , x2 = 1.6 соответственно. Дробные числа здесь не означают “половину волка”: эти величины могут меняться в сотнях, тысячах и т.п. Периодичность процесса явственно видна на фазовой плоскости: фазовая кривая (x1 (t ), x2 (t )) - замкнутая линия. Самая левая точка этой кривой, x2 =
a = 1.6 , - это точка, в которой число жертв достигает наименьшего b
значения. Самая правая точка, x1 = 4 , x2 = 1.6 , - точка пика популяции жертв. Между этими точками количество хищников сначала убывает до нижней точки фазовой кривой, x1 =
c = 2 , где достигает наименьшего значения, а d
затем растет до верхней точки фазовой кривой ( x1 = 2 , x2 = 2.5 ). Фазовая кривая охватывает точку x1 = 2 , x2 = 1.6 . На языке дифференциальных уравнений это означает, что система имеет стационарное состояние x&1 = 0, x& 2 = 0 , которое достигается в точке x1 = 2 , x2 = 1.6 . 4.1.2. Модель ''хищник-жертва'' с внутривидовой конкуренцией
Модель взаимодействующих видов с внутривидовой конкуренцией может быть записана так:
33
⎧ ⎞ ⎛ 2 ⎟ ⎜ ⎪⎪ x& 1 = ⎜⎝ a − bx 2 ⎟⎠ x1 − αx1 , ⎨ ⎛ ⎞ ⎪ x& = ⎜⎜ − c + dx ⎟⎟ x − αx 2 , 1 ⎟⎠ 2 2 ⎪⎩ 2 ⎜⎝
В этом случае поведение решений в окрестности стационарной точки меняется в зависимости от величины и знака параметра α. Ниже приведено исследование системы для α=0.1, а=4, b=2.5, c=2, d=1. Видно, что в этом случае стационарная точка превращается в устойчивый фокус, а решения – в затухающие колебания. При любом начальном состоянии через некоторое время состояние системы становится близким к стационарному и стремится к нему при t→∞. Пример 2. ORIGIN:=1 a
4b
α
0.1
2.5 c
2d
1
a
b .x2 .x1
α . x1
c
d .x1 .x2
α . x2
3
x
1
F( t , x)
X5
2 2
rkfixed( x, 0 , 10, 400, F ) 4
3 <2 > X5 <3 > X5
2
1
0
0
1
2
3
4
5 <1 > X5
____ жертвы - - - хищники хищники
34
6
7
8
9
10
4
3
<3 > X5
2
1
0
1
1.5
2
2.5
3
3.5
4
<2 > X5
α x
0.1 3 1 a
b .x2 .x1
α . x1
c
d .x1 .x2
α . x2
F( t , x)
X6
2 2
rkfixed( x, 0 , 10, 400, F )
Здесь приведены графики решений и фазовая кривая для тех же значений параметров, но при α=-0.1. Как видно, в этом случае стационарная точка является неустойчивым фокусом и амплитуда колебаний численности видов растет. Как близко ни было бы начальное состояние к стационарному, с течением времени состояние системы будет отличаться от стационарного. 20
15 <2 > X6 <3 > X6
10
5
0
0
1
2
3
4
5 <1 > X6
35
6
7
8
9
10
15
10 <3 > X6 5
0
0
2
4
6
8
10
12
14
16
18
20
<2 > X6
_____ жертвы -
4.1.3
- - - хищники
Модель Холлинга — Тэннера
На примере модели Лотки-Вольтерра и модели Лотки-Вольтерра с логистической поправкой было продемонстрировано одно из важнейших свойств центров — они легко разрушаются даже при самых малых изменениях правой части. Большинство моделей является идеализацией действительности: в них внимание сосредоточено на некоторых основных переменных и соотношениях между ними. Поэтому устойчивость моделей относительно малых возмущений чрезвычайно важна в приложениях. Модели, не чувствительные к малым возмущениям, называются грубыми. Модель Лотки-Вольтерра неустойчива относительно возмущений, поскольку ее стационарное состояние —особая точка типа «центр». Существует другой вид моделей, в которых возникают незатухающие колебания, — это модели, имеющие на фазовых портретах предельные циклы. Такая модель существует для системы конкурирующих видов — это модель Холлинга — Тэннера. Скорость роста популяции жертв х1 в этой модели равна сумме трех величин: • скорости размножения в отсутствие хищников — rx1; 36
•
влияния внутривидовой конкуренции за пищу при ограниченных
ресурсах – rx1 •
x1 ; K
влияния хищников — wx2
x1 в предположении, D + x1
что хищник
перестает убивать, когда насыщается. Скорость роста популяции хищников x& 2 строится так же, как в модели Вольтерра — Лотка, в предположении, что жертвы встречаются редко. Если для поддержания жизни одного хищника нужно J жертв, то популяция из х1 жертв сможет обеспечить пищей — хищников. Модель роста популяции хищников, в которой их число не может превысить эту критическую величину, имеет вид x& 2 = x 2 ( s −
sJ x2 ) . x1
Таким образом, имеем модель Холдинга — Тэннера: ⎧ ⎪ x&1 = r (1 − ⎪ ⎨ ⎪ x& = s (1 − ⎪⎩ 2
x1 x1 ) x1 − wx 2 k D + x1 J x2 ) x2 x1
где r,s,K,D,J > 0. Можно показать, что при r K −D−2 s< * K 1+ D
на фазовом портрете системы будет устойчивый предельный цикл. В Приложении G приведено решение системы при r= 1, К = 7, w = 1, D=1, s=0.2, J=0.5 и двух различных начальных состояниях. На фазовом портрете хорошо виден предельный цикл. Фазовые кривые системы с начальными состояниями вне и внутри области, ограниченной предельным циклом, "наматываются" извне или изнутри на одну и ту же замкнутую кривую.
37
4.1.4 Модель выравнивания цен
Модель выравнивания цен по уровню актива интересна тем, что в ней можно наблюдать гармонические колебания решений возле стационарного состояния. Предположим, что изменение уровня актива q пропорционально разности между предложением s и спросом d, то есть q'=k(s-d), k>0. Предположим далее, что изменение цены р пропорционально отклонению актива q от некоторого фиксированного уровня q0, так что q′=-m(q-q0), m>0. Таким образом, модель выравнивания цен по уровню актива имеет вид ⎧⎪q ' = k ( s ( p ) − d ( p )) ⎨ ' ⎪⎩ p = − m(q − q 0)
В Приложении Н приведено решение системы, для s(р)= ар + s0, D(р)= =d0+ср, k = 0.3, т = 0.1,q0 = 20, а = 20, s0 =10, d0 = 50, с = -10 при начальном состоянии q(0)=19, p(0) = 2. Видно, что цена и актив колеблются возле стационарного состояния q=q0, p=(d0 - s0)/(a-c).
Фазовая траектория
представляет собой эллипс, охватывающий стационарную точку. Это означает, что колебания актива и цены гармонические.
Задание 4.1 Постройте графики решения и фазовые портреты
динамической системы ⎧ x&1 = (a − bx 2 ) x1 , ⎨ & = ( − + ) x c dx x ⎩ 2 1 2
моделирующей
взаимодействие
популяций
при
заданных
значениях
параметров a,b,c,d . Значения параметров заданы в таблице 4.1. Исследуйте поведение решения, изменяя параметры.
38
Таблица 4.1 – Данные для расчета
Вариант 1 2 3 4 5 6 7 8 9 10 11 12
a 4 4 4 4 4 4 4 5 5 5 5 5
b 3 3 3.5 3.5 3.5 3.5 3.5 4.5 4 4 4 4
c 2 2 2 2 3 3 4 2 2 3 2 2
d 1 2 1 2 1 2 4 1 1 1 2 3
Порядок выполнения задания: 1. Присвойте переменной ORIGIN значение, равное единице. 2. Определите вектор-столбец начальных условий для первой задачи Коши. 3. Определите вектор-столбец правых частей системы. 4. Выберите значение шага интегрирования h и вычислите количество шагов N интегрирования системы на отрезке [x0,xend] по формуле N=
xend − x0 h
.
5. Решите задачу Коши для первого начального условия. 6. Изобразите соответствующую фазовую кривую и график решения. 7. Определите векторы-столбцы начальных условий для каждого начального условия. 8. Решите соответствующие задачи, сохранив каждое решение в отдельной матрице. 9. Изобразите соответствующие фазовые кривые и графики решений.
39
Задание 4.2.2 Исследуйте поведение системы
⎧ x1′ = (a − bx2 ) x1 − αx12 , ⎨ 2 ⎩ x2′ = (−c + dx1 ) x2 − αx2 , моделирующей взаимодействие популяций. Выполните вычисления для значений a,b,c,d из задания 4.2.1 для приведённых ниже значений α (таблица 4.2). Таблица 4.2 – Данные для расчета
Вариант 1 2 3 4
α 0.1 0.15 0.20 0.25
α 0.05 0.22 0.12 0.14
Вариант 5 6 7 8
Вариант 9 10 11 12
α 0.17 0.18 0.1 0.2
Порядок выполнения задания 1.
Установите режим автоматических вычислений.
2.
Присвойте переменной ORIGIN значение, равное 1.
3.
Задайте α=0 и определите значения параметров системы.
4.
Определите вектор-столбец начальных условий для первой
задачи Коши. 5.
Определите вектор-столбец правых частей системы.
6.
Выберите значения шага интегрирования h и вычислите
количество шагов N интегрирования системы на отрезке [x0, xend] по ⎡ xend − x 0 ⎤ ⎥. h ⎣ ⎦
формуле N = ⎢ 7.
Решите задачу Коши для первого начального условия.
40
Изобразите соответствующую фазовую кривую и график
8.
решения.
Задание 4.2. Постройте графики решения и фазовые портреты, найдите
предельные циклы динамической системы Холлинга – Тэннера ⎧ ⎪ x&1 = r (1 − ⎪ ⎨ ⎪ x& = s (1 − ⎪⎩ 2
x1 x1 ) x1 − wx 2 k D + x1 J x2 ) x2 x1
моделирующей взаимодействие конкурирующих видов в условиях ограниченных ресурсов. Исследуйте поведение решения, изменяя параметры r, K, w, s, J в указанном диапазоне( Таблица 4.3). Таблица 4.3 – Данные для расчета
Вариант 1 2 3 4 5 6 7 8 9 10 11 12
r 1 1 1 1 1 1 1 1 1 1 1 1
K 7 7 7 7 7 7 7 7 7 7 7 7
w 1.5 1.7 1.9 2 1.5 1.7 1.9 2 1.5 1.7 1.9 2
s 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2
Порядок выполнения задания
1. Установите режим автоматических вычислений. 41
J 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5
D 1 1 1 1 2 2 2 2 1.5 1.5 1.5 1.5
2. Присвойте переменной ORIGIN значение, равное 1. 3.
Определите
вектор-столбец
начальных
условий
для первой
задачи Коши. 4. Определите вектор-столбец правых частей системы. 5.
Выберите
значение
шага
интегрирования h и
вычислите
количество шагов N интегрирования системы на отрезке ⎡ x end − x0 ⎤ ⎥ h ⎣ ⎦
[х0, хend;] по формуле N = ⎢
6. Решите задачу Коши для первого начального условия. 7.
Изобразите
соответствующую
фазовую
кривую
и
график
решения. 8.
Определите
векторы-столбцы начальных условий для каждого
начального условия. 9. Решите соответствующие задачи, сохранив каждое решение в отдельной матрице. 10.
Изобразите соответствующие
фазовые
кривые и
графики
решений. ЗАДАНИЕ 4.2. Постройте графики решения и фазовые портреты
динамической системы, моделирующей выравнивание цен по уровню актива ⎧⎪q ' = k ( s ( p ) − d ( p )) ⎨ ' ⎪⎩ p = − m( q − q 0)
при заданных функциях спроса и предложения s(p) и d(p) при заданных значениях параметров модели.
Найдите стационарное состояние и
определите его характер. Исследуйте модель, изменяя ее параметры (Таблица 4.3).
42
Таблица 4.3 – Данные для расчета
Вариант 1 2 3 4 5 6 7 8 9 10 11 12
k 0.3 0.3 0.3 0.3 0.3 0.3 0.3 0.3 0.3 0.3 0.3 0.3
a 20 20 20 20 20 20 20 20 20 20 25 25
m 0.1 0.2 0.3 0.4 0.5 0.1 0.2 0.3 0.4 0.5 0.1 0.2
s0 10 10 10 10 10 10 10 10 10 10 10 10
d0 50 50 50 50 50 50 50 50 50 50 50 50
c -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10
q0 20 20 20 20 20 20 20 20 20 20 20 20
Порядок выполнения задания
1. Установите режим автоматических вычислений. 2. Присвойте переменной ORIGIN значение, равное 1. 3. Определите параметры модели. 4. Введите выражения для вычисления значений функций спроса и предложения. 5. Определите вектор-столбец начальных условий. 6. Определите вектор-столбец правых частей системы. 7. Выберите значение шага
интегрирования
h
и
вычислите
количество шагов N интегрирования системы на отрезке [x0,xend] ⎡ xend − x0 ⎤ ⎥ h ⎣ ⎦
по формуле N = ⎢
8. Решите задачу Коши. 9. Изобразите соответствующую фазовую кривую и графики решения. 43
10. Исследуйте свойства решений при различных значениях параметров. 11. Определите векторы-столбцы начальных условий для каждого начального условия. 12. Решите соответствующие задачи, сохранив каждое решение в отдельной матрице. 13. Измените в рабочем документе параметры модели и опишите соответствующие изменения в свойствах решений.
44
Литература 1. Системный анализ в экономике и организации производства. Учебник.
Под общей ред. С.А.Валуева,В.Н.Волковой.-Л.:Политехника,1991. 2. Ф.И.Перегудов, Ф.П.Тарасенко. Введение в системный анализ. –М.:
Высшая школа, 1989 3. Теория выбора и принятия решений. Учебное пособие. -М: Наука, 1982. 4. Экономико-математические методы и прикладные модели.-М: Наука,
1991 5. Казанцев Э.Ф. Технологии исследования биосистем. -М: Машиностроение, 1999. 6. Турчак Л.И. Основы численных методов -М.: Наука, 1987. 7. Дьяконов В.П. Система MathCAD. Справочник. –М.: Радио и связь, 1993. 8. Казанцев Э.Ф. Математика. Учебное пособие – МУМ, 2006. 9. Основы
теории оптимального управления. Учебное пособие для экономических вузов. Под ред. В.Ф.Кротова. - М: Высшая школа, 1990
45