|
Запишем для уравнения (10.4) разностную схему Кранка-Николсона
(соблюдая правило выбора конечной разности для аппроксимации первой производной по координате):
| |
\(\displaystyle \frac{u_j^{n+1} - u_j^n}{\Delta t} + \frac{v}{2}\frac{u_j^{n+1} - u_{j-1}^{n+1}}{h} + \frac{v}{2}\frac{u_j^n - u_{j-1}^n}{h} = \frac{\sigma}{2}\frac{u_{j+1}^{n+1} - 2u_j^{n+1} + u_{j-1}^{n+1}}{h^2} + \frac{\sigma}{2}\frac{u_{j+1}^n - 2u_j^n + u_{j-1}^n}{h^2} + f(x_j).\) |
(10.10) |
Как и неявная разностная схема (10.9), разностная схема Кранка-Николсона (10.10) является
абсолютно устойчивой, что обеспечивает возможность произвольного выбора значения шага итерации.
Однако разностная схема Кранка-Николсона (10.10) имеет более высокий (второй) порядок
аппроксимации по времени:
| |
\(\displaystyle O(\Delta t^2, h).\) |
|
Данная особенность разностной схемы Кранка-Николсона (10.10) позволяет использовать
при её решении более грубый шаг итерации, чем при решении неявной разностной схемы (10.9),
для получения результатов с такой же точностью; а это в свою очередь способствует ускорению
сходимости итерационного процесса и уменьшению количества итераций:
| |
\(\displaystyle n < \frac{1}{h}.\) |
|
В разделе 6.4 было показано, что разностные схемы типа (10.10) решаются
с помощью метода прогонки. Коэффициенты, соответствующие уравнению (4.10), для разностной схемы (10.10)
имеют вид:
| |
\(\displaystyle a_j = -\sigma\frac{\Delta t}{2h^2}, \quad b_j = 1 + \frac{v}{2}\frac{\Delta t}{h} + \sigma\frac{\Delta t}{h^2}, \quad c_j = -\frac{v}{2}\frac{\Delta t}{h} - \frac{\sigma}{2}\frac{\Delta t}{h^2}, \quad \xi_j^n = u_j^n + \frac{\sigma}{2}\frac{\Delta t}{h^2}(u_{j+1}^n - 2u_j^n + u_{j-1}^n) - \frac{v}{2}\frac{\Delta t}{h}(u_j^n - u_{j-1}^n) + \Delta t\, f(x_j).\) |
|
Легко видеть, что достаточное условие сходимости прогонки (4.16) выполняется:
| |
\(\displaystyle \left|a_j\right| + \left|c_j\right| = \frac{v}{2}\frac{\Delta t}{h} + \frac{\sigma\Delta t}{h^2} < 1 + \frac{v}{2}\frac{\Delta t}{h} + \frac{\sigma\Delta t}{h^2} = \left|b_j\right|.\) |
|
Алгоритм решения, а также методики определения прогоночных коэффициентов и решения на правой границе
аналогичны описанным ранее.
Также как и в случае метода простой итерации, в качестве нулевой итерации
(начального условия, необходимого для решения в связи с введением фиктивной производной по времени)
обычно задают свободный член:
| |
\(\displaystyle u_j^0 = f(x_j).\) |
|
Расчёт итераций продолжается до тех пор, пока итерационный процесс не сойдётся,
т.е. пока не будет выполняться условие (10.5), в разностном представлении соответствующее неравенству:
| |
\(\displaystyle \left\|u^{n+1} - u^n\right\| = \sqrt{h\sum_{j=1}^{N}(u_j^{n+1} - u_j^n)^2} \le \varepsilon.\) |
|
Итерационным выражением является прогоночное соотношение (4.11), имеющее такой же вид, как и в общем случае.
|