ВУЗ:
Составители:
Рубрика:
49
Замечание о составлении тестового примера, демонстрирующего удвоение шага
интегрирования при автоматическом выборе шага методом
удвоения и деления шага пополам.
Пусть решается задача Коши методом Рунге - Кутта порядка S и
каким-либо методом на каждом шаге оценивается погрешность
решения. Тогда если в качестве тестового примера взять задачу
Коши, решением которой является полином степени не выше
S
, то
погрешность на каждом шаге будет равна нулю (численный метод
будет давать точное решение ) и , следовательно , шаг
интегрирования будет постоянно удваиваться.
К примеру, пусть начальный шаг интегрирования задается равным
0.005. Тогда последовательность точек, в которых будет
выдаваться решение , такова :
155.0,075.0,035.0,015.0,005.0,0
543210
=
=
=
=
=
=
xxxxxx
и так далее.
Замечание о составлении тестового примера, демонстрирующего уменьшение
шага интегрирования в два раза при автоматическом выборе шага
методом удвоения и деления шага пополам.
Пусть программируется метод Рунге - Кутта второго порядка (22).
Из Примера 1 о составлении дифференциальной задачи с заранее
известной погрешностью метода на шаге следует, что при
интегрировании уравнения
2
12xy =
′
от начального условия 0)0(
=
y
погрешность метода на любом шаге равна
3
h . Пусть начальный шаг
интегрирования
H
, а требуемая точность решения
(
)
3
2
k
H
, где
k
–
некоторое целое число . Тогда очевидно , что при вычислении
первой точки первоначальный шаг будет k раз поделен на два , а
далее расчетные точки будут следовать с постоянным шагом,
равным
k
H
2
:
(
)
(
)
kkk
H
x
H
x
H
xx
2
3,
2
2,
2
,0
3210
⋅=⋅=== и так далее.
49 Замечание о составлении тестового примера, демонстрирующего удвоение шага интегрирования при автоматическом выборе шага методом удвоения и деления шага пополам. Пусть решается задача Коши методом Рунге-Кутта порядка S и каким-либо методом на каждом шаге оценивается погрешность решения. Тогда если в качестве тестового примера взять задачу Коши, решением которой является полином степени не выше S , то погрешность на каждом шаге будет равна нулю (численный метод будет давать точное решение) и, следовательно, шаг интегрирования будет постоянно удваиваться. К примеру, пусть начальный шаг интегрирования задается равным 0.005. Тогда последовательность точек, в которых будет выдаваться решение, такова: x0 =0, x1 =0.005, x 2 =0.015, x3 =0.035, x 4 =0.075, x5 =0.155 и так далее. Замечание о составлении тестового примера, демонстрирующего уменьшение шага интегрирования в два раза при автоматическом выборе шага методом удвоения и деления шага пополам. Пусть программируется метод Рунге-Кутта второго порядка (22). Из Примера 1 о составлении дифференциальной задачи с заранее известной погрешностью метода на шаге следует, что при интегрировании уравнения y ′ =12x 2 от начального условия y(0) =0 погрешность метода на любом шаге равна h 3 . Пусть начальный шаг интегрирования H , а требуемая точность решения H ( 2 ) , где k k 3 – некоторое целое число. Тогда очевидно, что при вычислении первой точки первоначальный шаг будет k раз поделен на два, а далее расчетные точки будут следовать с постоянным шагом, равным H : 2k x0 =0, x1 =H 2k ( 2 ), x , x 2 =2 ⋅ H k 3 ( 2 ) и так далее. =3 ⋅ H k