![]() |
|
сделать стартовой | добавить в избранное |
![]() |
Расчет дифференциального уравнения первого, второго и третьего порядка методом Эйлера |
Міністерство освіти України ДАЛПУ Кафедра автоматизації технологічних процесів і приладобудування КУРСОВА РОБОТА з курсу “Математичне моделювання на ЕОМ” на тему “Розв’язок диференціального рівняння виду апу(п) ап-1у(п-1) а1у1 а0у=кх при заданих початкових умовах з автоматичним вибором кроку методом Ейлера” Виконала студентка групи БА-4-97 Богданова Ольга Олександрівна Холоденко Вероніка Миколаївна Перевірила Заргун Валентина Василівна 1998 Блок-схема алгоритма Блок-схема алгоритма начало у/=f(x,y) y(x0)=y0 x0, x0 a h, h/2 k:=0 xk 1/2:=xk h/2 yk 1/2:=yk f(xk, yk)h/2 ?k:= f(xk 1/2, yk 1/2) xk 1:=xk h yk 1:=yk ?kh нет k:= да x0, y0, x1, y1 x , y конец ПОСТАНОВКА ЗАДАЧИ И МЕТОД РЕШЕНИЯ Решить дифференциальное уравнение у/=f(x,y) численным методом - это значит для заданной последовательности аргументов х0, х1 , х и числа у0, не определяя функцию у=F(x), найти такие значения у1, у2, , у , что уi=F(xi)(i=1,2, , ) и F(x0)=y0. Таким образом, численные методы позволяют вместо нахождения функции У=F(x) получить таблицу значений этой функции для заданной последовательности аргументов. Величина h=xk-xk-1 называется шагом интегрирования. Метод Эйлера относиться к численным методам, дающим решение в виде таблицы приближенных значений искомой функции у(х). Он является сравнительно грубым и применяется в основном для ориентировочных расчетов. Однако идеи, положенные в основу метода Эйлера, являются исходными для ряда других методов. Рассмотрим дифференциальное уравнение первого порядка y/=f(x,y) (1) с начальным условием x=x0, y(x0)=y0 (2) Требуется найти решение уравнения (1) на отрезке на равных частей и получим последовательность х0, х1, х2, , х , где xi=x0 ih (i=0,1, , ), а h=(b-a)/ -шаг интегрирования. В методе Эйлера приближенные значения у(хi)(yi вычисляются последовательно по формулам уi hf(xi, yi) (i=0,1,2 ). При этом искомая интегральная кривая у=у(х), проходящая через точку М0(х0, у0), заменяется ломаной М0М1М2 с вершинами Мi(xi, yi) (i=0,1,2, ); каждое звено МiMi 1 этой ломаной, называемой ломаной Эйлера, имеет направление, совпадающее с направлением той интегральной кривой уравнения (1), которая проходит через точку Мi. Если правая часть уравнения (1) в некотором прямоугольнике R{ x-x0 (a, y-y0 (b}удовлетворяет условиям: f(x, y1)- f(x, y2) ( y1-y2 ( =co s ), df/dx = df/dx f(df/dy) ( M (M=co s ),то имеет место следующая оценка погрешности: y(x )-y ( hM/2 , (3)где у(х )-значение точного решения уравнения(1) при х=х , а у - приближенное значение, полученное на -ом шаге. Формула (3) имеет в основном теоретическое применение. На практике иногда оказывается более удобным двойной просчет: сначала расчет ведется с шагом h, затем шаг дробят и повторный расчет ведется с шагом h/2. Погрешность более точного значения у оценивается формулой y -y(x ) ( y -y . Метод Эйлера легко распространяется на системы дифференциальных уравнений и на дифференциальные уравнения высших порядков. Последние должны быть предварительно приведены к системе дифференциальных уравнений первого порядка. Модифицированный метод Эйлера более точен. Рассмотрим дифференциальное уравнение (1) y/=f(x,y) с начальным условием y(x0)=y0.
Разобьем наш участок интегрирования на равных частей. На малом участке у интегральную кривую заменим прямой k/ y=y(x) линией. Получаем точку Мк(хк,ук). Мк Мк/ yk 1 yk хк хк1/2 xk h=xk1 х Через Мк проводим касательную: у=ук=f(xk,yk)(x-xk). Делим отрезок (хк,хк1) пополам: x k/=xk h/2=xk 1/2y k/=yk f(xk,yk)h/2=yk yk 1/2 Получаем точку k/. В этой точке строим следующую касательную: y(xk 1/2)=f(xk 1/2, yk 1/2)=?k Из точки Мк проводим прямую с угловым коэффициентом ?к и определяем точку пересечения этой прямой с прямой Хк1. Получаем точку Мк/. В качестве ук 1 принимаем ординату точки Мк/. Тогда: ук 1=ук ?кh xk 1=xk h (4) ?k=f(xk h/2, yk f(xk,Yk)h/2) yk=yk-1 f(xk-1,yk-1)h (4)-рекурентные формулы метода Эйлера. Сначала вычисляют вспомогательные значения искомой функции ук 1/2 в точках хк 1/2, затем находят значение правой части уравнения (1) в средней точке y/k 1/2=f(xk 1/2, yk 1/2) и определяют ук 1. Для оценки погрешности в точке хк проводят вычисления ук с шагом h, затем с шагом 2h и берут 1/3 разницы этих значений: ук -у(хк) =1/3(yk -yk), где у(х)-точное решение дифференциального уравнения. Таким образом, методом Эйлера можно решать уравнения любых порядков. Например, чтобы решить уравнение второго порядка y//=f(y/,y,x) c начальными условиями y/(x0)=y/0, y(x0)=y0, выполняется замена: y/=z z/=f(x,y,z) Тем самым преобразуются начальные условия: y(x0)=y0, z(x0)=z0, z0=y/0. РЕШЕНИЕ КОНТРОЛЬНОГО ПРИМЕРА Приведем расчет дифференциального уравнения первого, второго и третьего порядка методом Эйлера1. Пусть дано дифференциальное уравнение первого порядка: y/=2x-y Требуется найти решение на отрезке c шагом h=(1-0)/5=0,2 Начальные условия: у0=1; Пользуясь рекурентными формулами (4), находим: 1). x1=0,2; х1/2=0,1; y(x1)=y(x0) ?0h; y(x1/2)=y(x0) f(x0,y0)h/2; f(x0,y0)=2(0-1=-1 y(x1/2)=1-1(0,1=0,9 ?0=2(0,1-0,9=-0,7 y1=1-0,1(0,2=0,862). y(x2)=y(x1) ?1h; x2=0,2 0,2=0,4; x1 1/2=x1 h/2=0,2 0,1=0,3 y(x1 1/2)=y(x1) f(x1,y(x1))h/2 f(x1,y1)=2(0,2-0,86=-0,46 y(x1 1/2)=0,86-0,46(0,1=0,814 ?1=2 0,3-0,814=-0,214 y2=0,86-0,214 0,2=0,81723). x3=0,4 0,2=0,6; x2 1/2=x2 h/2=0,4 0,1=0,5 f(x2,y2)=2 0,4-0,8172=-0,0172 y2 1/2=0,8172-0,0172 0,1=0,81548 ?2=2 0,5-0,81548=0,18452 y3=0,8172 0,18452 0,2=0,854104 4).x4=0,8; x3 1/2=x3 h/2=0,6 0,1=0,7 f(x3,y3)=2 0,6-0,854104=0,345896 y3 1/2=0,854104 0,345896 0,1=0,8886936 ?3=2 0,7-0,89=0,5113064 y4=0,854104 0,5113064 0,2=0,956365285).x5=1; x4 1/2=0,8 0,1=0,9 f(x4,y4)=2 0,8-0,956=0,64363472 y4 1/2=0,956 0,643 0,1=1,020728752; ?4=2 0,9-1,02=0,779271248 y5=0,956 0,7792 0,2=1,112219532. Дано уравнение второго порядка: y//=2x-y y/ Находим решение на том же отрезке c шагом h=0,2; Замена: y/=z z/=2x-y z Начальные условия: у0=1 z0=11).x1=0,2; x1/2=0,1 y(z1)=y(z0) ?0h z(x1,y1)=z(x0,y0) ?0h y(z1/2)=y(z0) f(z0,y0)h/2 z(x1/2,y1/2)=z(x0,y0) f(x0,y0,z0)h/2 f(z0,y0)=f10=1 f(x0,y0,z0)=f20=2 0- 1 1=0 y1/2=1 1 0,1=1,1 z1/2=1 0 0,1=1 ?0=z0=1 ?0=2 0,1- 1,1 1=0,1 y1=1 0,2 1=1,2 z1=1 0,2 0,1=1,022).x2 0,4; x1 1/2=0,3 f11=z1=1,02 f21=2 0,2- 1,2 1,02=0,22 y1 1/2=1,2 1,02 0,1=1,1 z1 1/2=1,02 0,22 0,1=1,042 ?1=z1 1/2=1,042 ?1=2 0,3- 1,302 1,042=0,34 y2=1,2 1,042 0,2=1,4084 z2=1.0
2 0,34 0,2=1,0883).x3=0,6; x2 1/2=0,5 f12=z2=1,088 f22=2 0,4- 1,4084 1,088=0,4796 y2 1/2=1,4084 1,088 0,1=1,5172 z2 1/2=1,088 0,4796 0,1=1,13596 ?2=z2 1/2=1,13596 ?2=2 0,5- 1,5172 1,13596=0,61876 y3=1,4084 1,136 0,2=1,635592 z3=1,088 0,61876 0,2=1,2117524).x4=0,8; x3 1/2=0,7 f13=z3=1,211752 f23=2 0,6- 1,636 1,212=0,77616 y3 1/2=1,636 1,212 0,1=1,7567672 z3 1/2=1,212 0,776 0,1=1,289368 ?3=z3 1/2=1,289368 ?3=2 0,7- 1,7568 1,289=0,9326008 y4=1,6 1,289 0,2=1,8934656 z4=1,212 0,93 0,2=1,39827216 5).x5=1; y4 1/2=0,9 f14=z4=1,39827216 f24=2 0,8- 1,893 1,398=1,10480656 y4 1/2=1,893 1,398 0,1=2,0332928 z4 1/2=1,398 1,105 0,1=1,508752816 ?4=z4 1/2=1,508752816 ?4=2 0,9- 2,03 1,5=1,27546 y5=1,893 1,5 0,2=2,195216163 z5=1,398 1,275 0,2=1,653364163. Чтобы решить уравнение третьего порядка y///=2x-y-y/ y// на отрезке , с шагом h=0,2 и начальными условиями y0//=1 y0/=1 y0=1 необходимо сделать 3 замены: y/=a y0/=a0=1 y//=a/=b y0//=b0=1 b/=2x-y-a b1).x1=0,2; x1/2=0,1 y(a1)=y(a0) a0h y(a1/2)=y(a0) f10h/2 a(b1)=a(b0) ?0h a(b1/2)=a(b0) f20h/2 b(x1,y1,a1)=b(x0,y0,a0) ?0h b(x1/2,y1/2,a1/2)=b(x0,y0,a0) f30h/2 f10=f(a0,y(a0))=1 y1/2=1 1 0,1=1,1 f20=f(b0,a(b0))=1 a1/2=1 1 0,1=1,1 f30=f(x0,y0,a0,b0)=-1 b1/2=1-1 0,1=0,9 ?0=a1/2=1,1 y(a1)=1 1,1 0,2=1,22 ?0=b1/2=0,9 a(b1)=1 0,9 0,2=1,18 ?0=2 0,1-1,1-1,1 0,9=-1,1 b(x1,y1,a1)=1- 1,1 0,2=0,782).x2=0,4; x1 1/2=x1 h/2=0,3 f11=a1=1,18 y1 1/2=1,22 1,18 0,1=1.338 f21=b1=0,78 a1 1/2=1,18 0,78 0,1=1,258 f31=2 0,2-1,22-1,18 0,78=-1,22 b1 1/2=-1,22 0,1 0,78=0,658 ?1=a1 1/2=1,258 y2=1,22 1,258 0,2=1,4716 ?1=b1 1/2=0,658 a2=1,18 0,658 0,2=1,3116 ?1=2 0,3-1,338-1,258 0,658=-1,338 b2=0,78-1,338 0,2=0,51243).x3=0,6; x2 1/2=0,5 f12=a2=1,3116 y2 1/2=1,47 1,3 0,1=1,60276 f22=b2=0,5124 a2 1/2=1,3116 0,5 0,1=1.36284 f32=2 0,4-1,47-1,31 0,512=-1,4708 b2 1/2=0,4-1,4 0,1=0,36542 ?2=1,36284 y3=1,4716 1,3116 0,2=1,744168 ?2=0,36542 a3=1,3116 0,3654 0,2=1,384664 ?2=2 0,5-1,6-1,36 0,365=-1,60018 b3= 0,51-1,60018 0,2=0,1923644).x4=0,8; x3 1/2=0,7 f13=1,384664 y3 1/2=1,74 1,38 0,1=1,8826364 f23=0,192364 a3 1/2=1,38 0,19 0,1=1,4039204 f33=2 0,6-1,7-1,38 0,19=-1,736488 b3 1/2=0,19-1,7 0,1=0,0187152 ?3=1,4039204 y4=1,74 1,4 0,2=2,0249477 ?3=0,0187152 a4=1,38 0,9187 0,2=1,388403 ?3=2 0,7-1,88-1,4 0,0187=-1,8678416 b4=0,192-1,87 0,2=-0,18122355).x4=1; x4 1/2=0,9 f14=1,388403 y4 1/2=2,02 1,388 0,1=2,16379478 f24=-0,1812235 a4 1/2=1,4- 0.181 0,1=1,370306608 f34=2 0,8-2,02-1,388-0,18=-1,9945834 b4 1/2=-0,18-1,99 0,1=- 0,38066266 ?4=1,3703 y5=2,02 1,37 0,2=2,2990038 ?4=-0,38066 a5=1,388- 0,38 0,2=1,3122669 ?4=2 0,9-2,16-1,37-0,38=-2,114764056 b5=-0,181-2,1 0,2=-0,6041734 Программа на urbo Pascal uses cr ,pram,kurs1 1; var yx,xy,l,v,p,ff,ay,by,x:array of real; i, ,o:i eger; c,d,h,k:real; label lap1; begi scree 1; clrscr; wri el ('введите наивысший порядок производной не больше трех '); readl ( ); if =0 he begi wri el ('это прямолинейная зависимость и решается без метода Эйлера '); go o lap1;e d; wri el ('введите коэффициенты {a0,a1}'); for i:=0 o do readl (l=0) or ( =3) a d (l=0) he begi wri el ('деление на ноль'); go o lap1; e d; wri el ('введите коэффициент при x'); readl (k); wri el ('введите отрезок '); readl (c,d); o:=5; h:=abs(d-c)/o; wri el ('шаг=',h:1:1); wri el ('задайте начальные условия y(x)= '); for i:=0 o -1 do readl (v; by)/l:=c; go oxy(32,1); wri e(' '); go oxy(32,2); wri e(' x y a b '); go oxy(32,3); wri e(' ',c:7:7,' ',yx:7:7,' '); for i:=0 o o-1 do begi x:=ay:=(k x:=x h b h/2; p by; e d; for i:=0 o o-1 do begi go oxy(32,4 i); wri e(' ',xy:7:7,' '); e d; go oxy(32,4 o); wri e(' '); e d; if =2 he begi x yx; go oxy(32,1); wri e(' '); go oxy(32,2); wri e(' x y a '); go oxy(32,3); wri e(' ',c:7:7,' ',yx:7:7,' '); for i:=0 o o-1 do begi x:=ay a h a h/2; p; e d; for i:=0 o o-1 do begi go oxy(32,4 i); wri e(' ',xy:7:7,' '); e d; go oxy(32,4 o); wri e(' '); e d; if =1 he begi x; for i:=0 o o-1 do begi x h/2; ff h ff)/l; e d; go oxy(32,1); wri e(' '); go oxy(32,2); wri e(' x y '); go oxy(32,3); wri e(' ',c:7:7,' ',yx:7:7,' '); for i:=0 o o-1 do begi go oxy(32,4 i); wri e(' ',xy:7:7,' '); e d; go oxy(32,o 4); wri e(' '); e d; lap1:readl ; pramo; delay(10000); clrscr; e d.
Ну, вот Сначала враги развития, потом саботажники ну, а дальше 1937 год, разумеется! Нет, не буду я соглашаться с читателем! И не только по причинам политкорректного (переходящего в моральное!) свойства. Саботаж это продуманная система мер, направленная на желаемый результат. Антидрайв это не меры, а особая пассивность. Если «плюс бесконечность» это страстная влюбленность в предмет, а «минус бесконечность» это страстная ненависть к предмету, то безразличие это нуль Так ведь? В арифметике нуль и есть нуль. Уже в дифференциальном исчислении можно говорить о бесконечно малых (т.Pе. бесконечно близких к нулю) величинах разных порядков: первого, второго, третьего и так далее. В более сложных разделах математики можно говорить о бесконечно малых бесконечного порядка и сравнивать порядки (бесконечный порядок P1, P2 и так далее). Не утомляя читателя математической заумью, я предложу ему на рассмотрение нуль, возведенный в бесконечную степень. И разграничение бездрайвия и антидрайва как нуля и нуля, возведенного в бесконечную степень Нуль, возведенный в бесконечную степень,P это не «минус бесконечность», а тот же нуль
1. Решение дифференциального уравнения первого порядка
2. Русско-венгерские отношения второй трети ХI в.
3. Творчество К. Брюллова в зарубежной и отечественной художественной критике второй трети XIX века
5. Аналитические свойства решений системы двух дифференциальных уравнений третьего порядка
9. Решение систем дифференциальных уравнений при помощи неявной схемы Адамса 3-го порядка
10. РЕШЕНИЕ СИСТЕМ ЛИНЕЙНЫХ ДИФФЕРЕНЦИАЛЬНЫХ УРАВНЕНИЙ ПЯТИТОЧЕЧНЫМ МЕТОДОМ АДАМСА – БАШФОРТА
11. Линейные системы дифференциальных уравнений с периодическими коэффициентами
12. Устойчивость систем дифференциальных уравнений
13. О преобразовании дифференциальных систем уравнений в случае сингулярных пучков матриц
14. Роль теории дифференциальных уравнений в современной математике и ее приложениях
15. Дифференциальные уравнения
16. Интегрирование линейного дифференциального уравнения с помощью степенных рядов
17. РЕШЕНИЕ СИСТЕМ ЛИНЕЙНЫХ ДИФФЕРЕНЦИАЛЬНЫХ УРАВНЕНИЙ ПЯТИТОЧЕЧНЫМ МЕТОДОМ АДАМСА – БАШФОРТА
18. Устойчивость систем дифференциальных уравнений
20. Дифференциальные уравнения неустановившегося движения воздуха по рудничным воздуховодам
21. Численный расчет дифференциальных уравнений
26. Решение обыкновенных дифференциальных уравнений
27. Дифференциальные уравнения и описание непрерывных систем
28. Асимптотика решений дифференциальных уравнений
29. Дифференциальные уравнения
30. Дифференциальные уравнения линейных систем автоматического регулирования
31. Исследование методов решения системы дифференциальных уравнений с постоянной матрицей
32. Матрицы. Дифференциальные уравнения
33. Решение дифференциальных уравнений
34. Применение операционного исчисления при решении дифференциальных уравнений
35. Дифференциальные уравнения с запаздывающим аргументом
36. Дифференциальное уравнение теплопроводимости
37. Широкозонная система спутниковой дифференциальной навигации (теоретический аспект)
41. Основные понятия дифференциального исчисления и история их развития (Бакалавр)
42. Дифференцированные уравнения
43. Решение нелинейного уравнения методом касательных
44. Поверхности второго порядка
45. Построение решения задачи Гурса для телеграфного уравнения методом Римана
46. Кривые третьего и четвертого порядка
47. Уравнение Кортевега - де Фриса, солитон, уединенная волна
49. Приближённые методы решения алгебраического уравнения
50. Вычисление корней нелинейного уравнения
51. Итерационные методы решения систем линейных уравнений с неединственными коэффициентами
53. Расчет частотных характеристик активного фильтра второго порядка на операционном усилителе
57. Вывод уравнения Шрёдингера
59. Общий аналитический метод решения алгебраических уравнений четвертой степени
60. Метод касательных решения нелинейных уравнений
61. Применение графиков в решении уравнений
62. Виды тригонометрических уравнений
63. Рациональные уравнения и неравенства
64. Вычисление корней нелинейного уравнения
65. Кривые и поверхности второго порядка
66. Об алгебраических уравнениях высших степеней
67. Поверхности второго порядка
68. Приближённые методы решения алгебраического уравнения
69. Приближенное решение уравнений методом хорд и касательных
73. Численное решение модельного уравнения диссипации, конвекции и кинетики
74. Физика как источник теорем дифференциального исчисления
75. Алгебраическое и графическое решение уравнений, содержащих модули
76. Решение иррациональных уравнений
77. Нестандартные методы решения тригонометрических уравнений: графический и функциональный
78. Иррациональные уравнения и неравенства
79. Применение свойств функций для решения уравнений
80. Диагноз и дифференциальный диагноз приобретенных пороков сердца
81. Дифференциальная диагностика климактерия и болезней климактерического периода
82. Дифференциальный диагноз заболеваний суставов
83. Литература - Инфекционные болезни (Дифференциально-диагностические критерии)
84. Литература - Терапия (Дифференциальная диагностика выпота в плевральную
85. Литература - Терапия (Дифференциальный диагноз при кардиомегалиях)
90. Уравнение Дирака
92. Представление о личности в общей и дифференциальной психологии
93. Расчет дифференциального каскада с транзисторным источником тока
94. Расчет частотных характеристик активного фильтра второго порядка на операционном усилителе
95. Определение скорости точки по заданным уравнениям ее движения
96. Система уравнений Максвелла в сплошной среде. Граничные условия
97. Уравнение прибыли с одним неизвестным
98. Изоморфизм уравнений диссипативных свойств растворов электролитов