Моделирование колебательных процессов (на примере физических задач). Щеглова И. Ю - 8 стр.

UptoLike

Рубрика: 

8 Решение дифференциальных уравнений численным методом
1. Составить ДУ второго порядка в виде (4) и перейти к приближенным
равенствам (5) и (6).
2. Задать начальные условия (х
о
, у
о
,
()
o
o
o
x
xy
x
y
x
y
&
=
d
d
d
d
) и шаг Δх
изменения независимой переменной. Смоделировать значения переменной х с
шагом Δх:
х
о
xxx
o
Δ+=
1
xxx Δ+=
12
3. Вычислить значение функции
(
)
xy
&
в точке xxx
o
Δ
+
=
1
:
()
xyyxfyy
oooo
Δ+
&&&
,,
1
где
()()
11
xyxxyy
o
&&&
=Δ+= и
(
)
oo
xyy
&&
= .
4. Вычислить значение функции у(х) в точке xxx
o
Δ
+
=
1
:
xyyy
oo
Δ+
&
1
.
5. Повторить процедуру, описанную в пп. 3 и 4 и найти в точке xxx
Δ
+
=
12
1) значение функции
()
xy
&
()
xyyxfyxyy
Δ
+=
111122
,,)(
&&&&
;
2) значение функции у(х)
xyyxyy Δ+=
1122
)(
&
и т.д. для всех значений переменной х.
Полученные в результате решения ДУ значения можно представить в виде
таблицы:
х
y
&
у
х
о
o
y
&
у
o
х
1
=х
о
+Δх
(
)
xyyxfyy
oooo
Δ
+
&&&
,,
1
xyyy
oo
Δ+
&
1
х
2
=х
1
+Δх
(
)
xyyxfyy
Δ
+
11112
,,
&&&
xyyy Δ+
112
&
х
3
=х
2
+Δх
(
)
xyyxfyy
Δ
+
11113
,,
&&&
xyyy Δ+
223
&
x
i+1
=х
i
+Δх
(
)
xyyxfyy
iiiii
Δ
+
+
&&&
,,
1
xyyy
iii
Δ+
+
&
1
Таким образом, решение ДУ второго порядка можно выразить системой
уравнений:
=ΔΔ
+
Δ
+
++
+
ii
i
ii
i
ii
ii
xxxx
x
y
yy
x
x
y
yxf
x
y
x
y
11
1
;
d
d
;
d
d
,,
d
d
d
d
(8)
8                            Решение дифференциальных уравнений численным методом


      1. Составить ДУ второго порядка в виде (4) и перейти к приближенным
равенствам (5) и (6).
                                               ⎛ dy ⎞    ⎛ dy ⎞
      2. Задать начальные условия (хо, уо, ⎜ ⎟ ≡ ⎜ ⎟ = y& ( xo ) ) и шаг Δх
                                               ⎝ dx ⎠ xo ⎝ dx ⎠ o
изменения независимой переменной. Смоделировать значения переменной х с
шагом Δх:
    хо
     x1 = xo + Δx
     x2 = x1 + Δx
    …
      3. Вычислить значение функции y& ( x ) в точке x1 = xo + Δx :
      y&1 ≈ y& o + f ( xo , y o , y& o ) ⋅ Δx
где y&1 = y& ( xo + Δx ) = y& ( x1 ) и y& o = y& ( xo ) .
       4. Вычислить значение функции у(х) в точке x1 = xo + Δx :
      y1 ≈ yo + y& o ⋅ Δx .
      5. Повторить процедуру, описанную в пп. 3 и 4 и найти в точке x2 = x1 + Δx
1) значение функции y& ( x )
      y& 2 = y& ( x2 ) ≈ y&1 + f ( x1 , y1 , y&1 ) ⋅ Δx ;
2) значение функции у(х)
      y 2 = y ( x2 ) ≈ y1 + y&1 ⋅ Δx
и т.д. для всех значений переменной х.
       Полученные в результате решения ДУ значения можно представить в виде
таблицы:
             х                             y&                                 у
        хо                y& o                                       уo
        х1=хо+Δх          y&1 ≈ y& o + f ( xo , yo , y& o ) ⋅ Δx      y1 ≈ yo + y& o ⋅ Δx
        х2=х1+Δх          y& 2 ≈ y&1 + f ( x1 , y1 , y&1 ) ⋅ Δx       y 2 ≈ y1 + y&1 ⋅ Δx
        х3=х2+Δх          y& 3 ≈ y&1 + f ( x1 , y1 , y&1 ) ⋅ Δx       y3 ≈ y 2 + y& 2 ⋅ Δx
        …                …                                           …
        xi+1=хi+Δх        y& i +1 ≈ y& i + f ( xi , yi , y& i ) ⋅ Δx  yi +1 ≈ yi + y& i ⋅ Δx
        …                …                                           …
       Таким образом, решение ДУ второго порядка можно выразить системой
уравнений:
      ⎧⎛ dy ⎞         ⎛ dy ⎞        ⎛         ⎛ dy ⎞ ⎞
      ⎪ ⎜     ⎟     ≈ ⎜    ⎟    + f ⎜
                                    ⎜ i i ⎜ dx ⎟ ⎟⎟ ⋅ Δx;
                                      x , y ,
      ⎪⎝ dx ⎠ i +1 ⎝ dx ⎠ i         ⎝         ⎝ ⎠i ⎠
      ⎨                                                                                 (8)
      ⎪ y ≈ y + ⎛ dy ⎞ ⋅ Δx; Δx = x − x
      ⎪⎩ i +1     i    ⎜ ⎟                      i +1  i
                       ⎝ dx ⎠ i