Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Л.Р. 2.docx
Скачиваний:
25
Добавлен:
02.09.2019
Размер:
1.54 Mб
Скачать

Лабораторная работа №3. .Применение обыкновенных дифференциальных уравнений для моделирования динамических систем.

Цель работы - на основе классических моделей, применяемых в экологии познакомиться с основными приёмами моделирования и исследования поведения динамических систем.

В данном блоке лабораторных работ рассматриваются модели, построенные на применении обыкновенных дифференциальных уравнений (ОДУ). С помощью стандартных команд Maple получают аналитические и численные решения ОДУ, проводят исследование моделей в пограничных состояниях, а через графические средства - придают наглядность результатам.

1.1. Общие сведения о дифференциальных уравнениях и представление их решений в Maple

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

Одним из базовых понятий является производная или касательная к точке кривой y = f (x), т.е. такая прямая, которая имеет с кривой одну общую точку при бесконечном приближении к ней. Тангенс угла наклона касательной к оси абсцисс определяется следующим равенством:

где величина ∆y называется приращением (изменением) функции при приращении (изменении) ее аргумента на величину ∆x, которое стремится к нулю.

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

Для получения аналитических, приближенных и численных решений дифференциальных уравнений в Maple применяется универсальная команда dsolve или функции пакета DEtools, которые позволяют дополнительно отображать численное решение в графическом виде, включая построение фазового портрета.

Во всех случаях для команды dsolve используется единый формат:

Здесь ODE - дифференциальное уравнение или система из этих уравнений относительно неизвестных VAR.

Для решения задачи Коши в уравнения ODE нужно включить также начальные условия, а для краевой задачи — соответственно краевые условия на начале и конце интервала интегрирования. Дополнительные условия OPS позволяют указать способ решения type=... и используемый метод method=... (табл. 3.2).

В уравнениях для указания производной применяются команды diff и оператор D, который используется и для обозначения производной в начальных и краевых условиях.

Оператор D имеет следующий синтаксис:

В этой записи n - целое число, означающее порядок производной, параметр func - имя функции, а var - независимая переменная этой функции. Например, с помощью этого оператора производную второго порядка функции f (x): d2f (x)/dx2 следует задавать как:

Система уравнений оформляется в виде множества: уравнения, начальные или краевые условия записываются через запятые и берутся в фигурные скобки. По умолчанию (параметр type=exact) Maple старается найти явное (аналитическое) решение для неизвестных функций. При невозможности это сделать решение выводится в неявном виде.

Если число краевых или начальных условий меньше порядка системы, то в ответе будут фигурировать неопределённые константы _C1, _C2 и т.д. Для уравнений первого порядка может быть использовано параметрическое представление, и тогда в ответе будет константа _T.

При неполном задании уравнения (отсутствует знак равенства и правая часть) Maple сам дополняет уравнение нулевой правой частью:

Как видно решение дифференциального уравнения второго порядка найдено в виде суммы экспонент с произвольными константами _C1, _C2. Если определить задачу Коши и задать начальные условия, то командой dsolve можно получить следующее решение:

Здесь переменная начальных условий ic имеет тип последовательность (exprseq) и фигурные скобки позволили объединить её с уравнением de, чтобы получить тип множество (set). Для объединения множеств нужно применять команду объединения union . Например, решим данное уравнение в виде краевой задачи, задав краевые условия в виде множества:

Для проверки того, что найденное решение SOL удовлетворяет уравнению или системе ODE, имеется команда odetest(SOL,ODE) . Например, для рассматриваемого уравнения можно получить:

Для решения нелинейных задач, которые не поддаются аналитическим методам, могут быть использованы численные процедуры. При этом должны быть заданы численные значения всех параметров.

Когда решения в замкнутой форме нет, а численные подходы невозможны или нежелательны, то могут быть использованы приближённые методы. В этом случае команду dsolve вызывают с параметром:

а) series — для поиска решения в виде разложения в ряд;

б) laplace — для применения метода преобразования Лапласа.

Для численного решения дифференциальных уравнений командой dsolve нужно указать параметр numeric одним из способов:

Дополнительные параметры OPS определяют метод (method=MET) численного решения задачи Коши и ряд параметров этого метода. В качестве MET могут выступать методы, например, Рунге-Кутты-Фельберга порядка 4/5 (rkf45) и другие (см. табл. 3.2).

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