Опубликован: 25.10.2007 | Доступ: свободный | Студентов: 1189 / 240 | Оценка: 4.40 / 4.36 | Длительность: 21:57:00
Специальности: Математик

Лекция 1: Исследование разностных схем для эволюционных уравнений на устойчивость и сходимость

Лекция 1: 1234567891011 || Лекция 2 >
Аннотация: В лекции рассматриваются методы исследования устойчивости разностных схем для линейных эволюционных уравнений в частных производных (гиперболического и параболического типов) Обсуждается применение спектрального признака устойчивости, энергетического признака, условия Куранта, Фридрихса и Леви для гиперболических уравнений. Формулируется и доказывается теорема (В. С. Рябенького - П. Лакса) о связи аппроксимации, устойчивости и сходимости для линейных разностных схем

1.1 Постановка некоторых задач для уравнений математической физики

Напомним некоторые корректные постановки задач для уравнений в частных производных , которые будут встречаться в дальнейшем.

Задача Коши для уравнения теплопроводности.

Найти функцию u(t , x) в области x \in (- \infty , \infty), t \in [0, T], удовлетворяющую уравнению

$  
 \frac{{\partial}u}{{\partial}t} = a \frac{\partial^2 u}{{\partial}x^2} + f(t , x)   $

и начальным данным u(0, x) = u0(x), где u0(x) — заданная функция.

Смешанная задача для уравнения теплопроводности.

Найти функцию u(t , x) в области x \in [0, X], t \in [0, T], удовлетворяющую уравнению

$ \frac{{\partial}u}{{\partial}t} = a \frac{\partial^2u}{{\partial}x^2} + 
f(t , x),    $

начальным данным u(0, x) = u0(x) и краевым условиям, записанным в общей форме

$  A_1 \frac{{\partial}}{{\partial}x}u(t , 0) + B_1 u(t , 0) = \varphi_1 (t), - A_2 \frac{{\partial}}{{\partial}x}u(t , X) + B_2 u(t , X) = \varphi_2 (t). $

Смешанная задача для уравнения переноса.

Найти функцию u(t , x) в области x \in [0, X], t \in [0, T], удовлетворяющую уравнению (для определенности положим c > 0 ):

$ \frac{{\partial}u}{{\partial}t} + c \frac{{\partial}u}{{\partial
x}} = f({t , x}),   $

начальным данным Коши

u(0, x) = u0(x),  t = 0

и левому краевому условию

u(t , 0) = {\varphi}(t).

Смешанная задача для волнового уравнения.

Найти функцию u(t , x) в области x \in [0, X], t \in [0, T], удовлетворяющую уравнению

$ \frac{\partial^2 u}{{\partial}t^2} = c^2 \frac{\partial^2u}{{\partial}x^2} + f(t , x),  $

с начальными данными

$  u(0, x) = u_0, \frac{{\partial}u(0, x)}{{\partial}t} = u_1(x)  $

и краевыми условиями u(0, t) = \varphi_1 (t), u(X , t) = \varphi_2 (t).

Эллиптическая краевая задача (уравнение Пуассона).

Найти функцию u(x , y) в области x \in [0, X], y \in [0, Y], удовлетворяющую уравнению

$ \frac{\partial^2 u}{{\partial}x^2} + \frac{\partial^2u}{{\partial}y^2} = 
f(x , y)  $

и краевым условиям u(x , 0) = \varphi_1(x), u({x , Y}) = \varphi_2(x), u(0, Y) = \Psi_1(y), u({x , Y}) = \Psi_2({y}).

Простейший способ построения численных решений для уравнений в частных производных — метод сеток. В дальнейшем, наряду с методом сеток, будем рассматривать и другие подходы к численному решению задач , например, вариационные, методы конечных элементов.

Рассмотрим постановку разностной задачи в методе сеток на примере одномерного уравнения теплопроводности.

Для решения одномерной смешанной задачи для уравнений в частных производных параболического типа область определения искомой функции покрывается расчетной сеткой с узлами в точках {tn, xm}, n = 0, ... , N, m = 0, ... , M , t_{n} = n\tau, xm = mh, \tau  = T/N, h = X/M , где \tau , h — шаги сетки по времени и пространству соответственно. Приближенным решением задачи назовем сеточную функцию \left\{{u_m^n}\right\}. Верхний индекс в такой форме записи сеточной функции традиционно указывает на номер слоя по времени, нижний (нижние) — на номер узла сетки по пространственной координате (рис. 1.1).

Рассмотрим подходы к построению численных алгоритмов для приближенного решения уравнений в частных производных.


Рис. 1.1.

Явная разностная схема для приближенного решения уравнения теплопроводности во внутренних узлах сетки (не принадлежащим границе сеточной области) имеет вид

\frac{u_m^{n + 1} - u_m^n}{\tau} = a \frac{u_{m - 1}^n - 2u_m^n + u_{m + 1}^n}{h^2} + f_m^n , \quad f_m^{n} = f (t_n , x_m) \in \omega_f^{\tau}.

Под разностной схемой понимается совокупность разностных уравнений для определения значений сеточной функции внутри расчетной области, дополненная соответствующими начальными и граничными условиями для этой сеточной функции. Шаблон схемы, представляющий собой конфигурацию расчетных узлов в области интегрирования, используемых на каждом элементарном шаге вычислений , показан на рис. 1.2.


Рис. 1.2.

Эта схема аппроксимирует дифференциальное уравнение во внутренних точках (узлах) области интегрирования, т.е. при n = 1 , ... , N - 1, m = 1 , ... , M - 1. Проведем аппроксимацию начальных данных и краевых условий:

\begin{gather*}
u_m^0 = u_0 (x_m), m = 0   \div  M , u_0 \in \omega_{\tau},  \\ 
 - A_1 \frac{u_1^{n} - u_0^{n}}{h} + B_1 u_0^{n} = \varphi_1 (t_n), n = 1  \div  N , \varphi_1 \in  \omega_{\varphi}^{\tau} \\ 
A_2 \frac{u_m^{n} - u_{M - 1}^{n}}{h} + B_2 u_m^{n} = \varphi_2 (t_n), n = 1  \div  N , \varphi_2 \in  \omega_{\varphi}^{\tau}
\end{gather*}

для определенности положим A_k , B_k \ge 0, k = 1 , 2.

Расчет ведется по рекуррентной формуле на каждом временном слое от n = 1 до n = N от m = 1 до m = M - 1 во внутренних узлах; слой n = 0(t = t0) соответствует начальным данным, лучи m = 0(x = x0) и m = M(x = xM) — левому и правому краевым условиям.

Запишем явную схему в виде

$  u_m^{n + 1} = u_m^{n} +  \frac{\tau}{{h^2}}(u_{m - 1}^{n} - 2u_m^{n} + u_{m + 1}^{n} ) +{\tau}f_m^{n}.   $

По этой формуле последовательно, на каждом слое вычисляется сеточная функция во внутренних узлах области интегрирования.

Для завершения расчета слоя t = tn + 1 необходимо вычислить u_0^{n + 1} и u_m^{n + 1}, для чего разрешаем левое и правое краевые условия относительно этих величин:

$  
u_0^{n + 1} = \frac{{A_1 u_1^{n + 1} + h \varphi_1^{n + 1}}}{{A_1 + hB_1}}, u_m^{n + 1} = \frac{{A_2 u_{M - 1}^{n + 1} + h \varphi_{M - 1}^{n + 1}}}{{A_2 + hB_2}},  $

где u_1^{n + 1} и u_{M - 1}^{n + 1} уже вычислены ранее. Реализация одного шага по времени занимает O(M) арифметических операций , всех слоев — O(NM) операций.

Явными схемами называются такие разностные схемы для эволюционных уравнений , когда данные на следующем слое по времени находятся непосредственно из данных на предыдущем слое без решения алгебраических систем уравнений. Если же на верхнем временном слое для определения значений сеточной функции необходимо решать систему алгебраических уравнений , то схема называется неявной.

Простейшая неявная разностная схема имеет вид (для простоты положим a = 1 )

\frac{{u_m^{n + 1} - u_m^{n}}}{\tau} = \frac{{u_{m - 1}^{n + 1} - 2u_m^{n + 1} + 
u_{m + 1}^{n + 1}}}{{h^2}} + f_m^{n},

ее шаблон (рис. 1.3).


Рис. 1.3.

На каждом временном слое имеем СЛАУ с трехдиагональной матрицей; алгоритм ее решения — прогонка.

Неявную схему представим в виде

\begin{gather*}
(A_1 + hB_1)u_0^{n + 1} - A_1u_1^{n + 1} = h \varphi_1^{n + 1}, m = 0,  \\ 
 \frac{\tau}{h^2} u_{m - 1}^{n + 1} - (1 - 2 \frac{\tau}{h^2}) u_m^{n + 1} + \frac{\tau}{h^2}
u_{m + 1}^{n + 1} = u_m^{n} +{\tau}f_m^{n}, m = 1 , \ldots , M - 1 ,  \\ 
(A_2 + hB_2)u_m^{n + 1} - A_2u_{M - 1}^{n + 1} = h \varphi_2^{n + 1}, m = M , 
\end{gather*}

откуда несложно получить прогоночное соотношение на каждом слое по времени.

Лекция 1: 1234567891011 || Лекция 2 >
Николай Щербаков
Николай Щербаков
Россия, Москва
Олег Корсак
Олег Корсак
Латвия, Рига