ВУЗ:
Составители:
Рубрика:
Решение дифференциальных уравнений численным методом 9
или
⎩
⎨
⎧
Δ⋅+≈
Δ⋅+≈
+
+
.
;),,(
1
1
xyyy
xyyxfyy
iii
iiiii
&
&&&
(8*)
Существенно увеличить точность расчетов при том же шаге Δх можно
следующим образом. Значение производной
(
)
xy
&
вычисляют не в начале, а в
середине подинтервала
[]
1
;
+ii
xx . Тем самым, мы приходим к методу половинного
интервала, который также называют уточненным методом Эйлера:
⎪
⎪
⎪
⎪
⎩
⎪
⎪
⎪
⎪
⎨
⎧
Δ⋅
⎟
⎠
⎞
⎜
⎝
⎛
+≈
Δ⋅
⎟
⎟
⎠
⎞
⎜
⎜
⎝
⎛
⎟
⎠
⎞
⎜
⎝
⎛
+
⎟
⎠
⎞
⎜
⎝
⎛
≈
⎟
⎠
⎞
⎜
⎝
⎛
Δ
⋅
⎟
⎟
⎠
⎞
⎜
⎜
⎝
⎛
⎟
⎠
⎞
⎜
⎝
⎛
+
⎟
⎠
⎞
⎜
⎝
⎛
≈
⎟
⎠
⎞
⎜
⎝
⎛
+
−−+
.
d
d
;
d
d
,,
d
d
d
d
;
2d
d
,,
d
d
d
d
1
2/12/12/1
2/1
x
x
y
yy
x
x
y
yxf
x
y
x
y
x
x
y
yxf
x
y
x
y
i
ii
i
ii
ii
o
oo
o
(9)
или
⎪
⎩
⎪
⎨
⎧
Δ⋅+≈
Δ⋅+≈
Δ⋅+≈
+
−−+
.
;),,(
;2),,(
1
2/12/12/1
2/1
xyyy
xyyxfyy
xyyxfyy
iii
iiiii
oooo
&
&&&
&&&
(9*)
Здесь
2/1
y
&
– значение функции
(
)
xy
&
в середине первого подинтервала
[]
1
; xx
o
,
2/1+i
y
&
– значение функции
(
)
xy
&
в середине подинтервала
[]
1
;
+ii
xx .
Алгоритм решения ДУ второго порядка уточненным методом Эйлера:
1. Составить ДУ второго порядка в виде (4) или (4*) и перейти к
приближенным равенствам (5) и (6).
2. Задать начальные условия (х
о
, у
о
,
()
o
o
xy
x
y
&
=
⎟
⎠
⎞
⎜
⎝
⎛
d
d
). Смоделировать два разных
набора значений переменной х с шагом Δх
1) для функции
()
xy
&
:
х
о
2
2/1
x
xx
o
Δ
+=
xxx Δ+=
2/12/3
xxx Δ+=
2/32/5
…
xxx
ii
Δ+=
−+ 2/12/1
…
2) для функции
()
xy
:
х
о
xxx
o
Δ
+
=
1
xxx Δ
+
=
12
xxx Δ
+
=
23
…
xxx
ii
Δ+
=
+1
…
3. Вычислить значение функции
(
)
xy
&
в середине первого интервала, т.е. в
Решение дифференциальных уравнений численным методом 9
или
⎧ y& i +1 ≈ y& i + f ( xi , yi , y& i ) ⋅ Δx;
⎨ (8*)
y
⎩ i +1 ≈ y i + y
& i ⋅ Δx .
Существенно увеличить точность расчетов при том же шаге Δх можно
следующим образом. Значение производной y& ( x ) вычисляют не в начале, а в
середине подинтервала [xi ; xi+1 ] . Тем самым, мы приходим к методу половинного
интервала, который также называют уточненным методом Эйлера:
⎧⎛ dy ⎞ ⎛ dy ⎞ ⎛ ⎛ dy ⎞ ⎞ Δx
⎪⎜ ⎟ ≈ ⎜ ⎟ + f ⎜⎜ xo , y o , ⎜ ⎟ ⎟⎟ ⋅ ;
⎪⎝ dx ⎠1 / 2 ⎝ dx ⎠ o ⎝ ⎝ dx ⎠ o ⎠ 2
⎪⎪⎛ dy ⎞ ⎛ dy ⎞ ⎛ ⎛ dy ⎞ ⎞
⎨⎜ ⎟ ≈⎜ ⎟ + f ⎜⎜ xi , yi , ⎜ ⎟ ⎟⎟ ⋅ Δx; (9)
⎪ ⎝ d x ⎠ i +1 / 2 ⎝ d x ⎠ i −1 / 2 ⎝ ⎝ d x ⎠ i −1 / 2 ⎠
⎪ ⎛ dy ⎞
⎪ yi +1 ≈ yi + ⎜ ⎟ ⋅ Δx.
⎪⎩ ⎝ dx ⎠ i
или
⎧ y&1 / 2 ≈ y& o + f ( xo , y o , y& o ) ⋅ Δx 2 ;
⎪
⎨ y& i +1 / 2 ≈ y& i −1 / 2 + f ( xi , yi , y& i −1 / 2 ) ⋅ Δx; (9*)
⎪ y ≈ y + y& ⋅ Δx.
⎩ i +1 i i
Здесь y&1 / 2 – значение функции y& ( x ) в середине первого подинтервала
[xo ; x1 ], y& i +1 / 2 – значение функции y& (x ) в середине подинтервала [xi ; xi+1 ] .
Алгоритм решения ДУ второго порядка уточненным методом Эйлера:
1. Составить ДУ второго порядка в виде (4) или (4*) и перейти к
приближенным равенствам (5) и (6).
⎛ dy ⎞
2. Задать начальные условия (хо, уо, ⎜ ⎟ = y& ( xo ) ). Смоделировать два разных
⎝ dx ⎠ o
набора значений переменной х с шагом Δх
1) для функции y& ( x ) : 2) для функции y ( x ) :
хо хо
x1 / 2 = xo + Δx x1 = xo + Δx
2
x2 = x1 + Δx
x3 / 2 = x1 / 2 + Δx
x3 = x2 + Δx
x5 / 2 = x3 / 2 + Δx
…
…
xi +1 = xi + Δx
xi +1 / 2 = xi −1 / 2 + Δx
…
…
3. Вычислить значение функции y& ( x ) в середине первого интервала, т.е. в
Страницы
- « первая
- ‹ предыдущая
- …
- 7
- 8
- 9
- 10
- 11
- …
- следующая ›
- последняя »
