Численные Методы, 14 лекция (от 02 апреля)
Материал из eSyr's wiki.
Предыдущая лекция | Следующая лекция
Содержание |
[править] Глава 4. Разностные методы решения задач математической физики
[править] Параграф 1. Разностные схемы для первой краевой задачи уроавнения теплопроводности
- x ∈ [0, 1], t ∈ [0, T]
- δu/δt = δ2u/δx2 + f(x, t) (1)
- u(0, t) = μ1(t); u(1, t) = μ2(t), 0 ≤ t ≤ T (2)
- u(x, 0) = u0(x), 0 ≤ x ≤ 1 (3)
[править] Пункт 1. Явная разностная схема
- (yin + 1 − yin)/τ = (yi + 1n − 2yin + yi − 1n)/h2 + f(xi, tj), (xi, tj) ∈ ωτh (4)
- y0n + 1 = μ1(tn + 1); yNn + 1 = μ2(tn + 1), tn + 1 ∈ ω_τ (5)
- yi0 = u0(xi), xi ∈ ω_h (6)
yin + 1 = yin + γ(yi + 1n − 2yin + yi − 1n) + τf(xi, tn), n = 0, 1, …;y01 = μ1(t1); yN1 = μ1(t1)
Разностная схема имеет много достоинств и недостатков. Она проста вреализации, но коварна: она условно-устойчива. Он сходится при жёсткой зависимости размеров шагов: γ = τ/n2
Почти все явные схемы являются условно устойчивыми.
[править] Выяснение погрешности и сходимости
Вводится сеточная функция:
zin = yin − uin — погрешность разностной схемы.
uin = u(xi, tn), ||zn|| → 0, n → ∞; n, τ → 0.
Будем доказывать в сильной норме — в норме C: ||zn|| = ||zn||C = max0 ≤ i ≤ N |zin|
yin = zin + uin
(zin + 1 − zin)/τ = (zi + 1n − 2zin + zi − 1n) + ψin; (xi, tn) ∈ ωτh (7)
- z0n + 1 = 0, zNn + 1 = 0, tn ∈ ω_n
- ψin = (ui + 1n − 2uin + ui − 1n)/h2 + f(xi, tn) − (uin + 1 − uin)/τ (8)
Определение. Сеточная ф-ция (8) называется погрешностью аппроксимации разностной схемы (4)—(6) на решение задачи (1)—(3).
Задача. Доказать, что ψin = O(τ + h2).
Уравнение для погрешности то же, за исключением граничных усолвий (он нулевые для задачи первого рода).
[править] Сходимость
zin + 1 = zin + γ(zi + 1n − 2zin + zi − 1n) + τψin, γ = τ/h2 (9)
- z0n + 1 = 0, zNn + 1 = 0, zi0 = 0
- γ ≤ 0,5 (10)
Жёсткое это условие? Да. Если взять h = 10^&minus2, &rtau; ≤ 0,5 × 10^−2, t = 1 ⇒ 20000 шагов, и это только для одного измерения.
- zin + 1 = (1 − 2γ)zin + γ(zi + 1n + zi − 1n) + τψin
- |zin + 1| ≤ (1 − 2γ)|zin| + γ(|zi + 1n| + |zi − 1n|) + τ|ψin|
- |zin + 1| ≤ (1 − 2γ)||zn||C + γ(||zn||C + ||zn||C) + τ||ψn||C, i = 1…N − 1
- ||zn + 1||C ≤ ||zn||C + ε||ψn||C
- ||zn + 1||C ≤ ||z0||C { = 0 } + τ∑k = 0n||ψn||C (11)
- ||zn + 1||C ≤ τ∑k = 0n||ψn||C
- ∃ m > 0: ||ψk||C ≤ M(τ + h2), M не зависит от τ и h
- ||zn + 1||C ≤ M(τ + h2)∑k = 0n τ = Mtn(τ + h2)
- tn ≤ T
- ||zn + 1||C ≤ M1(τ + h2), M1 = M × T не зависит от τ и h
- τ, h → 0: ||zn + 1|| → 0 ||yn − un||C → 0
[править] Устойчивость
- ||yn + 1||C ≤ ||u0||C + τ∑k = 0n||fk||C (12) — априорная оценка и означает устойчивость решения по нач условию и по правой части. Наличие апр оценки и только её означает наличие устойчивости линейной разностной схемы.
Необходимость. Рассмотрим однор систему уравнений, соответствующую нашей задаче. Покажем, что общее решение неоднородной будет возрастать. Тогда и всё будет возрастать.
- (yin + 1 − yin)/τ = (yi + 1n − 2yin + yi − 1n)/h2 (13)
- yоn = q × eijhφ
- i2 = −1, q ∈ C, &phi ∈ R
- q = 1 + γ(eihφ − 2 = e−ihφ) = 1 + γ(2cos hφ − 2) = 1 + 2γ(cos hφ − 1) = 1 − 4γsin2 hφ/2
- |q| > 1: yin → ∞
- 1 − 4γsin2 hφ/2 < 1
- 4γsin2 hφ/2 > 2
- γ > 1/2
Из этого следует, что данная разностная схема условно устойчива и условна сходящаяся.
[править] Пункт 2. Чисто неявная разностная схема (схема с опережением)
Исходная задача (1)—(3) остаётся.
- (yin + 1 − yin)/τ = (yi + 1n + 1 − 2yin + 1 + yi − 1n + 1)/h2 + f(xi, tn + 1), (xi, tn + 1) ∈ ωτh (4)
- y0n + 1 = μ1(tn + 1); yNn + 1 = μ2(tn + 1), tn + 1 ∈ ω_τ (5)
- yi0 = u0(xi), xi ∈ ω_h (6)
Шаблон:
- yin + 1 = yin + γ(yi + 1n + 1 − 2yin + 1 + yi − 1n +1) + τf(xi, tn + 1)
- γyi − 1n +1 − (1 + 2γ)yin + 1 + γyi + 1n + 1 = −(yin + τf(xi, tn + 1)), i = 1, 2, …, N − 1
Тут надо использовать прогонку.
A = ( | −(1 + 2γ) | γ | 0 | 0 | … | 0 | 0 | ) |
γ | −(1 + 2γ) | γ | 0 | … | 0 | 0 | ||
0 | γ | −(1 + 2γ) | γ | … | 0 | 0 | ||
… |
Это матрица со строгим диагональным преобладанием.
- Решение надо находить методом прогонки
Докажем сходимость: вводим сеточную функцию погрешности
- zin = yin − uin — погрешность разностной схемы.
- (zin + 1 − zin)/τ = (zi + 1n + 1 − 2zin + 1 + zi − 1n + 1) + ψin (7)
- z0n + 1 = 0, zNn + 1 = 0, zi0 = 0
- ψin = (ui + 1n + 1 − 2uin + 1 + ui − 1n + 1)/h2 + f(xi, tn + 1) − (uin + 1 − uin)/τ
Задача. Доказать, что ψin = O(τ + h2).
||zn + 1||C = maxi0 |zi0n|
- zi0n + 1 = zi0n + γ(zi0 + 1n + 1 − 2zi0n + 1 + zi0 − 1n + 1) + τψi0n
- (1 + 2γ)zi0n + 1 = zi0n + γ(zi0 + 1n + 1 + zi0 − 1n + 1) + τψi0n
- (1 + 2γ)|zi0n + 1| ≤ ||zn||C + 2γ||zn + 1||C + τ||ψn||C
- (1 + 2γ)||zn + 1||C ≤ ||zn||C + 2γ||zn + 1||C + τ||ψn||C
//ну задолбался я писать...
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22
Календарь
|
|
|
Дополнительная информация |
Материалы к экзамену |