2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




 
 Решение УрЧП методом Галеркина
Сообщение19.03.2013, 23:57 
Аватара пользователя
Подскажите, пожалуйста, как следует применять метод Галеркина для решения дифф.уравнений в частных производных?
Например, если решается уравнение в одномерном стержне длиной $l$
$$
\left\{
\begin{align}
&L(u) = f(x, t), & x \in (0, l), t \in (0, T) \\
&u(x, 0) = 0 \\
&u(0, t) = 0, u(l, t) = 0
\end{align}
\right.
$$
для дифференциального оператора
$$
L(\cdot) = \frac{\partial}{\partial t}(\cdot) - \frac{\partial^2}{\partial x^2}(\cdot)
$$
Выбираем какую-нибудь полную линейно независимую систему функций $\{ \varphi_k(x, t) \}_{k = 1}^\infty$ (удовлетворяющую также и граничным условиям) и ищем приближенное решение задачи в виде $u_n = \sum_{k = 1}^n{c_k \varphi_k(x, t)}$.
Для отыскания коэффициентов $c_k$ построим соответствующую СЛАУ: подставляем $u_n$ в ДУ и поочередно скалярно умножаем уравнение на все функции системы $\{ \varphi_k(x, t) \}_{k = 1}^n$:
$$
\sum_{k = 1}^{n}{c_k \big(L(\varphi_k), \varphi_s \big)} = (f, \varphi_s), \qquad s = 1, 2, \ldots, n
$$
Скалярное произведение двух функций определим, например, следующим образом:
$$
(u, v) = \int\limits_0^T \left\{ \int\limits_0^l {u(x, t) v(x, t) dx} \right\} dt
$$

Теоретически, вроде все просто... Но у меня не получается добиться сколько-нибудь приличного решения :-( . Подскажите, есть ли ошибка в рассуждениях? И какие базисные функции использовать?

 
 
 
 Re: Решение УрЧП методом Галеркина
Сообщение20.03.2013, 00:10 
NecRomant в сообщении #698503 писал(а):
Выбираем какую-нибудь полную линейно независимую систему функций $\{ \varphi_k(x, t) \}_{k = 1}^\infty$

не какую -нибудь, а систему собственных функций оператора Лапласа в данном случае (в смысле это намек открыть учебник)

 
 
 
 Re: Решение УрЧП методом Галеркина
Сообщение20.03.2013, 00:49 
Аватара пользователя
Oleg Zubelevich в сообщении #698512 писал(а):
(в смысле это намек открыть учебник)

Разумеется :-) Правда, я не уловил необходимость функциям $\{ \varphi_k(x, t) \}$ быть собственными функциями оператора Лапласа. Например, в "Канторович Л.В., Крылов В.И. Приближенные методы высшего анализа (5-е издание, 1962), стр 281" (и ряде других книг) об этом ничего не говорится...
Возможно, Вы могли бы подсказать подходящий учебник?

 
 
 
 Re: Решение УрЧП методом Галеркина
Сообщение20.03.2013, 01:02 
NecRomant в сообщении #698531 писал(а):
Например, в "Канторович Л.В., Крылов В.И. Приближенные методы высшего анализа (5-е издание, 1962), стр 281" (и ряде других книг) об этом ничего не говорится.

это потому, что общие концепции в конкретных задачах приобретают специфику этих задач, если Вас интересуют УРЧП то для начала Владимиров В. С. Уравнения математической физики.
Метод Галеркина это просто идея приближать бесконечномерную задачу конечномерными. А как именно это делать зависит от задачи.

 
 
 
 Re: Решение УрЧП методом Галеркина
Сообщение20.03.2013, 07:36 
NecRomant в сообщении #698503 писал(а):
Для отыскания коэффициентов $c_k$ построим соответствующую СЛАУ: подставляем $u_n$ в ДУ и поочередно скалярно умножаем уравнение на все функции системы $\{ \varphi_k(x, t) \}_{k = 1}^n$:
$$
\sum_{k = 1}^{n}{c_k \big(L(\varphi_k), \varphi_s \big)} = (f, \varphi_s), \qquad s = 1, 2, \ldots, n
$$
Скалярное произведение двух функций определим, например, следующим образом:
$$
(u, v) = \int\limits_0^T \left\{ \int\limits_0^l {u(x, t) v(x, t) dx} \right\} dt
$$

Вы используете стационарный метод Галеркина. Такой подход весьма уместен для эллиптических уравнений. Но в Вашем случае возникают проблемы. Наверное лучше использовать метод Галеркина с базисом $\varphi_k(x)$ и искать решение в виде ряда $\sum c_k(t)\varphi_k(x)$. В этом случае возникнет некая "хорошая" система дифференциальных уравнений относительно $c_k(t)$. Если в качестве базиса Вы выберете собственные функции оператора Лапласа, то система вообще распадется на простые уравнения вида
$$c'_k(t) + \lambda_k c_k(t) = f_k(t)$$
Но уж если Вы намерены "любой ценой" использовать стационарный метод Галеркина, то рекомендую умножать уравнение не на $\varphi_s$, а на $\psi_s = {(\varphi_s)}_t - {(\varphi_s)}_{xx}$. В результате у Вас получится система
$$
\sum_{k = 1}^{n}{c_k \big(L(\varphi_k), \psi_s \big)} = (f, \psi_s), \qquad s = 1, 2, \ldots, n
$$
Для этой системы у Вас имеется гарантированная оценка. Если $f \in L_2(Q)$, то $(u_n)_t,(u_n)_{xx} \in L_2(Q)$.

 
 
 
 Re: Решение УрЧП методом Галеркина
Сообщение22.03.2013, 00:23 
Аватара пользователя
sup в сообщении #698571 писал(а):
Наверное лучше использовать метод Галеркина с базисом и искать решение в виде ряда

Спасибо! Ваше замечание помогло!
Почитал книгу "Треногин В.А. Методы мат.физики"; в $\S7$ описан Ваш вариант (и там же возникают собственные функции оператора Лапласа).
Автор раскладывает решение в ряд
$$\sum_{k = 1}^\infty{c_k(t) \varphi_k(x)}$$
В качестве базиса выбирается тригонометрическая система $\varphi_k(x) = \displaystyle  \sin\frac{k \pi x}{l}$.
Правда, в таком качестве метод носит название метода Фурье.

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

 
 
 
 Re: Решение УрЧП методом Галеркина
Сообщение22.03.2013, 19:37 
Аватара пользователя
Можно использовать метод Галёркина для пространственной аппроксимации параболического уравнения, сводя его к обыкновенному ОДУ. А затем его интегрировать по времени каким-то способом (обратным методом Эйлера, например).

 
 
 [ Сообщений: 7 ] 


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group