U_ EQU 1.0

Начальные значения для U_, V_ и Y_, определенные при помо­щи оператора EQU, задаются в зависимости от начальных условий моделирования.

Пример 4.70 [20]

Постановка задачи «Хищник-Жертва». На маленьком острове бесконтрольно растет популяция кроликов. Проблема стоит так ост­ро, что местные фермеры прикладывают значительные усилия, чтобы прекратить увеличение популяции кроликов. Для контроля над си­туацией они хотят завести популяцию лис.

Для моделирования этого явления используется модель «хищ­ник - жертва». При моделировании изучается такой вопрос: «Что произойдет, если выпустить 80 лис?».

************************************************************

* Модель Lotka-Volterra Хищник-Жертва

* Действия:

* График "Лисы и Кролики": X 12000; Y 0-3000

*START 1

************************************************************

*

* Не забывайте выражения производных заключать в скобки

Foxes INTEGRATE (FoxRateQ)

Rabbits INTEGRATE (RabbitRateO)

*

* Начальные условия

Foxes Rabbits * EQU

EQU 80 1000

*

* Параметры модели

К_ EQU 0.2000; Эффективность хищников

А_ EQU 0.0080; Уровень смертности хищников

В_ EQU 0.0002; Фактор охоты

С_ EQU 0.0400; Уровень рождаемости кроликов

*

*Управляющий сегмент дискретного моделирования

*

GENERATE 10000

TERMINATE I

*

PROCEDURE FoxRate() BEGIN

*

*Скорость роста популяции лис

*

TEMPORARY BirthRate, DeathRate, TotRate;

* Граничные значения для переменной

IF (Foxes <0) THEN Foxes = 0;

IF (Foxes > 10e50) THEN Foxes = 10e50;

BirthRate = K_ # B_ # Foxes # Rabbits;

DeathRate = A_ # Foxes;

TotRate = BirthRate - DeathRate;

RETURN TotRate;

END;

*


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: