Денис Соломатин - Математические модели в естественнонаучном образовании. Том I
- Название:Математические модели в естественнонаучном образовании. Том I
- Автор:
- Жанр:
- Издательство:неизвестно
- Год:2022
- ISBN:нет данных
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Денис Соломатин - Математические модели в естественнонаучном образовании. Том I краткое содержание
Математические модели в естественнонаучном образовании. Том I - читать онлайн бесплатно ознакомительный отрывок
Интервал:
Закладка:

Рисунок 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]' % отобразить время и численность в командном окне
newcontinue=1; % повторить цикл снова после отображения значений
% если пользователь нажимает `d' для отображения
end
end
end
%
hold off % возвращает режим автоматической очистки графика
1.2.5. Наиболее распространенными способами записи уравнения дискретного логистического роста являются: ,
,
,
.
Интервал:
Закладка: