Чтение онлайн

на главную - закладки

Жанры

Математические модели в естественнонаучном образовании
Шрифт:

Рисунок 1.3. Паутинная диаграмма нелинейной модели.

Судя по графику ясно, что если начальная популяция

 лежит в диапазоне от 0 до
, то модель с
 и
 приведёт
к постоянно растущему значению популяции, которое приближается к предельному значению пропускной способности равному 10.

Если оставить те же значения

 и
, но положить
, то паутина будет выглядеть так, как показано на рисунке 1.4.

Рисунок 1.4. Паутинная диаграмма нелинейной модели.

Действительно, становится ясным, что если

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

Вопросы для самопроверки:

– Для модели

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

– Что произойдет, если

 выбрать больше, чем значение, найденное в предыдущем вопросе?

Если популяция становится отрицательной, то мы должны интерпретировать это как вымирание.

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

Задачи для самостоятельного решения:

1.2.1. Пусть

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

1.2.2. В модели

, какие значения
 приведут к тому, что
 окажется положительным? Отрицательным? Какой смысл это имеет?

1.2.3. Повторите решение задачи 1 в MATLAB с помощью команд аналогичных следующим:

p=1; x=p

for i=1:22; p=p+.3*p*(1-p/15); x=[x p]; end

plot([0:22], x)

Объясните, как это работает.

1.2.4. Используя следующую программу onepop.m для MATLAB при различных значениях

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

% onepop.m

%

% Модель популяции одного вида

%

% У пользователя запрашивается уравнение, определяющее модель. Затем, кликнув

% по начальной численности популяции на графике, динамика популяции как функция

% от времени будет изображена в виде графика. После выполнения симуляции

% при нажатии клавиши 'd' числовые данные отобразятся в командное окно MATLAB.

%

p=0; % инициализация переменной популяции для формулы

%

disp(' ')

disp(' Введите формулу, определяющую модель популяции, обозначая за "p"')

disp('численность популяции: (Например: следующее_p = p+.8*p*(1-p/10) )')

next_p=input ('следующее_p = ','s');

%

p=eval(next_p); % тестируемая формула

%

disp(' ')

disp(' Введите диапазон популяции, который будет отображаться на графике:');

limits=input('(Значение по умолчанию [pmin pmax] = [0 20]) ');

if isempty(limits) limits=[0 20]; end;

%

disp(' ')

n=input(' Введите количество шагов для итерации: (по умолчанию n = 20) ');

if isempty(n) n=20; end;

%

disp(' ')

disp(' Наведите курсор на график, чтобы выбрать начальную популяцию и')

disp('кликните для рисования. Нажмите `d'', чтобы отобразить значения популяции')

disp('в командном окне. Нажмите любую другую клавишу, чтобы выйти.')

disp(' ')

disp(' Нажмите любую клавишу, чтобы начать.')

pause

%

figure; % настроить отображение нового графика

axis([ [0 n] limits]); grid on;

xlabel('Время');ylabel('Популяция P');

title(['следующее\_p=',next_p]);

hold on; % сохранение линий на графике при добавлении новых

%

times=[0:n]; % генерировать вектор времени для построения графика

%

newcontinue=1;

while newcontinue % цикл, пока не будет нажата не левая кнопка

[t,p,button]=ginput(1); % получить начальную численность популяции

if button==1

pops=p;

for i=1:n % построить вектор итерационных значений популяции

p=eval(next_p);

pops=[pops,p];

end

plot(times,pops); % график зависимости численности популяции от времени

else

newcontinue=0; % флаг выхода из цикла

if button==100

[times;pops]' % отобразить время и численность в командном окне

Поделиться:
Популярные книги

Флеш Рояль

Тоцка Тала
Детективы:
триллеры
7.11
рейтинг книги
Флеш Рояль

Новый Рал 3

Северный Лис
3. Рал!
Фантастика:
попаданцы
5.88
рейтинг книги
Новый Рал 3

Мужчина не моей мечты

Ардова Алиса
1. Мужчина не моей мечты
Любовные романы:
любовно-фантастические романы
8.30
рейтинг книги
Мужчина не моей мечты

Запределье

Михайлов Дем Алексеевич
6. Мир Вальдиры
Фантастика:
фэнтези
рпг
9.06
рейтинг книги
Запределье

Неправильный лекарь. Том 1

Измайлов Сергей
1. Неправильный лекарь
Фантастика:
городское фэнтези
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Неправильный лекарь. Том 1

(Не)нужная жена дракона

Углицкая Алина
5. Хроники Драконьей империи
Любовные романы:
любовно-фантастические романы
6.89
рейтинг книги
(Не)нужная жена дракона

Кодекс Охотника. Книга XVIII

Винокуров Юрий
18. Кодекс Охотника
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Кодекс Охотника. Книга XVIII

Вамп

Парсиев Дмитрий
3. История одного эволюционера
Фантастика:
рпг
городское фэнтези
постапокалипсис
5.00
рейтинг книги
Вамп

Кротовский, не начинайте

Парсиев Дмитрий
2. РОС: Изнанка Империи
Фантастика:
городское фэнтези
попаданцы
альтернативная история
5.00
рейтинг книги
Кротовский, не начинайте

Отморозки

Земляной Андрей Борисович
Фантастика:
научная фантастика
7.00
рейтинг книги
Отморозки

Князь Серединного мира

Земляной Андрей Борисович
4. Страж
Фантастика:
фэнтези
попаданцы
5.00
рейтинг книги
Князь Серединного мира

Неудержимый. Книга XII

Боярский Андрей
12. Неудержимый
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Неудержимый. Книга XII

Неофит

Вайт Константин
1. Аннулет
Фантастика:
попаданцы
альтернативная история
аниме
5.00
рейтинг книги
Неофит

Идеальный мир для Лекаря 25

Сапфир Олег
25. Лекарь
Фантастика:
фэнтези
юмористическое фэнтези
аниме
5.00
рейтинг книги
Идеальный мир для Лекаря 25