Тема:Решение задач методами Эйлера и РунгеКутта»,»
1. Построить кубический сплайн, интерполирующий функцию у = ¦(х) на [1,00; 1,20] для равномерного разбиения с шагом h = 0,04:
¦(х) = ln x
Найти значения в точках 1,05; 1,13; 1,17.
Решение
Построим таблицу значений функции на интервале [1,00; 1,20] с шагом= 0,04:
x¦(х) = ln x101,040,0392211,080,0769611,120,1133291,160,148421,20,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).
.Положить ai = yj, i = 0, 1, 2, …, n.
.Составить и решить трех диагональную систему методом прогонки:
Определить значения коэффициентов 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].
.Вычислить по формуле
S(x*) = Sk(x*) = ak + bk(x* xk) + (ck / 2)(x* xk)2 + (dk / 6)(x* xk)3.
7.Процесс завершен: S(x*) результат интерполяции табличных данных в точку x* Î (a, b).
Результаты вычислений удобнее представлять в виде таблицы:
aibicidi0,039220,964671,18828029,707000,076960,924940,7983229,748970,113330,893660,7659970,808130,148420,859860,923913,947800,182320,841380,0000023,09770
Значение функции в точке находится по формуле:
S(x*) = Sk(x*) = ak + bk(x* xk) + (ck / 2)(x* xk)2 + (dk / 6)(x* xk)3
. Найти решение задачи Коши для дифференциального уравнения на равномерной сетке [a, b] с шагом 0,2 методом Эйлера и классическим методом РунгеКутта
, , 0 £ х £ 1
Решение. Метод Эйлера
разностная аппроксимация Эйлера. Точность метода . Метод РунгеКутта
дифференциальный интерполирующий уравнение сплайн
Результаты вычислений удобнее представлять в виде таблиц:
Метод Эйлера
xy0010,20,210,40,4161.040,60,673921.12320,81,006391.2579811,459261.45926
Метод РунгеКутта
i=00100,020,02020,0408081,020210,21,02020,04080810,06243630,06308520,08666291,0832920,41,083290,0866630,1126620,1139620,143671,1972230,61,197220,1436660,1776670,1800470,2203621,3771340,81,377130,220340,2677130,2719770,3298211,64872511,648720,3297430,3989890,4066070,4932782,05442
. Найти решение задачи безусловной минимизации ¦(х) ® 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.
Начиная с точки x(0) осуществить одномерный поиск для функции f(x) в направлении s(n) и определить точку z(1).
Начиная с точки z(1) осуществить последовательно n 1 одномерный поиск для f(x) сначала в направлении s(1), а затем из полученной точки в направлении s(2) и т. д. до одномерного поиска в направлении s(n 1) включительно. В результате этих действий будет определена точка x(2).
Начиная с точки 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)).
Начиная с точки z(2) осуществить поиск в направлении s(n + 1) и определить x*.
Положить k: = k + 1. Если k = n, перейти к выполнению п. 8.
Положить z(1): = x* и s(i): = s(i + 1), i = 1, 2, …, n.и перейти к выполнению п. 2.
Процесс вычислений завершен: x* точка минимума функции f(x).
Результаты вычислений удобнее представлять в виде таблицы:
Таблица результатов
k000110100102204220012228Точка (2,2) точка минимума функции. В этой точке функция принимает значение .