30065

Метод Эйлера модифицированный. РЕШЕНИЕ ОБЫКНОВЕННЫХ ДИФФЕРЕНЦИАЛЬНЫХ УРАВНЕНИЙ

Книга

Информатика, кибернетика и программирование

Метод Эйлера.Метод Эйлера модифицированный. Для этого необходимо было решить уравнение yx=4y двумя разными методами: методом Эйлера и методом Эйлера модифицированного а также ряд поставленных перед собой задач: Изучить методы решения дифференциальных уравнений; Построить график и блоксхему а также Проверить правильность решения в среде MathCad. Метод Эйлера.

Русский

2013-08-22

193.5 KB

71 чел.

Сибирский государственный университет телекоммуникации

и информатики

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

Кафедра физики, прикладной математики и информатики

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

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

ВИЗУАЛИЗАЦИЯ ЧИСЛЕННЫХ МЕТОДОВ.

РЕШЕНИЕ ОБЫКНОВЕННЫХ ДИФФЕРЕНЦИАЛЬНЫХ УРАВНЕНИЙ

                                                                           Выполнил:

студент гр.: МЕ-61,

                                                                                                       Игнатенко И. А.

                                                                               Проверил:

                                                                                                   Минина Е.Е.

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

2006 г.

Содержание.

  1.  Введение………………………………………………………………...……..3
  2.  Постановка задачи…………………………………………………………….4
  3.  Методы решения

    2.1.Метод Эйлера……………………………………………………………...5

    2.2.Метод Эйлера модифицированный.…………………….………...……..7

  1.  Блок схема …………………………………………………………..……….10
  2.  Блок схема для функции…………………………………………………….13       
  3.  Код программы …………………………………………………………...…14
  4.  Виды форм ..……………………………………………….…………..……..16
  5.  Проверка в MathCad …………………………………………………………18

Заключение…………………………………………….………………..………..19

Введение.

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

     В своей работе я поставил перед собой проблему: изучить основы программирования. Для этого необходимо было решить уравнение y’*x=4*y двумя разными методами: методом Эйлера и методом Эйлера модифицированного, а также  ряд, поставленных перед собой, задач:

  •  Изучить методы решения дифференциальных уравнений;
  •  Построить график и блок-схему, а также
  •  Проверить правильность решения в среде MathCad.

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

Пусть дано дифференциальное уравнение вида y’=4*y/x, общее решение которого y=c*x4, и заданы начальные условия x0=1, xk=1.4, h=0.05, y0=2. Требуется найти решение, удовлетворяющее как указанному уравнению, так и начальному условию.

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

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

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

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

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

y(x0) = y0.

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

 xi = x0 + i.h   и   yi = y(xi) ,   где    i = 0, 1, 2, …,

xi – узлы сетки,

yi- значение интегральной функции в узлах .

График решения приведен на рисунке 1.

Проведем прямую АВ через точку (xi,yi) под углом α. При этом

tgα = f(xi,yi) (1).

В соответствии с геометрическим смыслом задачи, прямая АВ является касательной к интегральной функции.  Произведем замену точки интегральной функции точкой, лежащей на касательной AB.

Тогда yi+1 = yiy (2).

Из прямоугольного треугольника АВС  (3).

Приравняем правые части (1) и (3). Получим .

Отсюда

Подставим в это выражение формулу (2), а затем преобразуем его. В результате получаем формулу расчета очередной точки интегральной функции:

    (4).

Рисунок 1. Метод Эйлера.

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

Метод Эйлера – один из простейших методов численного решения обыкновенных дифференциальных уравнений. Но существенным его недостатком является большая погрешность вычислений. На рисунке 1 погрешность вычислений для i-го шага обозначена ε. С каждым шагом погрешность вычислений увеличивается.

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

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

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

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

y(x0) = y0.

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

 xi = x0 + i.h   и   yi = y(xi) ,   где    i = 0, 1, 2, …,

xi – узлы сетки,

yi- значение интегральной функции в узлах .

При использовании модифицированного метода Эйлера шаг h делится на два отрезка.

Иллюстрации к решению приведены на рисунке 2.

Рисунок 2. Метод Эйлера модифицированный.

Проведем решение в несколько этапов:

1. Обозначим точки: A(xi, yi), C(xi+h/2, yi+h/2*f(xi,yi)) и B(xi+1, yi+1).

2. Через точку  А проведем прямую под углом α, где

3. На этой прямой найдем точку C(xi+h/2, yi+h/2*f(xi,yi)).

4. Через точку  С проведем прямую под углом α1, где

5. Через точку А проведем прямую, параллельную последней прямой.

6. Найдем точку В(xi+1, yi+1). Будем считать  В(xi+1, yi+1) решением дифференциального уравнения при x=xi+1.

7. После проведения вычислений, аналогичных вычислениям, описанным в методе Эйлера, получим формулу для определения значения yi+1:

.

Модифицированный метод Эйлера дает меньшую погрешность. На рисунке 2 это хорошо видно. Так величина ε1 характеризует погрешность метода Эйлера, а ε – погрешность метода Эйлера модифицированного.


Блок
схема.




Блок
-схема для функции.

 


Код программы.

Dim x(50) As Single, y(50) As Single, k(50) As Single, z(50) As Single, p(50) As Single

Private y0 As Single

Private x0 As Single

Private xk As Single

Private C As Single

Function f(t As Single, q As Single) As Single

f = (4 * q) / t

End Function

Private Sub Command1_Click()

x0 = Val(Text1.Text)

xk = Val(Text2.Text)

y(0) = Val(Text4.Text)

h = Val(Text3.Text)

p(0) = y(0)

z(0) = y(0)

n = Round((xk - x0) / h)

C = y(0) / x0 ^ 4

MSFlexGrid1.Rows = n + 2

MSFlexGrid1.TextMatrix(0, 0) = "X"

MSFlexGrid1.TextMatrix(0, 1) = "P"

MSFlexGrid1.TextMatrix(0, 2) = "Yэ"

MSFlexGrid1.TextMatrix(0, 3) = "Yэм"

Max = y(0)

Min = y(0)

For i = 0 To n

x(i) = x0 + i * h

p(i) = Round(C * (x(i) * x(i) * x(i)), 4)

y(i + 1) = Round(y(i) + f(x(i), y(i)) * h, 4)

z(i + 1) = Round(z(i) + f(x(i) + h / 2, z(i) + h / 2 * f(x(i), z(i))) * h, 4)

If y(i) > Max Then Max = y(i)

If y(i) < Min Then Min = y(i)

MSFlexGrid1.TextMatrix(i + 1, 0) = Str(x(i))

MSFlexGrid1.TextMatrix(i + 1, 1) = Str(p(i))

MSFlexGrid1.TextMatrix(i + 1, 2) = Str(y(i))

MSFlexGrid1.TextMatrix(i + 1, 3) = Str(z(i))

Next i

Picture1.Cls

kx = (Picture1.Width - 1200) / (xk - x0)

ky = (Picture1.Height - 1000) / (Max - Min)

Label4.Caption = Str(Min)

Label5.Caption = Str(Max)

Label6.Caption = Str(x0)

Label7.Caption = Str(xk)

For i = 0 To n - 1

z1 = Round(720 + (x(i) - x0) * kx)

z2 = Round(5400 - (y(i) - Min) * ky)

z3 = Round(720 + (x(i + 1) - x0) * kx)

z4 = Round(5400 - (y(i + 1) - Min) * ky)

z5 = Round(5400 - (p(i) - Min) * ky)

z6 = Round(5400 - (p(i + 1) - Min) * ky)

z7 = Round(5400 - (z(i) - Min) * ky)

z8 = Round(5400 - (z(i + 1) - Min) * ky)

Picture1.Line (z1, z7)-(z3, z8)

Picture1.Line (z1, z5)-(z3, z6)

Picture1.Line (z1, z2)-(z3, z4)

Next i

End Sub

Private Sub Command2_Click()

End

End Sub

Виды форм.

Проверка в MathCad.

 


Заключение.

  По мере решения поставленных перед собой целей и задач, я научился работать в новой для меня среде Visual Basic.

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

  Процесс решения данной задачи показался мне очень интересным и познавательным.


 

А также другие работы, которые могут Вас заинтересовать

36893. Дослідження тиристорів за допомогою програмного комплексу Electronics Workbench 72.5 KB
  Дослідження прямої гілки ВАХ тиристора можна проводити з використанням схеми на рис. Рисунок 4 Схема для побудови прямої гілки ВАХ тиристора в режимі фіксованих струмів анода Рисунок 5 Схема для побудови прямої гілки ВАХ тиристора в режимі фіксованих струмів керувального електрода Порядок виконання роботи 1. Рисунок 6 Схема для лабораторного дослідження тиристора 5. В результаті момент відкриття тиристора зміщується в часі і залежить від величини резистора.
36895. Решение задач с использованием одномерного и думерного массивов 200.5 KB
  Задачи из данного пункта решить двумя способами, используя одномерный массив, а затем двумерный. Размерность массива вводится с клавиатуры.
36896. Спрощена інструкція по роботі з СППР PRIME Decisions 385.5 KB
  для всіх атрибутів які використовуються для прийняття рішень. Введення альтернативних значень для готової цілі та для атрибутів на основі яких здійснюється вибір. Введення альтернатив для головної цілі та для атрибутів в додатковому вікні lterntives 3. Ввести у відповідні стовпці альтернативні значення для атрибутів на основі якого здійснюється вибір.
36897. Адміністрування локальної мережі з використанням FRIENDLY PINGER 1.75 MB
  ІНСТРУКЦІЯ до проведення лабораторної роботи №19 Адміністрування локальної мережі з використанням FRIENDLY PINGER Предмет: Компютерна практика Автор і дата затвердження програми: Новиченко В. Київ Лабораторна робота № 19 Адміністрування локальної мережі з використанням FRIENDLY PINGER 1 Мета роботи Ознайомитись з можливостями програми FRIENDLY PINGER призначеної для адміністрування моніторингу й інвентаризації комп'ютерних мереж. Побудувати топологію локальної мережі згідно з варіантом завдання 2. Сучасні компютерні мережі.
36898. Исследование характеристик усталостной прочности конструкционных материалов при циклических испытаниях 730.5 KB
  Цель работы: Ознакомиться с проблемой усталости авиационных конструкций; параметрами характеризующими цикл нагружения; существующими разновидностями цикла напряжения; характеристиками сопротивления усталости при регулярном напряжении; кривой усталости. ВОПРОСЫ Перечислить основные этапы в гражданской авиации которые связаны с проблемой усталости конструкции самолета. Чем они характеризуются Дать определение...
36899. Ознакомление с работой на учебной микро-ЭВМ 171.73 KB
  Задание 1 Краткое назначение блоков структурной схемы микроЭВМ БП блок микропроцессора и схем обрамления обеспечивающих его работу формирующий МД МА и сигналы управления микроЭВМ. БУ блок управления режимами работы МП. БИСМ блок индикации состояния магистралей. БУКП блок управления картой памяти.
36900. Изучение принципа работы ОЗУ 356.65 KB
  Изучение принципа работы ОЗУ Цель работы: исследование принципа работы ОЗУ и мультиплексного способа организации общей шины. Задание 1 УГО ОЗУ в соответствии с рисунком 1 А0А3 адресные входы; CS выбор микросхемы; W R запись считывание; DIO1DIO8 совмещенные информационные вводывыводы Рисунок 1 Задание 2 Провести очистку ячеек памяти ОЗУ по адресам 0 1 2 3 4 D E F Задание 3 Записать 10 8 по адресам 6 11 считать записанную информацию Задание 4 Составить алгоритм работы ОЗУ Алгоритм работы ОЗУ в соответствии с рисунком 2...