|
4.3. Метод решения разностной схемы Саульева
Разностный шаблон (см. рисунок), характеризующий первую ступень разностной схемы Саульева,
свидетельствует о том, что выражение (4.21) содержит две неизвестные величины - значения функции
u на (n + 1)-ом шаге по времени \(\displaystyle u_j^{n+1}, u_{j-1}^{n+1}\).
То есть, для определения величины \(\displaystyle u_j^{n+1}\) необходимо знать значение функции u в
соседней слева точке на разностной сетке. Определяя \(\displaystyle u_1^{n+1}\) из левого граничного условия (4.19) и
выражая \(\displaystyle u_j^{n+1}\) из соотношения (4.21):
| |
\(\displaystyle u_j^{n+1} = \frac{u_j^{n} + \dfrac{\sigma\Delta t}{h^2}u_{j+1}^{n} - \dfrac{\sigma\Delta t}{h^2}u_j^{n} + \dfrac{\sigma\Delta t}{h^2}u_{j-1}^{n+1} + \Delta t\, f(t^{n+1}, x_j)}{1 + \dfrac{\sigma\Delta t}{h^2} + k\Delta t},\) |
(4.25) |
можно последовательно рассчитать значения функции u на (n + 1)-ом
шаге по времени \(\displaystyle u_j^{n+1}\), j = 2, ..., N-1. Если вместо граничных условий 1-го рода (4.19) будут заданы
граничные условия 2-го или 3-го рода, то для определения величины \(\displaystyle u_1^{n+1}\) необходимо решить систему двух
уравнений: разностной аппроксимации левого граничного условия на (n + 1)-ом шаге по времени
и рекуррентного соотношения (4.25) при j = 2. Значение \(\displaystyle u_N^{n+1}\) определяется из правого граничного
условия.
Разностный шаблон (см. рисунок), характеризующий вторую ступень разностной схемы Саульева,
свидетельствует о том, что выражение (4.22) содержит две неизвестные величины - значения
функции u на (n + 2)-ом шаге по времени \(\displaystyle u_j^{n+2}, u_{j+1}^{n+2}\). То есть, для определения величины \(\displaystyle u_j^{n+2}, j = N-1, \ldots, 2\) необходимо
знать значение функции u в соседней справа точке на разностной сетке. Определяя \(\displaystyle u_N^{n+2}\) из правого
граничного условия (4.19) и выражая \(\displaystyle u_j^{n+2}, j = N-1, \ldots, 2\) из соотношения (4.22):
| |
\(\displaystyle u_j^{n+2} = \frac{u_j^{n+1} + \dfrac{\sigma\Delta t}{h^2}u_{j+1}^{n+2} - \dfrac{\sigma\Delta t}{h^2}u_j^{n+1} + \dfrac{\sigma\Delta t}{h^2}u_{j-1}^{n+1} - k\Delta t\, u^{n+1} + \Delta t\, f(t^{n+1}, x_j)}{1 + \dfrac{\sigma\Delta t}{h^2}},\) |
(4.26) |
можно последовательно рассчитать значения функции u на (n + 2)-ом шаге по времени \(\displaystyle u_j^{n+2}, j = N-1, \ldots, 2\).
В случае, если заданы граничные условия 2-го или 3-го рода, для определения величины \(\displaystyle u_N^{n+2}\)
необходимо решить систему двух уравнений: разностной аппроксимации правого граничного
условия на (n + 2)-ом шаге по времени и рекуррентного соотношения (4.26) при j = N - 1.
Значение \(\displaystyle u_1^{n+2}\) определяется из левого граничного условия.
Таким образом, метод решения разностной схемы
Саульева существенно проще метода решения неявной разностной схемы и разностной схемы
Кранка-Николсона (т.е. метода прогонки). Однако следует обратить внимание, что поскольку
выражения (4.21) и (4.22) по отдельности не аппроксимируют исходное дифференциальное
уравнение (4.19), оценка погрешности значений функции u на (n + 1)-ом шаге по времени не
представляется возможной. Близость к истинным значениям может быть гарантирована только
для значений функции u на (n + 2)-ом шаге по времени, поэтому заданный временной интервал
должен быть изначально разделён на чётное число частей (шагов).
|