Разностные схемы и их анализ. Петрусев А.С. - 78 стр.

UptoLike

Составители: 

Предполагая независимость u
(q)
i
от шага сетки, получаем, что
условие (8.10) будет выполнено, если h(x)~1/F(x), или
x
k
-x
k-1
=λ/F(x
k-1
), (8.11)
где λ=const. Данное уравнение с краевыми условиями x
0
=0,
x
N
=L представляет собой нелинейную задачу на собственное
значение. Как правило, при решении (8.11) не требуется
высокая точность, т.к. рассмотренный выше минимум
погрешности не резкий. Обычно допустимо, если (8.11)
выполняется с погрешностью 10-30%. Для решения (8.11) могут
применяться различные приёмы. Опишем два из них.
1.Сведение к уравнению типа теплопроводности.
Поскольку (x
k
-x
k-1
)F(x
k-1
)=const, то
(x
k+1
-x
k
)F(x
k
)-(x
k
-x
k-1
)F(x
k-1
)=0. (8.12)
Используя известные F(x
k
) и решая (8.12) прогонкой, получаем
новый массив x
k
. По нему находим уточнённые значения F(x
k
),
подставляем в (8.12) и т.д. до установления с нужной
точностью. Заметим, что (8.12) обладает нестрогим
диагональным преобладанием, и монотонная прогонка
оказывается устойчивой.
2.Метод пристрелки.
Фиксируем x
0
=0. Тогда x
N
можно рассматривать как функцию от
λ, x
N
=x
N
(λ), заданную цепочкой равенств (8.11). Построение
сетки сводится к решению уравнения x
N
(λ)=L. Это уравнение
может быть решено обычными методами, например делением
отрезка пополам или методом секущих. Метод Ньютона
применять не рекомендуется из-за того, что x
N
(λ) часто
оказывается немонотонной вблизи корня.
Корень λ может быть локализован на основании очевидного
неравенства:
LF
min
/N>λ>LF
max
/N, (8.13)
что может быть использовано как для получения начального
приближения, так и для контроля во время итераций. Кроме
того, для получения начального приближения можно
воспользоваться грубым решением (8.11), заменяя конечную
разность дифференциалом:
λ≈
1
N
0
L
F(x)dx
1
N
Σ
i
F
i
h
i
. (8.14)
Метод пристрелки может быть успешно применён для
построения сеток с удвоением шага. Однако вместо (8.11)
следует использовать возвратное уравнение несколько иного
вида:
Δx
k+1
=q
k
Δx
k
, (8.15)
где q
k
=1 если q
k-1
1; иначе
q
k
=
1
2
, если Δx
k
F(x
k
)>2λ
1, если λ<Δx
k
F(x
k
)<2λ
2, если Δx
k
F(x
k
)<λ
(8.16)
                              (q)
Предполагая независимость ui   от шага сетки, получаем, что
условие (8.10) будет выполнено, если h(x)~1/F(x), или

xk-xk-1=λ/F(xk-1),                                     (8.11)

где λ=const. Данное уравнение с краевыми условиями x0=0,
xN=L представляет собой нелинейную задачу на собственное
значение. Как правило, при решении (8.11) не требуется
высокая     точность,     т.к.    рассмотренный     выше    минимум
погрешности не резкий. Обычно допустимо, если (8.11)
выполняется с погрешностью 10-30%. Для решения (8.11) могут
применяться различные приёмы. Опишем два из них.
1.Сведение к уравнению типа теплопроводности.
Поскольку (xk-xk-1)F(xk-1)=const, то
(xk+1-xk)F(xk)-(xk-xk-1)F(xk-1)=0.                       (8.12)
Используя известные F(xk) и решая (8.12) прогонкой, получаем
новый массив xk. По нему находим уточнённые значения F(xk),
подставляем в (8.12) и т.д. до установления с нужной
точностью.     Заметим,     что    (8.12)     обладает    нестрогим
диагональным      преобладанием,      и     монотонная     прогонка
оказывается устойчивой.
2.Метод пристрелки.
Фиксируем x0=0. Тогда xN можно рассматривать как функцию от
λ, xN=xN(λ), заданную цепочкой равенств (8.11). Построение
сетки сводится к решению уравнения xN(λ)=L. Это уравнение
может быть решено обычными методами, например делением
отрезка    пополам    или    методом    секущих.    Метод   Ньютона
применять не рекомендуется из-за того, что xN(λ) часто
оказывается немонотонной вблизи корня.
      Корень λ может быть локализован на основании очевидного
неравенства:
LFmin/N>λ>LFmax/N,                                       (8.13)
что может быть использовано как для получения начального
приближения, так и для контроля во время итераций. Кроме
того,     для    получения     начального      приближения    можно
воспользоваться грубым решением (8.11), заменяя конечную
разность дифференциалом:
  1L         1
λ≈N⌡
   0
             Σ
   ⌠F(x)dx≈N Fihi.
              i
                                                         (8.14)
       Метод пристрелки может быть успешно применён для
построения сеток с удвоением шага. Однако вместо (8.11)
следует использовать возвратное уравнение несколько иного
вида:
Δxk+1=qkΔxk,                                    (8.15)
где qk=1 если qk-1≠1; иначе
   ⎧⎪12, если ΔxkF(xk)>2λ
qk=⎨1, если λ<Δx F(x )<2λ                       (8.16)
    ⎪⎩2, если ΔxkF(xk)<λ
                  k   k