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

Понятие о методах конечных элементов

7.2. Общая схема метода Ритца

Решение задачи (7.1) ищут в виде

{u^{N} (x) = \psi_0^{N} (x) + \sum\limits_{k = 1}^{N}{C_k \psi_k^{N} (x)}, } ( 7.6)

где \psi_0^{N} (x), \ldots , \psi_n^{N} (x)базисные функции в W_2^1 ; \psi_0^{N}(x) удовлетворяет граничным условиям, а \psi_k^{N} (x) при k \ge 1 такие, что \psi_k^{N} (0) =  \psi_k^{N} (X) = 0. Если суммирование в (7.6) происходит до бесконечности, то эта формула дает точное решение задачи (7.1). Так как рассматривается конечное число базисных функций, то получаем лишь приближенное решение. Примером базисных функций для метода Ритца может служить тригонометрический базис, а в качестве приближенного решения получим конечный отрезок ряда Фурье.

Подставив (7.6) в (7.3), получаем

\begin{gather*}  
I_1 (u^{N}) = \sum\limits_{{p} = 1}^{N}{\sum\limits_{{q} = 1}^{N}{C_p C_{q} \cdot 
 \left\{{\int\limits_0^{X}{\left({k(x) \frac{{{\partial}\psi_p^{N}}}{{\partial}x} \frac{{{\partial}\psi_{q}^{N}}}{{\partial}x} + {p}(x) \psi_p^{N} \psi_{q}^{N}}
\right)} dx}\right\}}} -  \\ 
{- 2 \sum\limits_{r = 1}^{N}{\left\{{C_{r} \int\limits_0^{X}{\left({f(x) \psi_{r}^{N} - {p}(x) \psi_0^{N} \psi_{r}^{N} - k(x) \frac{{{\partial}\psi_0^{N}}}{{\partial}x} \frac{{{\partial}\psi_{r}^{N}}}{{\partial}x}}\right)} dx}\right\}} + I_1 (\psi_0^{N}).}
  \end{gather*} ( 7.7)

Находим минимум функционала (7.7) из условия

\frac{{\partial}I_1 (u^N)}{{\partial}C_i} = 0,
получаем систему из N линейных уравнений для определения коэффициентов Ck. Затем объявляем (7.6) решением задачи.

Точно так же поступаем и для функционала (7.4). Число уравнений в системе для определения коэффициентов тоже будет Nбазисной функции только один индекс!). Вид функционала будет аналогичен (7.7), но вместо интегралов по отрезку будут стоять двойные интегралы по рассматриваемой области пространства \Omega, а вместо производных — градиенты.

Первая проблема, которая возникает в методе Ритца — выбор подходящего базиса. Как от набора функций \psi_0^{N} (x), \ldots , \psi_n^{N}(x) зависит решение? Как оценить ошибки?

Существуют два типа базиса: глобальный базис для метода Ритца и базис из функций с финитным носителем.

Для того чтобы решения по методу Ритца сходились к точному, необходимо и достаточно, чтобы {\forall}g \in W_2^1 и \forall \varepsilon  > 0 существовала линейная комбинация

g^{N} (x) \equiv \psi_0^{N} (x) + \sum\limits_{{j} = 1}^{N}{C_j \psi_j^{N}(x)}, \mbox{ такая, что }\|g^{N} - g \|_{W_2^1} \le \varepsilon,

если вычисления проводятся точно.

Допустимый базис для применения в методе Ритца

{\sin}\left({\frac{{\pi {q}x}}{X}}\right)
, q = 1, ..., N.

На отрезке [0, 1] допустимые базисы: \psi_j^{N} = x(1 - 
x) T_j (2x - 1), где Tj(x)j - й полином Чебышева; \psi_j^{N} = x^{j} (1 - x).

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

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


Рис. 7.2.

Рассмотрим простейший вариант метода Ритца с использованием базиса функций с финитным носителем. Напомним, что носитель функции — множество точек x, для которых \psi_j^{N}(x) \ne 0. Введем разбиение отрезка [0, X] точками xj (сетку): 0 = x0 < x1 < ... < xn = X. Строим базисные функции:

\begin{gather*}  \psi_0^{N} = \left\{ \begin{array}{cc}
  {a \cdot \frac{{x - x_1}}{{x_0 - x_1}}, } & {0 \le x \le x_1 ;} \\
  {0, } & {x_1 \le x \le x_{{N} - 1} ;} \\
  {b \cdot \frac{{x - x_{N - 1}}}{{x_n - x_{N - 1}}}, } & {x_{N - 1} \le x \le x_n ;}\\
\end{array} \right.   \\  
\psi_j^{N} = \left\{ \begin{array}{cc}
  {\frac{{x - x_{j - 1}}}{{x_j - x_{j - 1}}}, } &   {x_{j - 1} \le x \le x_j ;}\\
  {0, } & {x > x_{j + 1}, \quad x < x_{j - 1} ;}\\
  {\frac{{x_{j + 1} - x}}{{x_{j + 1} - x_j }}, } &  {x_j  < x \le x_{j + 1} .}\\
 \end{array} \right.  \end{gather*}

Можно проверить, что \psi_j^{N} \in W_2^1 [0, X]. Интегралы и производные определяются в смысле обобщенных функций — недостаток базиса! Достоинством этого базиса является то, что базисные функции почти ортогональны.

Пусть

(\psi_j^N, \psi_k^{N}) = \int\limits_0^{X}{\psi_j^{N} (x) \psi_k^{N}(x)dx, }

тогда

\begin{gather*}
(\psi_j^{N}, \psi_j^{N}) =  \int\limits_{x_{j - 1}}^{x_j }{\frac{{(x - x_{j - 1})^2}}
{{(x_j - x_{j - 1})^2}}dx} +  \int\limits_{x_j }^{x_{j + 1}}{\frac{{(x - x_{j + 1})^2}}
{{(x_{j + 1} - x_j )^2}}dx} = \\ 
 = (x_j - x_{j - 1}) \int\limits_0^1 {t^2 dt} + (x_{j + 1} - x_j ) \int\limits_0^1 {t^2 dt} = 
 \frac{{(x_j - x_{j - 1})}}{3}t^3 \left|\begin{array}{l}
 1 \\ 
 0 \\ 
 \end{array}\right. + \ldots = \\ 
 = \frac{{x_j - x_{j - 1}}}{3} + \frac{{x_{j + 1} - x_j }}{3} = \frac{{x_{j + 1} - 
 x_{j - 1}}}{3}, (\psi_j^{N}, \psi_{j + 1}^{N}) = \\ 
 =  \int\limits_{x_j }^{x_{j + 1}}{\frac{{x - x_j }}{{x_{j + 1} - x_j }} \frac{{x_{j + 1} - x}}
{{x_{j + 1} - x_j }}dx} =  \frac{{x_{j + 1} - x_j }}{6}, (\psi_{j - 1}^{N}, \psi_j^{N}) = 
 \frac{{x_j - x_{j - 1}}}{6},  \end{gather*}

а все остальные скалярные произведения равны нулю.

Также достаточно легко берутся интегралы, включающие в себя производные базисных функций. Носитель каждой такой базисной функции называется конечным элементом, а метод Ритца с использованием такого базиса — первый метод из семейства МКЭ. Иногда конечным элементом также называют саму базисную функцию с финитным носителем.