86247

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

Курсовая

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

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

Русский

2015-04-04

166.5 KB

1 чел.

СИБИРСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ

ТЕЛЕКОММУНИКАЦИЙ И ИНФОРМАТИКИ

УРАЛЬСКИЙ ТЕХНИЧЕСКИЙ ИНСТИТУТ СВЯЗИ И ИНФОРМАТИКИ

Факультет телекоммуникаций

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

            Выполнила: студентка гр. МЕ-52                       Раздрогина Т.А.

                                                                                                    Руководитель: Минина Е.Е.

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

Содержание

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

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

Суть используемых методов………………………………………………………………5

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

Блок схема основных процедур…………………………………………………………...8

Исходная форма……………………………………………………………………………11

Форма конечный вид………………………………………………………………………12

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

Решение задачи в MathCAD……………………………………………………………….15

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


Введение.

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

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

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

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


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

В курсовой работе необходимо решить задачу Коши для дифференциального уравнения первого порядка на отрезке [x0, xк ] с шагом h  и начальным условием y(x0)= y0 методами Эйлера и Эйлера модифицированный.

Дано дифференциальное  уравнение: (x+1)2 dy+ydx =0,

Общее уравнение: ln׀y׀= -arctg(x)+c

                               Начальные условия     x0 =0

                        xk =1.8

                         h=0.1

                      y0 =1

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


Суть используемых методов.

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

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

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


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

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

                                                      (x+1)2 dy+ydx =0

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

y(x0)= y0.

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

         xi = x0+h*i  и yi=y(xi)., i=1,2,3…

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

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

        Начальные условия задачи:

                                                 x0 =1

                                                 xk =1.8

                                                 y0 =1

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

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

Проведём прямую AB через точку (x (i),y (i)) под углом α. При этом

                                       tgα = f(x(i),y(i)).                                    (1)

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

Тогда y(i+1)=y(i)+∆y                                                                     (2)

Из прямоугольного треугольника ABC  tgα = ∆y / h                 (3)

Приравняем правые части (1) и (3). Получим  ∆y / h =  f(x(i),y(i)).

Отсюда    ∆y = h* f(x(i),y(i)).

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

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

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

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

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

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

  1.  Обозначим точки: А (x(i),y(i)), C (x(i)+h/2, y(i)+h/2*f (x(i),y(i))) и B (x(i+1),y(i+1)).
  2.  Через точку А проведём прямую под углом α, где

                                        tgα = f (x(i),y(i))

  1.  На этой прямой найдём точку С (x(i)+h/2, y(i)+h/2*f(x(i),y(i))).
  2.  Через точку С проведём прямую под углом  α1, где                                             

                    tgα1 = f (x(i)+h/2,y(i)+ h/2*f (x(i),y(i)))

  1.  Через точку А проведём прямую, параллельную последней прямой.
  2.  Найдём точку  B (x(i+1),y(i+1)). Будем считать B(x(i+1),y(i+1)) решением дифференциального уравнения при x = x(i+1)
  3.  После проведения вычислений, аналогичных вычислениям, описанным в методе Эйлера, получим формулу для определения значения y(i+1):

                                 y(i+1) = y(i) + h*f(x(i)+h/2, y(i)+h/2*f(x(i),y(i))

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


Блок схема основных процедур.




Исходная форма.


Форма конечный вид


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

Dim X(9) As Single

Dim Y(9) As Single

Dim Y1(9) As Single

Dim Y2(9) As Single

Private Function f(t As Single, z As Single) As Single

f = -z / (1+t)2

End Function

Private Function f1(l As Single) As Single

f1 =  Exp (-atan(l)+3.14/4)

End Function

Private Sub Command1_Click()

   x0 = Val(Text1.Text)

   xk = Val(Text2.Text)

   y0 = Val(Text3.Text)

   h = Val(Text4.Text)

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

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

   MSFlexGrid1.TextMatrix(0, 2) = "Y1"

   MSFlexGrid1.TextMatrix(0, 3) = "Y2"

   n = (xk - x0) / h

   MSFlexGrid1.Rows = n + 2

   Max = f1(X(0))

   Min = f1(X(0))

   X(0)=x0

   Y1(0) = y0

   Y2(0) = y0

   For i = 0 To n

   X(i) = x0 + i * h

   Y(i) = Round(f1(X(i)))

   Y1(i + 1) = Round(Y1(i) + h * f(X(i), Y1(i)))

   Y2(i + 1) = Round(Y2(i) + h * f(X(i) + h / 2, Y2(i) + h / 2 * f(X(i), Y2(i))))

   MSFlexGrid1.TextMatrix(i + 1, 0) = X(i)

   MSFlexGrid1.TextMatrix(i + 1, 1) = Y(i)

   MSFlexGrid1.TextMatrix(i + 1, 2) = Y1(i)

   MSFlexGrid1.TextMatrix(i + 1, 3) = Y2(i)

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

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

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

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

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

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

   Next i

   For i = 0 To n - 1

   d = 2412 / (xk - x0)

   d1 = 3368 / (Min - Max)

   z1 = Round((X(i) - X(0)) * d + 240, 0)

   z2 = Round(3720 - Abs((Y(i) - Min) * d1), 0)

   z3 = Round((X(i + 1) - X(0)) * d + 240, 0)

   z4 = Round(3720 - Abs((Y(i + 1) - Min) * d1), 0)

   q1 = Round(3720 - Abs((Y1(i) - Min) * d1), 0)

   q2 = Round(3720 - Abs((Y1(i + 1) - Min) * d1), 0)

   o1 = Round(3720 - Abs((Y2(i) - Min) * d1), 0)

   o2 = Round(3720 - Abs((Y2(i + 1) - Min) * d1), 0)

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

   Picture1.Line (z1, q1)-(z3, q2)

   Picture1.Line (z1, o1)-(z3, o2)

   Next i

End Sub

Заключение

В данной курсовой работе мы решили задачу Коши для дифференциального уравнения первого порядка на отрезке [x0, xк ] с шагом h  и начальным условием y(x0)= y0 методами Эйлера и Эйлера модифицированный, предварительно тщательно ознакомившись с этими методами.

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


B

О

x(i)

x(i+1)

hаавывывывысывсывсывсысысысысыссчс

y(i)

  y

x

е

y= y(x)

y(i+1)

α

A

Рис. 1

B

C

A

x

α1

α

h/2

x(i)

O

y

h

x(i+1)

E1

E

y= y(x)

Рис. 2

    Начало

x0, xk, y0, h

n = (xk – x0)/h

Max = f1(x0)

Min = f1(x0)

                                                   i = 0 … n

Y1(0) = y0

Y2(0) = y0

X(i) = x0 + i*h

      X(i), Y(i), Y1(i), Y2(i)

Y(i)>max

1

4

2

3

-

+

Y(i) = f1(X(i))

1(i+1) = Y(i)+h*f(X(i),Y(i))

Y2(i + 1) = Y2(i) + h * f(X(i) + h / 2, Y2(i) + h / 2 * f(X(i), Y(i))                              

-

+

 Max = Y(i)

4

3

Y(i)<min

 Min = Y(i)

Шаблон графика

d = 2412 / (xk - x0)

d1 = 3368 / (Max - Min)

z1 = (X(i) - X(0)) * d + 240

z2 = 3720 - (Y(i) - Min) * d1

z3 = (X(i + 1) - X(0)) * d + 240

z4 = 3720 - (Y(i + 1) - Min) * d1

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

q1 = 3720 - (Y1(i) - Min) * d1

q2 = 3720 - (Y1(i + 1) - Min) * d1

  Line (z1, q1) - (z2, q2)

2

o1 = 3720 - (Y2(i) - Min) * d1

o2 = 3720 - (Y2(i + 1) - Min) * d1

1

          Line (z1, o1) - (z2, o2)

     Конец

        f (t)

f = -z / 1+t2

     Конец

        f1 (l)

f1=Exp(-arctg(1)+π/4)

     Конец

+

 Max = Y1(i)

Y2(i)<min

 Min = Y2(i)

 Max = Y2(i)

+

+

+

Y2(i)>max

 Min = Y1(i)

Y1(i)<min

Y1(i)>max

i = 0 … n-1

6

6


 

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

31338. Культ Великой Матери богов Кибелы в греко-римской древности (К проблеме религиозного синкретизма в античности) 5.81 MB
  Археологические свидетельства безусловно важны но немы что с одной стороны предоставляет ученым широкий простор для построения различных гипотез а с другой стороны затрудняет их обоснование. Следует подчеркнуть что они очень неравномерно представлены по главным периодам античной истории наибольший объем литературных материалов приходится на римский период причем особый интерес к культу наблюдается на стыке старой и новой эпох и во времена поздней империи. Необходимо подчеркнуть что культовое обращение к Кибеле Пиндара в точности...
31339. СОЦИАЛЬНО-ПОЛИТИЧЕСКИЙ МИФ: ТЕОРЕТИКО-МЕТОДОЛОГИЧЕСКИЕ ПРОБЛЕМЫ 4.36 MB
  Отношение политического мифа к политической идеологии Миф в системе политической науки. Почитание предков и становление политической мифологии лидерства Мифологема Русская земля: целеполагание и пространственные рамки политического процесса Мифология отличного порядка. Общественное насилие над властью: мифология политического самоопределения социума Эволюция групповой идентичности крестьянства...
31340. ИНДОЕВРОПЕЙСКИЕ МИФОТРАДИЦИИ (НА МАТЕРИАЛАХ САКРАЛЬНЫХ ГЕНЕАЛОГИЙ) 2.04 MB
  Современная наука установила факт существования общеиндоевропейского языка праиндоевропейского этноса в виде племени или соплеменности праиндоевропейской культуры как реальности эпохи неолита....
31341. ПРОБЛЕМЫ ЛИНГВИСТИЧЕСКОЙ РЕКОНСТРУКЦИИ ГЕРМАНСКОЙ КОСМОГОНИИ 864.88 KB
  В синхронии основным методом семантической реконструкции является изучение контекста слова. Под контекстом имеется в виду не только непосредственное окружение слова, но и его дальние связи в пределах более крупных единств, например, строф, то есть объектом исследования оказываются как контактное, так и дистантное расположение лексем.
31342. ЛЕКСИКА КУХОННОЙ УТВАРИ И ПОСУДЫ В ОРЛОВСКИХ ГОВОРАХ 3.84 MB
  Комплексное исследование лексики кухонной утвари и посуды позволит предпринятому нами исследованию заполнить пустующую нишу в системе последовательных изысканий в области изучения различных тематических групп в орловских говорах: агентивной лексики Т. Наиболее изученной является эта область лексики в сибирских и северновеликорусских говорах. В разное время обращались к её описанию в томских говорах Ф.
31343. АНТИЧНЫЙ МИФ ОБ АТЛАНТЕ И АТЛАНТИДЕ: ОПЫТ ФОЛЬКЛОРИСТИЧЕСКОГО РАССМОТРЕНИЯ 2.61 MB
  Образ Атланта в античном мифе и эпосе - это ярчайший пример олицетворения в ми-фо-поэтической форме догреческой неведической культуры и культа, с которыми ведические греки вели ожесточенную борьбу, и от которых в то же время они заимствовали множество их достижений
31344. КУЛЬТ АРЕСА В РЕЛИГИОЗНЫХ ПРЕДСТАВЛЕНИЯХ СКИФСКИХ ПЛЕМЕН СЕВЕРНОГО ПРИЧЕРНОМОРЬЯ (V-III вв. до н.э.) 3.56 MB
  Неудивительно что у скифов главным занятием которых была война совершенно особое место занимал культ бога войны Ареса. С точки зрения марксистской концепции религии перед нами яркое подтверждение того что религиозные верования вызревают и принимают различные формы под воздействием определенных социальных условий достигнутой обществом степени развития. Здесь же отметим что важнейшие аспекты скифского военного культа остаются недостаточно разработанными. Считается что до нас не дошло ни одного скифского мифа связанного с Аресом.
31345. ГЕНЕЗИС И ЭВОЛЮЦИЯ СОЛЯРНЫХ АСПЕКТОВ МИФОЛОГИИ АПОЛЛОНА 9.61 MB
  Лосев писал что широкая публика а значительной мере также и наука отождествляет Аполлона и Солнце1. Цель предлагаемой им реконструкции состоит в том чтобы дать правдоподобное объяснение известному и довольно странному факту: по сравнению с восточными религиозными системами в Греции в историческую эпоху культ Солнца как и других астральных божеств был очень мало развит. Рапп объясняет это тем что известный нам греческий Гелиос был последним звеном цепи развития мифологических представлений и именно поэтому сохранил в своей мифологии...