Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторный практикум.doc
Скачиваний:
8
Добавлен:
07.05.2019
Размер:
243 Кб
Скачать
☆

Комплексное задание №5 Решение систем дифференциальных уравнений

Цель работы:

  • Приобретение навыков численного решения систем дифференциальных уравнений методами Эйлера и Рунге-Кутта 4 порядка

  • Приобретение навыков объектно-ориентированного программирования

  • Приобретение навыков работы в среде визуального программирования

Постановка задачи.

Имеется некоторая система дифференциальных уравнений, представленная в форме Коши. Требуется

  • Создать объектно-ориентированное представление задачи нахождения векторной функции Y=Y(x) скалярного аргумента x (далее просто «функции»), удовлетворяющей системе дифференциальных уравнений вида dY/dx=f(x,Y) и принимающей при x=x0 заданное значение Y0: Y(x0)=Y0. Для определенности принять, что x>x0;

  • В соответствии с разработанным представлением задачи выполнить программную реализацию нахождения функции методами Эйлера и Рунге-Кутта 4 порядка.

  • Создать интерфейсный модуль для ввода данных в диалоговом режиме и графической визуализации результатов

  • Провести сравнительный анализ методов.

Требование к программе.

Программа должна для заданной системы дифференциальных уравнений на отрезке [x0,xT] находить значения функции Y=Y(x) в узлах x1,_x2,_…_xT, равномерно, с шагом h, распределенных на заданном отрезке

При выполнении задания допускается использование только программных модулей и компонент, разработанных самим студентом, стандартных компонент, предоставляемых средой визуального программирования Delphi, а также модулей uCommon и uVector библиотеки Simulate1.

Решение задачи Коши

Простейшими методами решения системы дифференциальных уравнений, представленных в форме Коши (задача Коши) являются методы Эйлера и Рунге-Кутта 4 порядка.

Метод Эйлера

Относится к одношаговым методам. Основан на разложении искомой функции Y(x) в ряд Тейлора в окрестностях узлов x=xi (i=0,1,…), в которых отбрасываются все члены, содержащие производные второго и более высоких порядков. Разностная схема этого метода имеет вид рекуррентных формул, с помощью которых значение сеточной функции в любом узле вычисляются по ее значению в предыдущем узле

Метод Эйлера с пересчетом

Является модификацией метода Эйлера. Реализуется следующими рекуррентными соотношениями

Метод Рунге-Кутта

Является одним из самых распространенных одношаговых методов. Алгоритм метода можно записать в следующем виде

Объектно-ориентированное представление задачи

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

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

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

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

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

  3. Должна быть обеспечена возможность выбора метода решения

  4. Результаты расчетов должны быть представлены в виде текстового файла, таблицы и графически, как в виде зависимостей компонент вектора Y от независимой переменной, например Y1=Y1(x), Y2=Y2(x) и т.п., так и в виде зависимости друг от друга, например Y2(Y1), Y3(Y2) и т.п..

Исследование метод решения и представление результатов

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

  • При одинаковом шаге проследить рост погрешности с возрастанием x

  • Оценить влияние шага на точность результатов

  • Провести анализ влияние времени вычисления правых частей на выбор метода решения

Полученные результаты оформляются в виде отчета, в котором представляются основные результаты работы, дается наглядная интерпретация объектно-ориентированного представления задачи, приводятся необходимые таблицы и графики, делаются выводы по проделанной работе. Отчет готовится в виде электронного документа, подготовленного в редакторе MS Word, и предоставляется при защите работы.