
Лекции_по_дисциплине
.pdf
Компьютерное моделирование
гиперболической, и, облетев Солнце, тело покинет Солнечную систему, если нет - перейдет на эллиптическую орбиту и станет частью системы; пограничная между ними орбита - параболическая.
Все эти утверждения можно проверить и детально исследовать с помощью уравнений (3.24). При этом полезно и удобно использовать одно важнейшее свойство обсуждаемой системы, которого не было у рассмотренных ранее - сохранение полной энергии движущегося тела (такое свойство называется «консервативность»). Полная энергия движущегося небесного
тела m в системе двух тел имеет значение E |
1 |
mv2 |
G |
mM |
. Первое сла- |
|
|
||||
|
2 |
|
|
r |
гаемое – кинетическая, второе - потенциальная энергия. В безразмерных переменных:
Наличие неизменного параметра в ситуации, когда изменяются Vx, Vy, X, Y, позволяет контролировать процесс решения системы дифференциальных уравнений, проверять устойчивость метода, подбирать шаг интегрирования.
КОНТРОЛЬНЫЕ ВОПРОСЫ
1.Какие причины обусловливают особую значимость компьютерного моделирования в физике?
2.Какие аналогии проводят между реальным и компьютерным экспериментом?
3.Какая из составляющих силы сопротивления – линейная или квадратичная – будет доминировать при погружении в воду полого стального шара диаметром 2 м и с толщиной стенки 1 см при достижении им постоянной скорости?
4.Почему учет силы сопротивления среды делает школьные задачи более реалистичными? Приведите примеры.
5.Как можно отобразить результаты моделирования задачи о свободном падении?
6.В чем преимущества и недостатки моделирования с помощью составления программ и с использованием табличного процессора.
7.Как изменяется траектория движения тела, брошенного под углом к горизонту, при отсутствии сопротивления среды? Как меняется эта траектория при наличии сильного сопротивления?
8.Для чего производится обезразмеривание величин?
71

Тарова Инна Николаевна
9.Проверьте в ходе моделирования второй закон Кеплера для эллиптических орбит.
10.Проверьте в ходе моделирования третий закон Кеплера для эллиптических орбит.
11.Сделайте сравнительный анализ характеристик движения тела, брошенного под углом к горизонту, с учетом сопротивления воздуха и без учета. Как они будут изменяться с увеличением скорости?
72

ЛЕКЦИИ по дисциплине: «Компьютерное моделирование» Физико-математический факультет, 10 семестр, всего 33 часа
ЛЕКЦИЯ 4. КОМПЬЮТЕРНОЕ МОДЕЛИРОВАНИЕ В ЭКОЛОГИИ
4.1. ЭКОЛОГИЯ И МОДЕЛИРОВАНИЕ
Экология - одно из слов, появившихся сравнительно недавно у всех на устах и на страницах газет и журналов. Еще в 60-х годах нашего столетия почти никто, кроме узких специалистов, его не знал, да и большинство из тех, кто знал, использовал в таком смысле, который вряд ли способен заинтересовать широкую общественность. А между тем, термину более 120 лет. В 1869 г. немецкий естествоиспытатель Эрнст Геккель предложил составной термин «экология» («эко» - дом, жилище, местопребывание и «логос» - наука, знание) как название раздела биологии, ставшего самостоятельным. Классическая экология - наука о взаимодействии организмов и окружающей среды. Сегодня, говоря об экологии, чаще всего имеют в виду не классическую, а, так называемую, социальную экологию, оформившуюся как научное направление и направление общественно-политической деятельности на 100 лет позднее, и занимающуюся проблемами охраны окружающей среды, взаимодействием с ней человеческого сообщества.
Мы ограничимся некоторыми классическими моделями «старой» экологии, что обусловлено следующими причинами. Во-первых, они достаточно просты и изучены, постановка их вполне очевидна и в познавательном плане интересна и полезна. Во-вторых, модели распространения загрязнения окружающей среды требуют использования весьма сложного математического аппарата, да и сами еще не вполне устоялись. Проблемы охраны окружающей среды чрезвычайно важны, но их обсуждение выходит за пределы нашего курса. Однако, для того, чтобы дать представление о задачах, стоящих перед современными исследователями в этой области, в следующем параграфе приведено описание одной из глобальных моделей, пытающихся выяснить пути взаимодействия экосистемы планеты с индустриальной и экономической системами современного общества.
Остановимся на некоторых понятиях, которые будут встречаться. Под особью понимается отдельный индивидуум, отдельный организм. Популяция - это совокупность особей одного вида, существующих в одно и то же время и занимающих определенную территорию. Сообщество - это совокупность совместно сосуществующих популяций.
В классической экологии рассматриваются взаимодействия нескольких типов:
• взаимодействие организма и окружающей среды;

Тарова Инна Николаевна
•взаимодействие особей внутри популяции;
•взаимодействие между особями разных видов (между популяциями). Математические модели в экологии используются практически с мо-
мента возникновения этой науки. И, хотя поведение организмов в живой природе гораздо труднее адекватно описать средствами математики, чем самые сложные физические процессы, модели помогают установить некоторые закономерности и общие тенденции развития отдельных популяций, а также сообществ. Кажется удивительным, что люди, занимающиеся живой природой, воссоздают ее в искусственной математической форме, но есть веские причины, которые стимулируют эти занятия. Вот некоторые цели создания математических моделей в классической экологии.
1.Модели помогают выделить суть или объединить и выразить с помощью нескольких параметров важные разрозненные свойства большого числа уникальных наблюдений, что облегчает экологу анализ рассматриваемого процесса или проблемы.
2.Модели выступают в качестве «общего языка», с помощью которого может быть описано каждое уникальное явление, и относительные свойства таких явлений становятся более понятными.
3.Модель может служить образцом «идеального объекта» или идеализированного поведения, при сравнении с которым можно оценивать и измерять реальные объекты и процессы.
4.Модели действительно могут пролить свет на реальный мир, несовершенными имитациями которого они являются.
При построении моделей в математической экологии используется опыт математического моделирования механических и физических систем, однако, с учетом специфических особенностей биологических систем:
• сложности внутреннего строения каждой особи;
• зависимости условий жизнедеятельности организмов от многих факторов внешней среды;
• не замкнутости экологических систем;
• огромного диапазона внешних характеристик, при которых сохраняется жизнеспособность систем.
Привлечение компьютеров существенно раздвинуло границы моделирования экологических процессов. С одной стороны, появилась возможность всесторонней реализации сложных математических моделей, не допускающих аналитического исследования, с другой - возникли принципиально новые направления, и, прежде всего - имитационное моделирование.
74

Компьютерное моделирование
4.2. МОДЕЛИ ВНУТРИВИДОВОЙ КОНКУРЕНЦИИ
Рассмотрим простейшую из указанных моделей для вида с дискретными периодами размножения, в которой численность популяции в момент времени t равна N, и изменяется во времени пропорционально величине основной чистой скорости воспроизводства R. Такими видами являются, например, большая часть растений, некоторые виды насекомых, у которых разные поколения четко разнесены во времени. Коэффициент R характеризует количество особей, которое воспроизводится в расчете на одну существующую, а также выживание уже существующих. Данная модель может быть выражена уравнением Nt+1=Nt*R (4.1)
решение которого имеет вид Nt=N0*Rt (4.2)
где N0 - начальная численность популяции. Эта модель, однако, описывает популяцию, в которой отсутствует конкуренция и в которой R является константой; если R>1, то численность популяции будет бесконечно увеличиваться. В реальности в какой-то момент начинают работать механизмы сдерживания роста популяции. В литературе приводится немало интересных примеров быстрого роста численности популяций, если бы для их размножения существовали идеальные условия. Особенно это относится к насекомым, растениям и микроорганизмам, которые могли бы покрыть земной шар толстым слоем, если им создать благоприятные условия для размножения. Но в действительности такого роста популяций, когда их численность увеличивается в геометрической прогрессии, на сколько-нибудь длительных промежутках времени не наблюдается.
Следовательно, в первую очередь необходимо изменить уравнение (4.1) таким образом, чтобы чистая скорость воспроизводства зависела от внутривидовой конкуренции.
Конкуренцию можно определить как использование некоего ресурса (пищи, воды, света, пространства) каким-либо организмом, который тем самым уменьшает доступность этого ресурса для других организмов. Если конкурирующие организмы принадлежат к одному виду, то взаимоотношения между ними называют внутривидовой конкуренцией; если же они относятся к разным видам, то их взаимоотношения называют межвидовой кон-
куренцией.
75

Тарова Инна Николаевна
0 K
На рис. 4.1 показана простейшая возможная зависимость скорости воспроизводства от численности популяции. Точка А отражает ситуацию, в которой численность популяции близка к нулю, конкуренция при этом практически отсутствует, и фактическую скорость воспроизводства вполне можно описывать параметром R в его первоначальном виде. Следовательно, при низкой плотности популяции уравнение (4.1) вполне справедливо. В преобразованном виде оно выглядит так: Nt/Nt+1=1/R
Точка В, напротив, отражает ситуацию, в которой численность популяции высока, и в значительной степени проявляется внутривидовая конкуренция. Фактическая скорость воспроизводства в результате конкуренции настолько снижена, что популяция в целом может не более чем восстанавливать в каждом поколении свою численность, потому что количество родившихся особей уравновешивается количеством погибших. Гипотезе, отраженной на рис. 4.1, соответствует уравнение: Nt+1=(Nt*R)/(1+a*Nt), где a=(R-1)/(K). Это уравнение представляет собой модель роста популяции, ограниченного внутривидовой конкуренцией. Суть этой модели в том, что константа R в уравнении (4.1) заменена на фактическую скорость воспроизводства, т е. R/(1+a*Nt), которая уменьшается по мере роста численности популяции Nt.
В биологии при исследовании развития биосистем строятся динамические модели изменения численности популяций различных живых существ (бактерий, рыб, животных и т.д.) с учетом различных факторов. Взаимовлияние популяций рассматривается в моделях типа "хищник - жертва".
Формальная модель Изучение динамики популяций естественно начать с простейшей модели неограниченного роста, в которой численность популяции ежегодно увеличивается на определенный процент. Математическую модель можно записать с помощью рекуррентной формулы, связывающей численность популяции следующего года с численностью популяции текущего года, с использованием коэффициента роста а: xn+1 =a·xn
76

Компьютерное моделирование
В модели ограниченного роста учитывается эффект перенаселенности, связанный с нехваткой питания, болезнями и т.д., который замедляет рост популяции с увеличением ее численности. Введем коэффициент перенаселенности b, значение которого обычно существенно меньше a(b<<a). Тогда, коэффициент ежегодного увеличения численности равен (a-b·xn) и формула принимает вид:
xn+1=(а-b·xn)·xn
В модели ограниченного роста с отловом учитывается, что на численность популяций промысловых животных и рыб оказывает влияние величина ежегодного отлова. Если величина ежегодного отлова равна с, то формула принимает вид: xn+1=(a-b·xn)·xn-с
Популяции обычно существуют не изолированно, а во взаимодействии с другими популяциями. Наиболее важным типом является взаимодействие между жертвами и хищниками (например, караси-щуки, зайцы-волки и т.д.). В модели жертва-хищник количество жертв xn и количество хищников yn связаны между собой. Количество встреч жертв с хищниками можно считать пропорциональной произведению собственно количеств жертв и хищников, а коэффициент f характеризует возможность гибели жертвы при встрече с хищниками. В этом случае численность популяции жертв уменьшается на величину f·xn·yn и формула для расчета численности
жертв принимает вид: xn+1=(a-b·xn)·xn-с-f·xn·yn
Численность популяции хищников в отсутствие жертв (в связи с отсутствием пищи) уменьшается, что можно описать рекуррентной формулой yn+1=d·yn где значение коэффициента d<1, характеризует скорость уменьшения численности популяции хищников.
Увеличение популяции хищников можно считать пропорциональной произведению собственно количеств жертв и хищников, а коэффициент e характеризует величину роста численности хищников за счет жертв. Тогда для численности хищников можно использовать формулу: yn+1=d·yn
+e·xn·yn
Компьютерная модель. Построим на языке Visual Basic компьютерную модель позволяющую исследовать изменение со временем численности популяций с использованием различных моделей: неограниченного роста, ограниченного роста, ограниченного роста с отловом и жертвахищник.
Рост численности популяций
77

Тарова Инна Николаевна
1На форму поместить текстовые поля для ввода:
значений коэффициентов a, b, c и f, влияющих на изменение численности жертв: txtA, txtB, txtC и txtF;
значений коэффициентов d и e, влияющих на изменение численности хищников: txtD и txtE.
начальной численности популяций жертв и хищников: txtX1 и txtY1.
количества рассматриваемых жизненных циклов (лет) txtN.
2На форму поместить текстовые поля для вывода численности популяции через заданное количество лет:
при неограниченном росте txtXnn;
при ограниченном росте txtXno;
при ограниченном росте с отловом txtXnoo;
в модели жертва-хищник txtX_Y и txtY_X.
3Поместить на форму кнопку cmd1 и начать создание событийной процедуры. Прежде всего, обеспечить ввод начальных данных в соответствующие переменные:
Dim bytN As Byte,
intA, intB, intC, intD, intE, intF, intX, intY As Integer
Private Sub cmd1_Click()
'Ввод данных bytN = txtN.Text intA = txtA.Text intB = txtB.Text intC = txtC.Text intD = txtD.Text intE = txtE.Text intF = txtF.Text
intX = txtX1.Text intY = txtY1.Text
End Sub
78

Компьютерное моделирование
4Поместить на форму графическое поле, в котором будут строиться графики зависимости численности популяций от количества прошедших лет. В событийную процедуру ввести:
'Масштаб и координаты
pic1.Scale (-1, 10)-(bytN + 1, -1) pic1.Line (0, 0)-(bytN + 1, 0)
For I = 0 To bytN pic1.PSet (I, 0) pic1.Print I
Next I
pic1.Line (0, -1)-(0, 10)
For I = 0 To 10 pic1.PSet (0, I) pic1.Print I
Next I
5Ввести код модели неограниченного роста, где в цикле вычисляется численность популяции и строится график:
For I = 1 To bytN pic1.PSet (I, intX) intX = intA * intX txtXnn = intX
Next I
6Ввести код модели ограниченного роста: intX = txtX1.Text
For I = 1 To bytN
pic1.PSet (I, intX), vbMagenta intX = (intA - intB * intX) * intX txtXno = intX
Next I
7Ввести код модели ограниченного роста с отловом: intX = txtX1.Text
For I = 1 To bytN
pic1.PSet (I, intX), vbBlue
intX = (intA - intB * intX) * intX - intC txtXnoo = intX
Next I
79

Тарова Инна Николаевна
8Ввести код модели жертва-хищник: intX = txtX1.Text
For I = 1 To bytN
pic1.PSet (I, intX), vbGreen pic1.PSet (I, intY), vbRed
intX = (intA - intB * intX) * intX - intC - intF * intX * intY
intY = intD * intY + intE * intX * intY txtX_Y = intX
txtY_X = intY
Next I
9Запустить проект и ввести значения коэффициентов,
начального количества жертв и хищников, количества жизненных циклов.
Графики показывают динамику развития популяций.
Биологические модели развития популяций (в электронных таблицах)
1В ячейки B1 и B6 внести начальные значения численности популяций жертв и хищников.
Вячейки B2:B5 внести значения коэффициентов a, b, c и f, влияющих на изменение численности жертв.
Вячейки B7 и B8 внести значения коэффициентов d и e, влияющих на изменение численности хищников.
80