Задание 1 по курсу «Технологии компьютерного моделирования». Использование программных пакетов на примере MVS для моделирования динамических систем 1 Цель работы Закрепить полученные знания по технологии моделирования в программных пакетах для моделирования. Освоить методику вычислительных экспериментов, методику идентификации параметров модели, построение компонентных и объектноориентированных (не все варианты) моделей, понятие гибридного (дискретнонепрерывного) моделирования (опционально). 2 Задание Построить модель (во многих вариантах она собирается из более чем одного компонента/объекта, т.к. даны связанные колебательные системы). Запустить модель (с базовыми значениями параметров), при необходимости выбрать адекватный численный метод. Использовать «план прогона» для задания нужных параметров и начальных условий. Исследовать зависимость от нескольких параметров (в частности, с помощью визуального редактирования их значений). Попытаться решить некорректную задачу – идентифицировать значение какого-либо параметра, который необходим для достижения заданного значения результата (в случае незатухающих колебательных систем – интегрального результата). Останавливать расчет не только по достижению заданного времени, но и в зависимости от значения параметров (необязательно; можно также в зависимости от параметров переключать модель в другой режим). Оформить отчет по задаче (структура выдается отдельно). 3 Варианты задания и баллы В скобках ниже указана сложность задачи в баллах. За не полностью выполненное задание баллов ставится меньше указанной. Баллы за все задания, выполненные в течение года, будут просуммированы и определят итоговую оценку. За элементы дискетного моделирования во всех вариантах полагаются дополнительные баллы, в частности, за переключение режимов (самостоятельно придумать, в какое состояние может переходить система – после предварительных расчетов) – 2-3 балла дополнительно. 3.1 Модель двухлампового генератора Фрюгауфа [5] Каждая лампа описывается уравнением вида (индексы соответствуют лампе №1) x1 ( y1 y 2 ) ( x1 ) x2 , y1 x1 Здесь функция (u ) tg( u / 2), базовые значения параметров: α > 0 (порядка 1), ε = 10–3, 10–6. Расчет до времени Tk = 20. Начальные условия могут быть x1 (0) x2 (0) 0, y1 (0) 2, y2 (0) 0 . При указанных параметрах система получается жесткой, решение имеет характер релаксационного цикла. 3.2 Экогенетическая модель [5] Модель численности популяций двух видов с учетом их взаимодействия и двух медленно меняющихся генетических признаков a. Для первой популяции и первого признака: y1 y1 (2a1 0.5 y1 3.5a1b y2 ), a1 (2 ba1b1a2b y 2 ), вторая популяция – аналогично: y 2 y2 (2a2 0,5 y2 3.5a2b y1 ) , a 2 (2 ba2b1a1b y1 ) . Параметр ε ≤ 0,01, параметр b = 2 или b = 3 – это две разных модификации модели. Начальные условия 0 ≤ y1(0), y2(0) ≤ 40. a1(0) = 0, a2(0) = 10. Расчет до времени Tk = 2000. При указанных параметрах система получается умеренно жесткой. 3.3 Модель «хищник-жертва» [8], несколько подвариантов Одна из самых известных нелинейных моделей в науке, впервые встретилась в популяционной динамике в случае гипотезы «парных взаимодействий особей» (когда одна популяция – хищник, вторая – жертва). Общий вид для двух популяций: N 1 a reproductionN1 b food N1 N 2 – жертва, N 2 c F N1 , N 2 d deathN 2 – хищник (якобы собственное размножение не важно). Вид «трофической функции» foodN1 задается индивидуально или выбирается самостоятельно, например, food N1 N1 или food N1 N1 N1* N1 , «функция размножения» reproduction( x) death( x) x , F ( N1 , N 2 ) N1 N 2 . В задачу входит не только двухпопуляционная модель, но и распространение на случай 34 популяций (хищник, являющийся жертвой другого хищника и т.п.). Задача оценивается выше ввиду необходимости подбора параметров «с нуля». 3.4 «Компактные» модели динамики населения Земли [4-8] Классические модели для отдельной популяции [вариантами задания являются лишь 3-5]: 1. Модель Мальтуса: N aN – неограниченное размножение 2. Логистическая модель: N aN 1 N N 0 – внутривидовая конкуренция за ресурсы 3. Модель поиска партнера с учетом смертности: N aN 2 1 N N 0 bN (к людям обычно не относится); имеется критическое значение коэффициента смертности b = aN0/4, превышение которого всегда приводит к вымиранию. [4] Другие модели дают гиперболический рост населения до середины XX века (что описывает известные факты) 4. «Модель Хорнера-Капицы» (с переходом между состояниями): [8] a a ; причем за счет ограничения N max N (за N aN 2 N N t1 t t1 t 2 время τ прирост населения не может быть больше самого населения) получается a t t 2 N a t1 t 2 N arcctg 1 , а за счет ограничения N min 1 (за a t t0 2 tg время τ не может рождаться меньше одного человека) N N a 1 N . a Здесь τ 42 года можно интерпретировать как характерное время размножения и смертности индивида, а a 67000. При этих значениях (соответствующих историческим данным) N(∞) 14 млн. 5. «Модель Коротаева/Малкова» (нераспространенная): N abP N N , где bP – уровень развития «жизнеобеспечивающих условий» (численность людей, при которой наступает стабилизация), P – уровень развития технологий, пропорциональный, в свою очередь, численности населения: P cNP . [5] 3.5 Модель альвеолярного объема легких [9] Данная однокомпонентная модель рассматривает альвеолярное пространство как один резервуар с переменным объёмом Va (t ) и давлением pa (t ) , учитывает упругость легких и грудной клетки, сопротивление дыхательных путей, сжимаемость и инерционность воздуха в них. Давление воздуха на входе в дыхательные пути pT (t ) и на внешней поверхности грудной клетки p g (t ) являются заданными функциями времени t (в начале моделирования равны нулю, затем их относительное влияние подлежит исследованию). 4 i i 2 2 ai d Va / dt Va / C (t ) pT (t ) pg (t ) A( Rdpg / dt Id pg / dt ), i 1 a4 AII g , a3 A( RI g IRg ), a2 ( A / C 1) I I g ARRg , a1 ( A / C 1) R Rg . Здесь A = 0.0246 л кПа – отношение среднего объёма легких к среднему альвеолярному давлению, I = 0.0025 с2кПа/л – инерционность воздуха в дыхательных путях, Ig = 0.00021 с2кПа/л – инерционность тканей аппарата дыхания, R = 0.13 скПа/л – сопротивление дыхательных путей, Rg = 0.11 скПа/л – сопротивление тканей аппарата дыхания, C = 0.208 л/кПа – растяжимость аппарата дыхания (легких и грудной клетки).