РефератыМатематикаРеРешение задач методами Эйлера и Рунге-Кутта

Решение задач методами Эйлера и Рунге-Кутта

1. Построить кубический сплайн, интерполирующий функцию у = ¦(х) на [1,00; 1,20] для равномерного разбиения с шагом h = 0,04:


¦(х) = lnx


Найти значения в точках 1,05; 1,13; 1,17.


Решение


Построим таблицу значений функции на интервале [1,00; 1,20] с шагом


h = 0,04:























x ¦(х) = lnx
1 0
1,04 0,039221
1,08 0,076961
1,12 0,113329
1,16 0,14842
1,2 0,182322

Сплайн-интерполяция таблично заданной функции

1. На отрезке [
a, b] задать одномерную сетку


hx
= {xi
/ xi
= xi
–1
+ hi
, hi
> 0, i = 1, 2, 3, …, n; x0
= a, xn
= b}


и значения yi
= f(xi
) в узлах сетки xi
, i = 0, 1, 2, …, n.


Задать
x*
Î (a, b).


2. Положить
ai
= yj
, i = 0, 1, 2, …, n.


3. Составить и решить трех диагональную систему методом прогонки:



Определить значения коэффициентов ci
, i = 0, 1, 2, …, n.


4. Определить значения коэффициентов
di
и bi
, i = 1, 2, 3, …, n, воспользовавшись формулами:


di
= (ci
–ci

1
) / hi
, i = 1, 2, …



5. Определить значение индекса 0 <
k£n из условия x*
Î [xk
– 1
, xk
].


6. Вычислить по формуле


S(x*
) = Sk
(x*
) = ak
+ bk
(x*
– xk
) + (ck
/ 2)(x*
– xk
)2
+ (dk
/ 6)(x*
– xk
)3
.


7. Процесс завершен:
S(x*
) – результат интерполяции табличных данных в точку x*
Î (a, b).


Результаты вычислений удобнее представлять в виде таблицы:
































ai
bi
ci
di
0,03922 0,96467 -1,188280 -29,70700
0,07696 0,92494 -0,798322 9,74897
0,11333 0,89366 -0,765997 0,80813
0,14842 0,85986 -0,92391 -3,94780
0,18232 0,84138 0,00000 23,09770

Значение функции в точке находится по формуле:


S(x*
) = Sk
(x*
) = ak
+ bk
(x*
– xk
) + (ck
/ 2)(x*
– xk
)2
+ (dk
/ 6)(x*
– xk
)3



2. Найти решение задачи Коши для дифференциального уравнения на равномерной сетке [a, b] с шагом 0,2 методом Эйлера и классическим методом Рунге-Кутта


, , 0 £ х £ 1


Решение. Метод Эйлера



- разностная аппроксимация Эйлера. Точность метода . Метод Рунге-Кутта


дифференциальный интерполирующий уравнение сплайн




Результаты вычислений удобнее представлять в виде таблиц:


Метод Эйлера






























x y
0 0 1
0,2 0,2 1
0,4 0,416 1.04
0,6 0,67392 1.1232
0,8 1,00639 1.25798
1 1,45926 1.45926

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


="1">































































i =
0 0 1 0 0,02 0,0202 0,040808 1,0202
1 0,2 1,0202 0,0408081 0,0624363 0,0630852 0,0866629 1,08329
2 0,4 1,08329 0,086663 0,112662 0,113962 0,14367 1,19722
3 0,6 1,19722 0,143666 0,177667 0,180047 0,220362 1,37713
4 0,8 1,37713 0,22034 0,267713 0,271977 0,329821 1,64872
5 1 1,64872 0,329743 0,398989 0,406607 0,493278 2,05442

3. Найти решение задачи безусловной минимизации ¦(х) ®min, х ÎR2
. Установить множество глобального решения


¦(х) =


Решение


Данная задача решается методом сопряженных направлений (градиентов). Алгоритм данного метода представлен далее.


Метод сопряженных направлений

1 Начать с точки
x(0)
= (x1
(0)
, x2
(0)
, …, xn
(0)

и n-линейно независимых направлений s(i)
,


i = 1, 2, …, n, которые могут быть выбраны, например, совпадающими с координатными направлениями e(i)
, i = 1, 2, …, n. Положить k = 1.


2 Начиная с точки
x(0)
осуществить одномерный поиск для функции f(x) в направлении s(n)
и определить точку z(1)
.


3 Начиная с точки
z(1)
осуществить последовательно n – 1 одномерный поиск для f(x) сначала в направлении s(1)
, а затем из полученной точки в направлении s(2)
и т. д. до одномерного поиска в направлении s(n – 1)
включительно. В результате этих действий будет определена точка x(2)
.


4 Начиная с точки
x(2)
осуществить одномерный поиск для f(x) в направлении s(n)
и определить точку z(2)
.


Согласно обобщенному свойству "параллельного подпространства" направление


s(
n
+ 1)
= z(2)
– z(1)


будет сопряженным по отношению к направлениям s(
n
)
, s(
n
– 1)
, …, s(
n

k
+ 1)
(для k = 1 – только к направлению s(
n
)
).


5 Начиная с точки
z(2)
осуществить поиск в направлении s(
n
+ 1)
и определить x*
.


6 Положить
k: = k + 1. Если k = n, перейти к выполнению п. 8.


7 Положить
z(1)
: = x*
и s(
i
)
: = s(
i
+ 1)
, i = 1, 2, …, n.и перейти к выполнению п. 2.


8 Процесс вычислений завершен:
x*
– точка минимума функции f(x).


Результаты вычислений удобнее представлять в виде таблицы:


Таблица результатов






































k
0 0 0 1 1 0
1 0 0 1 0 2 2 0 -4
2 2 0 0 1 -2 2 -2 -8

Точка (2,-2) – точка минимума функции. В этой точке функция принимает значение .

Сохранить в соц. сетях:
Обсуждение:
comments powered by Disqus

Название реферата: Решение задач методами Эйлера и Рунге-Кутта

Слов:867
Символов:8615
Размер:16.83 Кб.