Решение дифференциальных уравнений в системе компьютерной математики Maxima. Губина Т.Н - 61 стр.

UptoLike

Глава 2 Дифференциальные уравнения
производной, поскольку правая разностная производная требует значений
функции за пределами сетки:
1
h
[u
i , n
u
i , n1
]=[u
i ,n
g
i
]
,
g
i
=g i k
.
Отсюда находим:
u
i , n
=
u
i , n1
h g
i
1h
. (2)
Таким образом, для решения поставленной задачи мы будем использо-
вать явную схему бегущего счета: заменяя частные производные по времени
и пространственной переменной конечно-разностными производными, мы
получаем явные выражения для
u
i , j
через значения функции
u
в преды-
дущие моменты времени.
Шаг 1. Находим решение на сеточном слое
t=t
, используя явную
формулу (1).
Шаг 2. Величину
u
2,n
находим по формуле (2).
Выполнив шаги 1-2, получаем решение для
t=t
. Повторив шаги 1-
2, получаем решение при
и т. д.
Недостаток явной схемы: если шаг по времени оказывается достаточно
большим по сравнению с шагом по
x
, погрешности округления могут
стать настолько большими, что полученное решение теряет смысл. Отноше-
ние шагов по
t
и
x
зависит от уравнения и граничных условий. Для при-
менимости явной схемы должно выполняться условие
k /h
2
0,5
. В против-
ном случае метод будет численно не устойчив.
ПРИМЕР 2. Решим задачу:
{
u
x x
=
1
a
2
u
t t
, 0xm , 0tn
u x ,0=sin
x
50
, u
t
x ,0=0
u 0,t =u m , t=0
.
Решение:
Положим
m=10
,
n=20
,
h=1
шаг изменения пространствен-
ной переменной. Заменим частные производные в волновом уравнении их
конечно-разностными аппроксимациями
u
x x
x , y =
1
h
2
[u
i , j1
2 u
i , j
u
i , j 1
]
,
u
y y
x , y =
1
k
2
[u
i1, j
2u
i , j
u
i 1, j
]
.
Получим:
1
h
2
[u
i , j1
2 u
i , j
u
i , j 1
]=
1
a
2
1
k
2
[u
i1, j
2u
i , j
u
i1, j
]
. Отсюда
u
i1, j
=
a
2
k
2
h
2
[u
i , j1
2u
i , j
u
i , j1
]2u
i , j
u
i1, j
.
61
Глава 2 Дифференциальные уравнения

производной, поскольку правая разностная производная требует значений
функции за пределами сетки:
           1
             [u −u         ]=−[u i ,n− g i ] ,               g i =g i k  .
           h i , n i , n−1
        Отсюда находим:
                                                                        u i , n−1−h g i
                                                             u i , n=                   .                               (2)
                                                                               1h
      Таким образом, для решения поставленной задачи мы будем использо-
вать явную схему бегущего счета: заменяя частные производные по времени
и пространственной переменной конечно-разностными производными, мы
получаем явные выражения для u i , j через значения функции u в преды-
дущие моменты времени.
      Шаг 1. Находим решение на сеточном слое t= t , используя явную
формулу (1).
      Шаг 2. Величину u 2,n находим по формуле (2).
      Выполнив шаги 1-2, получаем решение для t= t . Повторив шаги 1-
2, получаем решение при t=2  t и т. д.
      Недостаток явной схемы: если шаг по времени оказывается достаточно
большим по сравнению с шагом по x , погрешности округления могут
стать настолько большими, что полученное решение теряет смысл. Отноше-
ние шагов по t и x зависит от уравнения и граничных условий. Для при-
менимости явной схемы должно выполняться условие k /h 2≤0,5 . В против-
ном случае метод будет численно не устойчив.
      ПРИМЕР 2. Решим задачу:



                                                   {
                                                            1
                                                   u x x=      u ,
                                                              2 tt
                                                                          0xm ,           0tn
                                                            a
                                                   u  x ,0=sin
                                                                 x
                                                                       , ut  x ,0=0
                                                                                                       .
                                                                 50
                                                   u 0, t=u  m , t=0
     Решение:
     Положим m=10 , n=20 , h=1 — шаг изменения пространствен-
ной переменной. Заменим частные производные в волновом уравнении их
конечно-разностными аппроксимациями
                    1                                                            1
 u x x  x , y =      [u i , j1−2 u i , jui , j −1] ,      u y y  x , y =      [ u i1, j −2u i , jui −1, j ] .
                    h2                                                           k2
                     1                                  1 1
Получим:              2
                        [u i , j1−2 u i , jui , j −1]= 2 2 [ui1, j−2u i , j u i−1, j ] . Отсюда
                     h                                  a k
                                               2   2
                                              a k
                                 u i1, j =      2
                                                   [u i , j1−2u i , j u i , j−1 ]2 ui , j −u i−1, j .
                                               h


                                                                   61