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

Автор: Пользователь скрыл имя, 15 Сентября 2011 в 21:33, курсовая работа

Краткое описание

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

Для достижения цели я поставил перед собой следующие задачи:

Написать программу для решения данного дифференциального уравнения двумя численными методами в программе Visual Basic.
Проверить решение с помощью приложения MathCad.
Сравнить полученные разными методами результаты с общим решением.

Оглавление

Введение………………………………………………………………….3

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

2. Описание методов решения…………………………………………..5

2. 1. Суть задачи………………………………………………………….5
2. 2. Геометрический смысл задачи…………………………………….5

2. 3. Численные методы решения задачи Коши……………………….6

2. 4. Метод Эйлера……………………………………………………….9
2. 5. Метод Эйлера модифицированный……………………………….9
2. 6. Метод Рунге-Кутта 4-го порядка………………………………….10
2. 7. Решение поставленной задачи методами Эйлера и Рунге-Кутта…………………………………………………………….12

2. 7. 1. Метод Эйлера……………………………………………………12

2. 7. 2. Метод Рунге-Кутта……………………………13

3. Алгоритм решения задачи…………………………………………...16

3. 1. Алгоритмы подпрограмм.………………………………………....16

3. 1. 1. Подпрограмма метода Эйлера………………………………….16

3. 1. 2 Подпрограмма метода Эйлера модифицированного…………..16

3. 1. 3. Подпрограмма общего решения и поиска максимальных значений x и y……………………………………………………………………17

3. 2. Алгоритм функции…………………………………………………17

3. 3. Алгоритм программы………………………………………………19

4. Форма программы…………………………………………………….20

5. Листинг программы…………………………………………………..21

6. Решение задачи в MathCad…………………………………………..23

Заключение………………………………………………………………25

Файлы: 1 файл

Курсовая (2).doc

— 327.50 Кб (Скачать)

Федеральное агентство связи

ГОУ ВПО  “СибГУТИ”

Уральский технический институт связи и  информатики 
 
 
 
 
 
 

КУРСОВАЯ  РАБОТА

по информатике: 

Визуализация  численных методов.

Решение обыкновенных дифференциальных уравнений. 
 
 
 
 
 

                                                                            Выполнила:

студентка гр.: СЕ-81

Митрофанова Д.И.

                                                                                Проверила:

                                                                                                    Тюпина О.М. 
 
 
 
 
 
 
 
 
 
 
 
 
 

Екатеринбург

2009 г. 

       Содержание:

       Введение………………………………………………………………….3

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

      2. Описание методов решения…………………………………………..5

      2. 1. Суть задачи………………………………………………………….5

      2. 2. Геометрический смысл задачи…………………………………….5

      2. 3. Численные методы решения задачи  Коши……………………….6

      2. 4. Метод Эйлера……………………………………………………….9

      2. 5. Метод Эйлера модифицированный……………………………….9

      2. 6. Метод Рунге-Кутта 4-го порядка………………………………….10

      2. 7. Решение поставленной задачи методами Эйлера и Рунге-Кутта…………………………………………………………….12

      2. 7. 1. Метод Эйлера……………………………………………………12

      2. 7. 2. Метод Рунге-Кутта……………………………13

      3. Алгоритм решения задачи…………………………………………...16

      3. 1. Алгоритмы подпрограмм.………………………………………....16

      3. 1. 1. Подпрограмма метода Эйлера………………………………….16

      3. 1. 2 Подпрограмма метода Эйлера  модифицированного…………..16

      3. 1. 3. Подпрограмма общего решения  и поиска максимальных значений  x и y……………………………………………………………………17

      3. 2. Алгоритм функции…………………………………………………17

       3. 3. Алгоритм программы………………………………………………19

       4. Форма программы…………………………………………………….20

       5. Листинг программы…………………………………………………..21

      6. Решение задачи в MathCad…………………………………………..23

       Заключение………………………………………………………………25 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Введение 

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

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

     Для достижения цели я поставил перед  собой следующие задачи:

    • Написать программу для решения данного дифференциального уравнения двумя численными методами в программе Visual Basic.
    • Проверить решение с помощью приложения MathCad.
    • Сравнить полученные разными методами результаты с общим решением.
 

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

       Решить методами Эйлера и Рунке-Кутта задачу Коши для дифференциального уравнения 1-го порядка на отрезке [X0; Xk] с шагом h и начальным условием: Y(X0) = Y0.

       Ответ должен быть получен в виде таблицы  результатов: 

X Y(1) Y(2) YT
X0 Y0(1) Y0(2) Y(X0)
X1 Y1(1) Y1(2) Y(X1)
Xk Yk(1) Yk(2) Y(Xk)
 

       Где Y(1), Y(2) – решения, полученные различными численными методами, YT – точное решение дифференциального уравнения.

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

       Данные  таблицы визуализировать на форме  в виде графиков.

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

        

Дифференциальное  уравнение X0 Xk h Y0 Общее решение
y’  *(x+1)=y+2 0 0,8 0,1 0 y=(x+1)*c-2
 
 

      2. Описание методов решения

      2. 1. Суть задачи

      Чтобы решить обыкновенное дифференциальное уравнение, необходимо знать значения зависимой переменной и (или) её производных при некоторых значениях независимой переменной. Если эти дополнительные условия задаются при одном значении независимой переменной, то такая задача называется задачей с начальными условиями, или задачей Коши. Часто в задаче Коши в роли независимой переменной выступает время.

      Задачу  Коши можно сформулировать следующим  образом:

      Пусть дано дифференциальное уравнение  и начальное условие y(x0) = у0. Требуется найти функцию у(x), удовлетворяющую как указанному уравнению, так и начальному условию.

      Численное решение задачи Коши сводится к табулированию искомой функции.

      График  решения дифференциального уравнения  называется интегральной кривой. 

      2. 2. Геометрический  смысл задачи.

      y’ = f(x,y)  - тангенс угла наклона касательной к графику решения в точке (х, у) к оси 0Х, - угловой коэффициент (рис. 1).

        
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

      Рисунок 1. Геометрический смысл задачи Коши. 

      Существование решения:

      Если  правая часть f(x, y) непрерывна в некоторой области R, определяемой неравенствами

      |x-x0| < а; |y-y0| < b,

      то  существует, по меньшей мере, одно решение у = у(х), определённое в окрестности |х – х0| < h, где h - положительное число.

      Это решение единственно, если в R выполнено условие Липшица

      |f(x,y)-f(x,y)| ≤N|y-y|(x,y),

      где N - некоторая постоянная (константа  Липшица), зависящая, в общем случае, от а и b. Если f(x, у) имеет ограниченную производную

f’y(x, y) в R, то можно положить N = мах |f’y(х, у)| при (х, y) принадлежащим R.

      2. 3. Численные методы решения задачи Коши

      При использовании численных методов  выполняется замена отрезка [х0, X] - области непрерывного изменения аргумента х множеством . состоящего из конечного числа точек х0 < х1 < ... < xn = Х - сеткой.

      При этом xi называют узлами сетки.

      Во  многих методах используются равномерные  сетки с шагом:

      

      Задача  Коши, определённая ранее на непрерывном  отрезке [х0, X], заменяется её дискретным аналогом - системой уравнений, решая которую можно последовательно найти значения y1, y2,…,yn - приближённые значения функции в узлах сетки.

      

      Численное решение задачи Коши широко применяется  в различных областях науки и  техники, и число разработанных  для него методов достаточно велико. Эти методы могут быть разделены на следующие группы.

  • Одношаговые методы, в которых для нахождения следующей точки на 
    кривой у = f(x) требуется информация лишь об одном предыдущем шаге. 
    Одношаговыми являются метод Эйлера и методы Рунге - Кутта.
  • Методы прогноза и коррекции (многошаговые), в которых для отыскания следующей точки кривой у = f(x) требуется информация более чем об одной из  предыдущих точек.   Чтобы  получить достаточно точное  численное значение, часто прибегают к итерации. К числу таких методов относятся методы Милна, Адамса - Башфорта и Хемминга.
  • Явные методы, в которых функция Ф не зависит от yn+1.
  • Неявные методы, в которых функция Ф зависит от yn+1.

      2. 4. Метод Эйлера

      Иногда  этот  метод  называют   методом  Рунге-Кутта  первого   порядка  точности.

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

      Пусть дано дифференциальное уравнение первого  порядка:

      Y’ = f(x, y)

      с начальным условием

      y(x0) = y0

      Выберем шаг h и введём обозначения:

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