Учебник · Глава 10
Решение обыкновенных дифференциальных уравнений второго порядка.
3. Метод установления с использованием явной разностной схемы.
|
3.1. Методика решения.
Запишем для уравнения (10.4) явную разностную схему
(соблюдая правило выбора конечной разности для аппроксимации первой производной по координате):
| |
\(\displaystyle \frac{u_j^{n+1} - u_j^n}{\Delta t} + v\frac{u_j^n - u_{j-1}^n}{h} = \sigma\frac{u_{j+1}^n - 2u_j^n + u_{j-1}^n}{h^2} + f(x_j).\) |
(10.6) |
В разделе 6.2.1 было доказано, что данная разностная схема условно устойчива. Условием устойчивости
является соотношение (6.3), которое для случая k = 0 имеет вид:
| |
\(\displaystyle v\frac{\Delta t}{h} + 2\sigma\frac{\Delta t}{h^2} \le 1.\) |
|
Следовательно, максимальное значение шага итерации, при котором разностная схема (10.6) будет устойчива, определяется следующим выражением:
| |
\(\displaystyle \Delta t = \frac{h^2}{vh + 2\sigma}.\) |
(10.7) |
Выражая из разностной схемы (10.6) величину \(\displaystyle u_j^{n+1}\), получаем рекуррентное соотношение
| |
\(\displaystyle u_j^{n+1} = u_j^n + \Delta t\left[\frac{v}{h}(u_{j-1}^n - u_j^n) + \frac{\sigma}{h^2}(u_{j+1}^n - 2u_j^n + u_{j-1}^n) + f(x_j)\right],\) |
|
которое с учётом равенства (10.7) преобразуется к виду:
| |
\(\displaystyle u_j^{n+1} = u_j^n + \frac{h^2}{vh + 2\sigma}\left[\frac{\sigma}{h^2}u_{j+1}^n - \left(2\frac{\sigma}{h^2} + \frac{v}{h}\right)u_j^n + \left(\frac{\sigma}{h^2} + \frac{v}{h}\right)u_{j-1}^n + f(x_j)\right] \quad \Rightarrow\) |
|
| |
\(\displaystyle \Rightarrow \qquad u_j^{n+1} = \frac{\sigma u_{j+1}^n + (\sigma + vh)u_{j-1}^n + h^2 f(x_j)}{vh + 2\sigma}.\) |
(10.8) |
Метод установления с использованием явной разностной схемы называют методом простой итерации,
а выражение (10.8) - формулой простой итерации. Равенство (10.7) определяет шаг итерации
для метода простой итерации.
В качестве нулевой итерации (начального условия, необходимого для решения
в связи с введением фиктивной производной по времени) обычно задают свободный член исходного
дифференциального уравнения (10.3):
| |
\(\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,\) |
|
где \(\displaystyle \varepsilon\) - некоторая наперёд заданная положительная величина, характеризующая точность вычислений.
|