Дискуссионный математический форумМатематический форум

Математический форум Math Help Planet

Обсуждение и решение задач по математике, физике, химии, экономике

Теоретический раздел
Часовой пояс: UTC + 4 часа [ Летнее время ]
MathHelpPlanet.com RSS-лента Математического форума

Часовой пояс: UTC + 4 часа [ Летнее время ]


Численные методы решения краевых задач

Численные методы решения краевых задач


Постановка задачи и основные положения


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


[math]F \bigl(x,y(x),y'(x),\ldots,y^{(n)}(x)\bigr)=0,\quad a \leqslant x \leqslant b,\qquad (7.1)[/math]

и краевые условия

[math]\begin{gathered}\varphi_{i}\bigl(y(a),y'(a),\ldots,y^{(n-1)}(a)\bigr)=0,\quad i=1,2,\ldots,L,\\[2pt] \psi_{j}\bigl(y(b),y'(b),\ldots,y^{(n-1)}(b)\bigr)=0,\quad j=L+1,\ldots,n, \end{gathered}\qquad (7.2)[/math]

где [math]F \bigl(x,y,y',\ldots,y^{(n)}\bigr);~ \varphi_{i}\bigl(y,y',\ldots,y^{(n-1)}\bigr),~ i=\overline{1,L};~ \psi_{j}\bigl(y,y',\ldots,y^{(n-1)}\bigr),~ j=\overline{L+1,n}[/math] — функции указанных аргументов, заданные в некоторой области их изменения; [math]L[/math] и [math](n-L)[/math] — число условий на левом и правом концах отрезка [math][a,b][/math] соответственно. Общее количество условий равно порядку дифференциального уравнения. Требуется найти функцию [math]y=y(x)[/math], которая на отрезке [math][a,b][/math] удовлетворяет уравнению (7.1), а на концах отрезка — краевым условиям (7.2).


Если уравнения (7.1),(7.2) линейны относительно искомой функции и ее производных, то краевая задача называется линейной.


Для простоты ограничимся частным случаем линейной краевой задачи для дифференциального уравнения второго порядка [math](n=2)[/math], которая наиболее часто ставится в вычислительной практике и записывается в виде


[math]y''+p(x)y'-q(x)y=f(x),\quad a \leqslant x \leqslant b~ (\Omega \equiv [a,b]),[/math]
(7.3)

[math]\begin{aligned}& \alpha_0\cdot y(a)+\beta_0\cdot y'(a)=A,\\ & \alpha_1\cdot y(b)+\beta_1\cdot y'(b)=B, \end{aligned}[/math]
(7.4)

где [math]p(x),\, q(x),\, f(x)\in C_2[a,b][/math] — заданные функции, а [math]\alpha_0,\,\alpha_1,\, \beta_0,\, \beta_1,\,A,\,B[/math] — заданные числа, [math]\alpha_{j}^2+\beta_{j}^2>0,~ j=0;1[/math]. Требуется найти функцию [math]y(x)[/math], удовлетворяющую уравнению (7.3) и краевым условиям (7.4). Краевые условия при [math]\alpha_{j}\ne0,~ \beta_{j}\ne0,~ j=0;1[/math], задают линейную связь между значениями искомого решения и его производной на концах отрезка [math][a,b][/math].


В простейшем случае, когда [math]\beta_0=0,~ \beta_1=0[/math], краевые условия задают на концах отрезка [math][a,b][/math] только значения функции [math]y(a),\,y(b)[/math]. Такие функциональные условия называют краевыми условиями первого рода. В этом случае краевая задача называется первой краевой задачей.


В случае, когда [math]\alpha_0=0,~ \alpha_1=0[/math], т.е. на концах отрезка заданы только значения производных, краевые условия являются дифференциальными. Такие краевые условия называют условиями второго рода или "мягкими". Последнее название обусловлено тем, что они определяют на концах отрезка [math][a,b][/math] всего лишь наклоны интегральных кривых, а не значения функции [math]y(x)[/math]. В этом случае задача (7.3),(7.4) называется второй краевой задачей.


В общем случае, когда [math]\alpha_0[/math] и (или) [math]\alpha_1;~\beta_0[/math] и (или) [math]\beta_1[/math] не равны нулю, краевые условия носят функционально-дифференциальный характер и называются условиями третьего рода. Тогда задача (7.3),(7.4) называется третьей краевой задачей.


Например, условия [math]y(a)=A,~ y(b)=B[/math] являются условиями первого рода. Геометрически это означает, что при решении первой краевой задачи требуется найти интегральную кривую уравнения (7.3), проходящую через данные точки [math](a,A),\, (b,B)[/math] (рис. 7.1,а). Условия [math]y'(a)=A,\, y'(b)=B[/math] являются условиями второго рода. Геометрически вторая краевая задача сводится к отысканию интегральной кривой уравнения, пересекающей прямые [math]x=a,~ x=b[/math] под заданными углами [math]\alpha,\,\beta[/math], где [math]\operatorname{tg}\alpha=A,~ \operatorname{tg}\beta=B[/math] (рис. 7.1,6). Условия [math]y'(a)=A,~ y(b)=B[/math] являются частным случаем краевых условий третьего рода, так как [math]\alpha_0=0,~ \beta_0=1,[/math] [math]\alpha_1=1,~ \beta_1=0[/math]. Геометрически данная краевая задача сводится к отысканию интегральной кривой уравнения, проходящей через точку [math](b,B)[/math] и пересекающей прямую [math]x=a[/math] под данным углом [math]\alpha[/math], где [math]\operatorname{tg}\alpha= A[/math] (рис. 7.1,в).


В общем случае краевая задача может:

а) иметь единственное решение;

б) не иметь решений;

в) иметь несколько или бесконечно много решений.


Утверждение 7.1 (о существовании и единственности решения краевой задачи (7.3),(7.4)). Для того чтобы существовало единственное решение краевой задачи (7.3),(7.4), необходимо и достаточно, чтобы однородная краевая задача


[math]\begin{gathered}y''+p(x)y'-q(x)y=0,\quad a \leqslant x \leqslant b,\\ \alpha_0\cdot y(a)+ \beta_0\cdot y'(a)=0,\\ \alpha_1\cdot y(b)+ \beta_1\cdot y'(b)=0 \end{gathered}[/math]

имела только тривиальное решение [math]y(x)\equiv0[/math].


Пример 7.1. Найти аналитическое решение следующих краевых задач:

а) [math]y''+y=1,~ 0 \leqslant x \leqslant \frac{\pi}{2},~ y'(0)=0,~ y\! \left(\frac{\pi}{2}\right)-y'\! \left(\frac{\pi}{2}\right)=2[/math] (третья краевая задача);

б) [math]y''+y=-x,~ 0 \leqslant x \leqslant 1,~ y(0)=0,~ y(1)=0[/math] (первая краевая задача).


▼ Решение

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


1. Найдем общее решение однородного уравнения [math]y''+y=0[/math], одинакового для обеих рассматриваемых задач. Так как характеристическое уравнение [math]\lambda^2+1=0[/math] имеет комплексные сопряженные корни [math]\lambda_{1,2}=\pm i= \alpha\pm \beta i[/math] [math](\alpha=0,~ \beta=1)[/math], то общее решение будет


[math]y_0(x)= e^{\alpha x}(C_1\cos \beta x+C_2\sin \beta x)= C_1\cos x+C_2\sin x\,.[/math]

2. Частные решения неоднородных уравнений находятся методом подбора. Подставляя [math]y_{\text{ch}}(x)=C[/math] в уравнение [math]y''+y=1[/math], а [math]y_{\text{ch}}(x)=Dx[/math] в уравнение [math]y''+y=-x[/math], получаем [math]C=1,~ D=-1[/math]. Поэтому [math]y_{\text{ch}}(x)=1[/math] в случае "а", [math]y_{\text{ch}}(x)=-x[/math] в случае "б".


3. Найдем общее решение неоднородного уравнения как сумму общего решения однородного уравнения и частного решения неоднородного уравнения:


а) [math]y(x)=C_1\cos x+C_2\sin x+1[/math]; б) [math]y(x)=C_1\cos x+C_2\sin x-x[/math].


4. Определим значения произвольных постоянных из краевых условий третьего рода (случай "а") и первого рода (случай "б"):


а) найдем [math]y'(x)=-C_1\sin x+C_2\cos x[/math]. Тогда


[math]y'(0)=C_2=0,\qquad y\! \left(\frac{\pi}{2}\right)-y'\! \left(\frac{\pi}{2}\right)= C_2+1+ C_1=2.[/math]

Отсюда [math]C_1=1[/math] и [math]y(x)=1+\cos x[/math] — решение краевой задачи "а";


б) общее решение [math]y(x)=C_1\cos x+C_2\sin x-x[/math] и, следовательно, [math]y(0)=C_1=0,~ y(1)=C_1\cos1+ C_2\sin1-1=0[/math], отсюда [math]C_2= \frac{1}{\sin1}[/math] и [math]y(x)=\frac{\sin x}{\sin1}-x[/math] — решение краевой задачи "б". Таким образом, решение краевой задачи представляет собой такое частное решение, которое удовлетворяет краевым условиям.


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




Метод сеток


Рассмотрим линейную краевую задачу с краевыми условиями первого рода (первую краевую задачу):


[math]y''+p(x)y'-q(x)y=f(x),\quad a \leqslant x \leqslant b,\quad y(a)=A,~ y(b)=B,[/math]
(7.5)

где [math]p(x),q(x),f(x)\in C_2[a,b][/math] — заданные функции; [math]A,\,B[/math] — заданные числа.


Очевидно, любой отрезок [math][a,b][/math], на котором ищется решение краевой задачи, можно привести к отрезку [math][0;1][/math] с помощью линейного преобразования [math]\widetilde{x}= \frac{x-a}{b-a}[/math]. Действительно, тогда новая переменная [math]\widetilde{x}\in [0;1][/math]. В результате без ограничения общности краевая задача (7.5) может быть решена сначала на отрезке [math][0;1][/math], а затем это решение с помощью преобразования [math]x=a+(b-a)\cdot \widetilde{x}[/math] может быть записано на отрезке [math][a,b][/math]. То же относится и к исследованию свойств полученного решения.


Утверждение 7.2 (о единственности решения краевой задачи (7.5)). Если функции [math]p(x),q(x),f(x)[/math] принадлежат классу [math]C_2[a,b],~ q(x) \geqslant 0[/math] на [math][0;1][/math], то краевая задача (7.5) имеет единственное решение [math]y(x)\in C_4[0;1][/math].


Для решения задачи (7.5) применим метод сеток, получаемый путем аппроксимации первой и второй производных. Введем равномерную сетку (где [math]n[/math] — число отрезков разбиения)


[math]\Omega_n= \bigl\{x_0,x_1,\ldots,x_n\bigr\},\quad x_{i}=x_0+i\cdot h,\quad i=\overline{0,n}l\quad h=\frac{b-a}{n}\,.[/math]

Функции [math]p(x),q(x),f(x)[/math] заменяются их проекциями на сетку [math]\Omega_n[/math], то есть [math]p(x)\to p(x_{i})=p_i,[/math] [math]q(x)\to q(x_{i})=q_i,[/math] [math]f(x)\to f(x_{i})= f_i,[/math]. Вместо точного решения [math]y(x)[/math] отыскивается некоторое приближение [math]\widehat{y}_{i}= \widehat{y}(x_{i})\approx y(x_{i}),~ i=\overline{0,n}[/math]. Первая и вторая производные аппроксимируются на трехточечном шаблоне [math](x_{i-1},x_{i},x_{i+1})[/math] по формулам второго порядка (5.10),(5.14):


Краевые условия для этой задачи аппроксимируются точно, т.е. [math]y(a)[/math] и [math]y(b)[/math] заменяются на [math]\widehat{y}_{0}[/math] и [math]\widehat{y}_{n}[/math]. После замены от дифференциальной задачи (7.5) переходим к разностной схеме:


[math]\frac{\widehat{y}_{i+1}-2\widehat{y}_{i}+ \widehat{y}_{i-1}}{h^2}+ p_{i} \frac{}{}-q_{i}\widehat{y}_{i}= f_{i},\quad i=\overline{1,n-1},\quad \widehat{y}_{0}=A,~ \widehat{y}_{n}=B,[/math]

представляющей собой систему алгебраических уравнений трехдиагонального вида:


[math]\alpha_{i}\widehat{y}_{i-1}-\beta_{i}\widehat{y}_{i}+ \gamma_{i} \widehat{y}_{i+1}= \delta_{i},\quad i=\overline{1,n-1},\quad \widehat{y}_{0}=A,~ \widehat{y}_{n}=B,[/math]
(7.6)

где [math]\alpha_{i}=\frac{1}{h^2}-\frac{p_{i}}{2h},~ \gamma_{i}=\frac{1}{h^2}+ \frac{p_{i}}{2h},~ \beta_{i}= \frac{2}{h^2}+q_{i},~ \delta_{i}=f_{i}[/math]. Здесь система (7.6) записана для внутренних узлов сетки [math]\Omega_n[/math]. Она является трехдиагональной системой линейных алгебраических уравнений и решается методом прогонки.


Замечания


1. Изложенный метод сеток допускает обобщение. Например, его можно применять для решения нелинейной краевой задачи:


[math]y''=F(x,y),\quad x\in[a,b],\quad y(a)=A,\quad y(b)=B,[/math]
(7.7)

где [math]F(x,y)[/math] — нелинейная по [math]y[/math] функция (в общем случае, который здесь не рассматривается, функция [math]F[/math] зависит также и от [math]y'[/math]).


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


[math]\widehat{y}_{i-1}-2\widehat{y}_{i}+ \widehat{y}_{i+1}= h^2F(x_{i},\widehat{y}_{i}),\quad i=\overline{1,n-1},\quad \widehat{y}_{0}=A,~ \widehat{y}_{n}=B.[/math]
(7.8)

В силу нелинейности правой части полученная алгебраическая система является нелинейной и для ее решения нельзя использовать метод прогонки в том виде, в каком он изложен для линейной задачи. Поэтому для ее решения используем метод простых итераций, с помощью которого при фиксированном [math]k[/math] (номер итерации) система алгебраических уравнений (7.8) превращается в линейную, так как величины, входящие в правую часть системы, известны из предыдущей итерации. Действительно, для k-й итерации получается система (которая решается на каждой итерации методом прогонки)


[math]\widehat{y}_{i-1}^{(k)}-2\widehat{y}_{i}^{(k)}+ \widehat{y}_{i+1}^{(k)}= h^2F \bigl(x_{i}, \widehat{y}_{i}^{(k-1)}\bigr),\quad i=\overline{1,n-1},\quad \widehat{y}_{0}^{(k)}=A,~ \widehat{y}_{n}^{(k)}=B.[/math]

Можно показать, что итерации сходятся при выполнении условия [math]q=\frac{1}{8}(x_n-x_0)^2M_1<1,[/math] [math]M_1=\max_{[a,b]}\left|\frac{\partial F}{\partial y}\right|[/math] с линейной скоростью.


2. Краевые условия второго и третьего рода в задаче, аналогичной (7.5), могут быть аппроксимированы несколькими способами.


Первый способ. Использование аппроксимационных формул (5.4) первого порядка


[math]\widehat{y}\,'_{0}= \frac{\widehat{y}_{1}-\widehat{y}_{0}}{h},\qquad \widehat{y}\,'_{n}= \frac{\widehat{y}_{n}-\widehat{y}_{n-1}}{h}\,.[/math]
(7.9)

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


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


Третий способ. Применение левосторонней (5.8) и правосторонней (5.9) формул, аппроксимирующих производные со вторым порядком:


[math]\widehat{y}\,'_{0}= \frac{1}{2h} \bigl(-3\widehat{y}_{0}+ 4\widehat{y}_{1}-\widehat{y}_{2}\bigr),\qquad \widehat{y}\,'_{n}= \frac{1}{2h} \bigl(\widehat{y}_{n-2}-4\widehat{y}_{n-1}+ 3\widehat{y}_{n}\bigr).[/math]
(7.10)

3. Порядок аппроксимации схемы определяется минимальным порядком аппроксимации дифференциального уравнения и краевых условий.




Алгоритм применения метода сеток


1. Задать сетку [math]\Omega_n[/math] на отрезке [math][a,b][/math] или сформировать ее из условий достижения требуемой точности.


2. Используя аппроксимационные формулы (5.10),(5.14) и один из трех способов аппроксимации краевых условий (в случае, если они второго или третьего рода), перейти от исходной дифференциальной задачи к системе алгебраических уравнений (разностной схеме), неизвестными в которой являются величины, "близкие" к решению краевой задачи в узлах сетки.


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


Пример 7.2. Найти приближенное решение краевой задачи [math]y''+y=1,~ 0 \leqslant x \leqslant \frac{\pi}{2},[/math] [math]y'(0)=0,[/math] [math]y\! \left(\frac{\pi}{2}\right)-y'\! \left(\frac{\pi}{2}\right)=2[/math] при [math]n=3[/math], используя первый способ аппроксимации краевых условий. Записать разностные схемы для второго и третьего способов при произвольном [math]n[/math].


▼ Решение

В поставленной задаче


[math]\begin{gathered}a=0,\quad b=\frac{\pi}{2},\quad p(x)=0,\quad q(x)=-1,\quad f(x)=1,\\[2pt] \alpha_0=0,\quad \beta_0=1,\quad A=0,\quad \alpha_1=1,\quad \beta_1=-1,\quad B=2. \end{gathered}[/math]

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


1. Так как [math]n=3[/math], то сетка имеет вид [math]\Omega_3=\{x_0,x_1,x_2,x_3\}[/math], где [math]x_{i}=ih,~ i=\overline{0,3},[/math] [math]h=\frac{\frac{\pi}{2}-0}{3}=\frac{\pi}{6}[/math]. Тогда [math]y(0)=y_0,~ y\! \left(\frac{\pi}{6}\right)=y_1,[/math] [math]y\! \left(\frac{\pi}{3}\right)=y_2,[/math] [math]y\! \left(\frac{\pi}{2}\right)=y_3[/math]. Будем искать приближенные значения [math]\widehat{y}_0,\widehat{y}_1, \widehat{y}_2, \widehat{y}_3[/math]. Проекции функций [math]p(x), q(x), f(x)[/math] на сетку имеют вид [math]p_{i}=0,~ q_{i}=-1,~ f_{i}=1[/math].


2. Составим разностную схему. Согласно (7.6), для внутренних узлов сетки получаем


[math]\frac{\widehat{y}_{i+1}-2\widehat{y}_{i}+ \widehat{y}_{i-1}}{h^2}+\widehat{y}_{i}=1,~ i=1;2[/math] или [math]\widehat{y}_{i-1}-(2-h^2)\widehat{y}_{i}+ \widehat{y}_{i+1}=h^2,~ i=1;2[/math].

Применим первый способ аппроксимации краевых условий. По формуле (5.4) с учетом условия [math]y'(0)=0[/math] на левом конце имеем


[math]\widehat{y}\,'_{0}= \frac{\widehat{y}_{1}-\widehat{y}_{0}}{h}=0[/math] или [math]\widehat{y}_{1}-\widehat{y}_{0}=0[/math].

На правом конце [math]y\! \left(\frac{\pi}{2}\right)=y_3,~ y'\! \left(\frac{\pi}{2}\right)=y'_3[/math], и по второй из формул (7.9) [math]\widehat{y}\,'_{3}= \frac{\widehat{y}_{3}-\widehat{y}_{2}}{h}[/math]. Тогда краевое условие [math]y\! \left(\frac{\pi}{2}\right)-y'\! \left(\frac{\pi}{2}\right)=2[/math] аппроксимируется выражением


[math]\widehat{y}_{3}-\frac{\widehat{y}_{3}-\widehat{y}_{2}}{h}=2[/math] или [math]\widehat{y}_{2}-(1-h)\widehat{y}_{3}=2h[/math].

В результате получаем разностную схему первого порядка аппроксимации (трехдиагональную систему линейных алгебраических уравнений)


[math]\begin{gathered}\widehat{y}_{1}-\widehat{y}_{0}=0,\\[2pt] \widehat{y}_{i-1}-(2-h^2)\widehat{y}_{i}+ \widehat{y}_{i+1}=h^2,\quad i=1;2,\\[2pt] \widehat{y}_{2}-(1-h)\widehat{y}_{3}=2h. \end{gathered}[/math]

Сравнивая первое уравнение этой системы с рекуррентным соотношением [math]\widehat{y}_{i}= P_{i}\cdot \widehat{y}_{i+1}+ Q_{i}[/math] метода прогонки, характеризующим обратный ход, получаем [math]P_0=1,~ Q_0=0[/math].


После этого вычисляются все последующие прогоночные коэффициенты по формулам:


[math]P_{i}= \frac{\gamma_{i}}{\beta_{i}-\alpha_{i}P_{i-1}},\qquad Q_{i}=\frac{\alpha_{i} Q_{i-1}-\delta_{i}}{\beta_{i}-\alpha_{i}P_{i-1}},\quad i=1,2,3.[/math]

Здесь [math]\alpha_{i},\beta_{i},\gamma_{i}[/math] соответствуют коэффициентам левой части полученной алгебраической системы, а [math]\delta_{i}[/math] — правой части.


Далее выполняется обратный ход: [math]\widehat{y}_{3}=Q_3,~ \widehat{y}_{2}= P_2\widehat{y}_{3}+ Q_2,~ \widehat{y}_{1}= P_1\widehat{y}_{2}+ Q_1[/math].


Результаты решения краевой задачи приведены в табл. 7.1, в которой последний столбец соответствует точному решению [math]y(x)=1+\cos x[/math], найденному в примере 7.1.


[math]\begin{array}{|c|c|c|c|c|c|c|c|c|} \multicolumn{9}{r}{\mathit{Table~7.1}}\\\hline i& \alpha_{i}& \beta_{i}& \gamma_{i}& \delta_{i}& P_{i}& Q_{i}& \widehat{y}_{i}& y(x) \\\hline 0& 0&-1,\!0000&-1& 0,\!00000& 1,\!00000& 0& 1,\!8648& 2,\!0000\\\hline 1& 1& 1,\!72584& 1& 0,\!27415& 1,\!37771&-0,\!37770& 1,\!8648& 1,\!8666\\\hline 2& 1& 1,\!72584& 1& 0,\!27415& 2,\!87240&-1,\!87242& 1,\!6277& 1,\!5000\\\hline 3& 1& 0,\!47640&-& 1,\!04200&-& 1,\!21853& 1,\!21853& 1,\!0000\\\hline \end{array}[/math]

В силу того, что краевые условия аппроксимированы с первым порядком относительно [math]h[/math], в данном случае получена разностная схема первого порядка, так как порядок аппроксимации схемы определяется минимальным порядком аппроксимации дифференциального уравнения и краевых условий.


Воспользуемся вторым способом аппроксимации краевых условий для построения разностной схемы второго порядка аппроксимации. Разложим [math]y(x)[/math] в точке [math]x=x_1[/math] относительно точки [math]x_0[/math] по формуле Тейлора:


[math]y_1= y_0+h\cdot y'(x)+ \frac{h^2}{2}\cdot y''(x_0)+ O(h^3).[/math]

Выразим из этого соотношения [math]y'(x_0)[/math] и подставим в него вместо [math]y''(x_0)[/math] выражение [math]y''(x_0)=1-y(x_0)=1-y_0[/math], определяемое исходным дифференциальным уравнением:


[math]y'(x_0)= \frac{y_1-y_0}{h}-\frac{h}{2}(1-y_0)+ O(h^2).[/math]

Как показывает это соотношение, дифференциальное условие на левой границе аппроксимируется на двухточечном шаблоне [math](x_0,x_1)[/math] со вторым порядком аппроксимации двухточечным алгебраическим уравнением:


[math]\frac{\widehat{y}_{1}-\widehat{y}_{0}}{h}-\frac{h}{2}(1-\widehat{y}_{0})=0[/math] или [math]\frac{\widehat{y}_{1}}{h}-\frac{1}{2h}(2-h^2)\cdot \widehat{y}_{0}= \frac{h}{2}[/math].

Аналогично получается двухточечное алгебраическое уравнение при /[math]i=n-1[/math] и [math]i=n[/math]. Разложение [math]y(x)[/math] в точке [math]x=x_{n-1}[/math] относительно точки [math]x_n[/math] по формуле Тейлора имеет вид


[math]y_{n-1}= y_n-h\cdot y'(x_0)+ \frac{h^2}{2}\cdot y''(x_n)+ O(h^3).[/math]

Выражая отсюда [math]y'(x_n)[/math] с учетом связи [math]y''(x_n)=1-y(x_n)=1-y_n[/math], следующей из исходного дифференциального уравнения, получаем


[math]y'(x_n)=-\frac{y_{n-1}}{h}+ \frac{y_n}{h}+\frac{h}{2}\cdot y''(x_n)=-\frac{y_{n-1}}{h}+ \frac{y_n}{h}+ \frac{h}{2}\cdot (1-y_n).[/math]

Подставим это выражение в граничное условие:


[math]y_n+ \frac{y_{n-1}}{h}-\frac{y_n}{h}-\frac{h}{2}(1-y_n)=2[/math] или [math]\frac{\widehat{y}_{n-1}}{h}+\frac{1}{2h}(h^2+2h-2)\widehat{y}_{n}= 2+\frac{h}{2}[/math].

Таким образом, система линейных алгебраических уравнений в окончательном виде записывается следующим образом:


[math]\begin{gathered}\frac{1}{2h}(h^2-2)\cdot \widehat{y}_{0}+ \frac{1}{2}\cdot \widehat{y}_{1}= \frac{h}{2}\,,\\ \widehat{y}_{i-1}-(2-h^2)\cdot \widehat{y}_{i}+ \widehat{y}_{i+1}=h^2,\quad i=\overline{1,n-1},\\ \frac{\widehat{y}_{n-1}}{h}+ \frac{1}{2h}(h^2+2h-2)\cdot \widehat{y}_{n}= 2+\frac{h}{2}\,.\end{gathered}[/math]

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


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


[math]\widehat{y}\,'_{0}= \frac{1}{2h}\cdot \bigl(-3\widehat{y}_{0}+ 4\widehat{y}_{1}-\widehat{y}_{2}\bigr).[/math]

Тогда получается трехточечное алгебраическое уравнение:


[math]\frac{1}{2h}\cdot \bigl(-3\widehat{y}_{0}+ 4\widehat{y}_{1}-\widehat{y}_{2}\bigr)[/math] или [math]3\widehat{y}_{0}-4\widehat{y}_{1}+ \widehat{y}_{2}=0[/math].

Аппроксимация производной [math]y'\! \left(\frac{\pi}{2}\right)[/math] в крайней правой точке по правосторонней формуле [math]\widehat{y}\,'_{n}= \frac{1}{2h} \bigl(\widehat{y}_{n-2}-4\widehat{y}_{n-1}+ 3\widehat{y}_{n}\bigr)[/math] приводит к трехточечному алгебраическому уравнению:


[math]\widehat{y}_{n}-\frac{1}{2h} \bigl(\widehat{y}_{n-2}-4\widehat{y}_{n-1}+ 3\widehat{y}_{n}\bigr)=2[/math] или [math]\widehat{y}_{n-2}-4\widehat{y}_{n-1}+ (3-2h)\widehat{y}_{n}=-4h[/math].

Тогда в этом случае получается следующая система линейных алгебраических уравнений:


[math]\begin{gathered}3\widehat{y}_{0}-4\widehat{y}_{1}+ \widehat{y}_{2}=0,\\[2pt] \widehat{y}_{i-1}-(2-h^2)\widehat{y}_{i}+ \widehat{y}_{i+1}= h^2,\quad i=\overline{1,n-1};\\[2pt] \widehat{y}_{n-2}-4\widehat{y}_{n-1}+ (3-2h)\widehat{y}_{n}=-4h. \end{gathered}[/math]

Здесь [math]\widehat{y}_{2}[/math] в первом уравнении и [math]\widehat{y}_{n-2}[/math] в последнем нарушают ее трехдиагональный характер. В этом случае система приводится к трехдиагональному виду путем исключения [math]\widehat{y}_{2}[/math] и [math]\widehat{y}_{n-2}[/math] из первых двух и последних двух уравнений системы и после этого решается методом прогонки.




Методы минимизации невязки


Описываемые здесь методы относятся к приближенно-аналитическим и могут применяться при решении достаточно широкого класса задач. На основе одного из приближенно-аналитических методов (метода Галеркина) строится метод конечных элементов, излагаемый в разд. 7.5.


Рассмотрим линейную краевую задачу (7.3),(7.4). Ее решение будем искать в виде


[math]\widehat{y}_{m}(x)= \varphi_0(x)+ a_1\cdot \varphi_1(x)+ \ldots+ a_m\cdot \varphi_m(x),[/math]
(7.11)

где [math]\varphi_0(x), \varphi_1(x), \ldots, \varphi_m(x)[/math] — элементы заданной системы функций; [math]a_1,\ldots,a_m[/math] — неопределенные коэффициенты. Заданная система функций называется базисной, и ее элементы должны удовлетворять условиям:


а) [math]\varphi_{j}(x)\in C_2[a,b],~ j=\overline{0,m}[/math];

б) при любом конечном [math]m[/math] функции [math]\varphi_1(x), \ldots, \varphi_m(x)[/math] линейно независимы на отрезке [math][a,b][/math];

в) [math]\varphi_0(x)[/math] удовлетворяет краевым условиям (7.4)


[math]\begin{aligned}&\alpha_0\cdot \varphi_0(a)+ \beta_0\cdot \varphi'_0(a)= A,\\ &\alpha_1\cdot \varphi_0(b)+ \beta_1\cdot \varphi'_0(b)= B; \end{aligned}[/math]
(7.12)

г) [math]\varphi_1(x), \ldots, \varphi_m(x)[/math] удовлетворяют условиям


[math]\begin{aligned}& \alpha_0\cdot \varphi_{j}(a)+ \beta_0\cdot \varphi'_{j}(a)=0,\\ & \alpha_1\cdot \varphi_{j}(b)+ \beta_1\cdot \varphi'_{j}(b)=0 \end{aligned}\quad j=\overline{1,m}.[/math]
(7.13)

Функция

[math]\varepsilon(x; a_1,\ldots,a_m)= \widehat{y}\,''_{m}(x)+ p(x)\cdot \widehat{y}\,'_{m}(x)-q(x)\cdot \widehat{y}_{m}(x)-f(x)[/math]
(7.14)

называется невязкой. Она равна разности левой и правой частей уравнения (7.3), образующейся при подстановке [math]\widehat{y}_{m}(x)[/math] вместо [math]y(x)[/math] в дифференциальное уравнение, и характеризует степень отклонения функции [math]\widehat{y}_{m}(x)[/math] от точного решения краевой задачи. Если при некоторых значениях коэффициентов [math]a_1,\ldots,a_m[/math] невязка тождественно равна нулю на отрезке [math][a,b][/math], а именно


[math]\varepsilon(x; a_1,\ldots, a_m)\equiv 0,\quad a \leqslant x \leqslant b,[/math]
(7.15)

то функция [math]\widehat{y}_{m}(x)[/math] совпадает с точным решением краевой задачи (7.3),(7.4), так как удовлетворяются и уравнение, и краевые условия.


Однако при решении краевых задач, как правило, не удается получить невязку тождественно равной нулю. Поэтому ставится задача: вычислить коэффициенты [math]a_1,\ldots,a_m[/math] таким образом, чтобы невязка в каком-либо смысле стала меньшей. Полученные в результате коэффициенты определяют приближенное решение (7.11).


Выражение для невязки [math]\varepsilon(x; a_1,\ldots, a_m)[/math] с учетом (7.11) удобно записывать в следующей эквивалентной форме:


[math]\varepsilon(x; a_1,\ldots, a_m)= L\widehat{y}_{m}-f(x)= L \varphi_0(x)+ \sum\limits_{j=1}^{m} \bigl(a_{j}\cdot L \varphi_{j}(x)\bigr)-f(x),[/math]
(7.16)

где [math]L\widehat{y}_{m}\equiv \widehat{y}\,''_{m}(x)+ p(x)\widehat{y}\,'_{m}(x)-q(x) \widehat{y}_{m}(x),~ L[/math] — линейный оператор задачи (7.3),(7.4) (выполняются равенства [math]L(y+z)= Ly+Lz,[/math] [math]L(Cy)=C\cdot Ly[/math] для любых [math]y,\,z[/math] и постоянной [math]C[/math]).


Рассмотрим различные методы, минимизирующие невязку.


А. Метод коллокации. На интервале [math](a,b)[/math] задаются т точек [math]x_1,\ldots, x_n[/math] (точек коллокации) и требуется, чтобы в каждой из них невязка (7.14) обращалась в нуль:


[math]\begin{aligned}& \varepsilon(x_1; a_1,\ldots, a_m)=0,\\[-6pt] & \quad \vdots\\[-2pt] & \varepsilon(x_m; a_1,\ldots, a_m)=0. \end{aligned}[/math]
(7.17)

С учетом (7.16) эта система принимает вид


[math]\begin{aligned}& a_1\cdot L \varphi_1(x_1)+ \ldots+ a_m\cdot L \varphi_m(x_1)= f(x_1)-L \varphi_0(x_1),\\ & a_1\cdot L \varphi_1(x_2)+ \ldots+ a_m\cdot L \varphi_m(x_2)= f(x_2)-L \varphi_0(x_2),\\[-6pt] &\quad\vdots \\[-2pt] & a_1\cdot L \varphi_1(x_m)+ \ldots+ a_m\cdot L \varphi_m(x_m)= f(x_m)-L \varphi_0(x_m). \end{aligned}[/math]
(7.18)

Если полученная система [math]m[/math] линейных уравнений совместна, то из нее определяются коэффициенты [math]a_1,\ldots, a_m[/math], которые затем подставляются в (7.11).


Б. Метод наименьших квадратов (непрерывный вариант). Неизвестные коэффициенты [math]a_1,\ldots, a_m[/math] должны обеспечивать минимум интеграла от квадрата невязки:


[math]I= \int\limits_{a}^{b} \varepsilon^2(x,a_1,\ldots, a_m)\,dx\to \min_{a_1,\ldots, a_m}.[/math]

Для решения задачи применяются необходимые условия безусловного экстремум:


[math]\frac{\partial I}{\partial a_{j}}= 2\int\limits_{a}^{b} \varepsilon^2(x,a_1,\ldots, a_m)\frac{\partial \varepsilon(x,a_1,\ldots, a_m)}{\partial a_{j}}\,dx=0,\quad j=\overline{1,m}.[/math]
(7.19)

Подставляя (7.16) в (7.19), получаем систему [math]m[/math] линейных алгебраических уравнений для нахождения коэффициентов [math]a_1,\ldots, a_m\colon[/math]


[math]\begin{aligned}& a_1 \langle L\varphi_1, L\varphi_1\rangle + \ldots+ a_m \langle L\varphi_m, L\varphi_1\rangle = \langle f-L\varphi_0, L\varphi_1\rangle ,\\ & a_1 \langle L\varphi_1, L\varphi_2\rangle + \ldots+ a_m \langle L\varphi_m, L\varphi_2\rangle = \langle f-L\varphi_0, L\varphi_2\rangle ,\\[-6pt] & \quad\vdots\\[-2pt] & a_1 \langle L\varphi_1, L\varphi_m\rangle + \ldots+ a_m \langle L\varphi_m, L\varphi_m\rangle = \langle f-L\varphi_0, L\varphi_m\rangle , \end{aligned}[/math]
(7.20)

где [math]\textstyle{\langle f,g\rangle= \int\limits_{a}^{b} f(x)g(x)dx}[/math] — скалярное произведение. В системе (7.20) все скалярные произведения предварительно вычисляются.


В. Метод наименьших квадратов (дискретный вариант). Неизвестные коэффициенты [math]a_1,\ldots,a_m[/math] должны обеспечивать минимум суммы квадратов значений невязки в заданном наборе точек [math]x_1,\ldots,x_n;~ n \geqslant m[/math], то есть [math]x_{i}\in (a,b),~ i=\overline{1,n}\colon[/math]


[math]S= \sum\limits_{i=1}^{n} \varepsilon^2(x_{i}, a_1,\ldots,a_m)\to \min_{a_1,\ldots,a_m}.[/math]

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


[math]\frac{\partial S}{\partial a_{j}}= 2\sum\limits_{i=1}^{n} \varepsilon(x_{i}, a_1,\ldots,a_m) \frac{\partial \varepsilon(x_{i}, a_1,\ldots,a_m)}{\partial a_{j}}=0,\quad j=\overline{1,m}.[/math]
(7.21)

Отсюда следует система [math]m[/math] линейных уравнений для нахождения коэффициентов [math]a_1,\ldots,a_m[/math], которая по форме записи совпадает с (7.20), но скалярное произведение определяется по формуле [math]\textstyle{(f,g)= \sum\limits_{i=1}^{n} f(x_{i})g(x_{i})}[/math].


Замечание. При [math]n=m[/math] результаты, полученные точечным методом наименьших квадратов и методом коллокации, совпадают. В этом случае точки [math]x_1,\ldots, x_n[/math] являются точками коллокации.


Г. Метод моментов (взвешенных невязок). Неизвестные коэффициенты ах,...,ат находятся из условия равенства нулю /и моментов невязки:


[math]I= \int\limits_{a}^{b} \varepsilon(x_{i}, a_1,\ldots,a_m)\cdot \psi_{j}(x)\,dx=0,\quad j=\overline{1,m}.[/math]
(7.22)

где [math]\psi_{j}(x),~ j=\overline{1,m}[/math] — функции, удовлетворяющие условиям:


а) [math]\psi_{j}(x)\in C[a,b],~ j=\overline{1,m}[/math];

б) функции [math]\psi_{j}(x)[/math] являются элементами системы степеней [math]x[/math] или системы тригонометрических функций.


Функции [math]\psi_{j}(x),~ j=\overline{1,m}[/math] называются весовыми, а условие (7.22) является условием ортогональности невязки к весовым функциям.


Д. Метод Галсркина. Он является частным случаем метода моментов, когда в качестве весовых функций используются базисные. Коэффициенты [math]a_1,\ldots,a_m[/math] находятся из условия ортогональности функций базисной системы [math]\varphi_1(x),\ldots, \varphi_{m}(x)[/math] к невязке:


[math]\int\limits_{a}^{b} \varepsilon(x_{i}, a_1,\ldots,a_m)\cdot \varphi_{j}(x)\,dx=0,\quad j=\overline{1,m}.[/math]
(7.23)

Отсюда следует система [math]m[/math] линейных уравнений для нахождения коэффициентов:


[math]\begin{aligned}& a_1\cdot \langle L \varphi_1, \varphi_1\rangle + \ldots+ a_m\cdot \langle L \varphi_m, \varphi_1\rangle = \langle f-L \varphi_0, \varphi_1\rangle ,\\ & a_1\cdot \langle L \varphi_1, \varphi_2\rangle + \ldots+ a_m\cdot \langle L \varphi_m, \varphi_2\rangle = \langle f-L \varphi_0, \varphi_2\rangle ,\\[-6pt] & \quad\vdots\\[-2pt] & a_1\cdot \langle L \varphi_1, \varphi_m\rangle + \ldots+ a_m\cdot \langle L \varphi_m, \varphi_m\rangle = \langle f-L \varphi_0, \varphi_m\rangle , \end{aligned}[/math]
(7.24)

где [math]\textstyle{\langle f,g\rangle= \int\limits_{a}^{b} f(x)g(x)dx}[/math] — скалярное произведение. В системе (7.24) все скалярные произведения предварительно вычисляются.


Известно, что при достаточно большом [math]m[/math] условие (7.23) обеспечивает малость невязки в среднем.




Алгоритм применения методов минимизации невязки


1. В выражении (7.11) выбрать систему базисных функций, задать число [math]m[/math] в зависимости от требуемой точности.


2. Найти коэффициенты [math]a_1,\ldots,a_m[/math] путем решения одной из систем алгебраических уравнений (7.18),(7.20),(7.24) в зависимости от выбранного метода.


3. Выписать приближенное решение краевой задачи по формуле (7.11).


Пример 7.3. Найти приближенное решение краевой задачи [math]y''+y=-x,~0 \leqslant x \leqslant 1,[/math] [math]y(0)=0,~ y(1)=0[/math] методом коллокации, интегральным методом наименьших квадратов, методом Галеркина


▼ Решение

В поставленной задаче


[math]\begin{gathered}a=0,\quad b=1,\quad p(x)=0,\quad q(x)=-1,\quad f(x)=-x,\quad \alpha_0=1,\\[2pt] \beta_0=0,\quad A=0,\quad \alpha_1=1,\quad \beta_1=0,\quad B=0,\quad Ly=y''+y. \end{gathered}[/math]

Точное решение найдено в примере 7.1.


Воспользуемся сначала методом коллокации.


1. Зададим [math]m=2[/math] и будем искать решение в виде


[math]\widehat{y}_2(x)= \varphi_0(x)+ a_1\cdot \varphi_1(x)+ a_2\cdot \varphi_2(x),[/math]

где [math]\varphi_0(x)\equiv0[/math] (эта функция удовлетворяет каждому из краевых условий, т.е. [math]\varphi_0(0)=0,~ \varphi_0(1)=0[/math]), функции [math]\varphi_1(x)= x(1-x),~ \varphi_2(x)= x^2(1-x)[/math]. Функции [math]\varphi_1(x),\, \varphi_2(x)[/math] линейно независимые, дважды непрерывно дифференцируемые и удовлетворяют условию (7.13). Действительно,


[math]\begin{aligned}& 1\cdot \varphi_{j}(0)+ \varphi'_{j}(0)=0 & & j=1;2,\\ & 1\cdot \varphi_{j}(1)+ \varphi'_{j}(1)=0 & & j=1;2. \end{aligned}[/math]

Таким образом, решение краевой задачи ищется в форме


[math]\widehat{y}_2(x)= a_1\cdot x(1-x)+ a_2\cdot x^2(1-x).[/math]

2. Так как [math]m=2[/math] и [math]\varphi_0(x)\equiv 0[/math], то система (7.18) имеет вид


[math]\begin{cases}a_1\cdot L \varphi_1(x_1)+ a_2\cdot L \varphi_2(x_1)= f(x_1),\\[2pt] a_1\cdot L \varphi_1(x_2)+ a_2\cdot L \varphi_2(x_2)= f(x_2). \end{cases}[/math]

Выберем узлы коллокации: [math]x_1=1\!\!\not{\phantom{|}}\,4,~ x_2=1\!\!\not{\phantom{|}}\,2[/math]. Тогда


[math]\begin{gathered}L\varphi_1(x)= \varphi''_1(x)+ \varphi_1(x)=-2+x(1-x)=-2+x-x^2;\\ L\varphi_1(x_1)=L \varphi_1\! \left(\frac{1}{4}\right)=-\frac{29}{16};\qquad L\varphi_1(x_2)=L \varphi_1\! \left(\frac{1}{2}\right)=-\frac{7}{4};\\[4pt] L\varphi_2(x)= \varphi''_2(x)+ \varphi_2(x)=2-6x+x^2-x^3;\\ L\varphi_2(x_1)=L \varphi_2\! \left(\frac{1}{4}\right)=\frac{35}{64};\qquad L\varphi_2(x_2)=L \varphi_2\! \left(\frac{1}{2}\right)=-\frac{7}{8}. \end{gathered}[/math]

Таким образом, имеем линейную систему относительно [math]a_1[/math] и [math]a_2\colon[/math]


[math]\left\{\! \begin{aligned}&\frac{29}{16}\,a_1-\frac{35}{64}\,a_2=\frac{1}{4},\\ &\frac{7}{4}\,a_1+ \frac{7}{8}\,a_2=\frac{1}{2}, \end{aligned}\right.[/math] решение которой дает [math]\left\{\! \begin{aligned}& a_1=\frac{6}{31}\,,\\ a_2=\frac{40}{217}\,. \end{aligned}\right.[/math].

3. Приближенное решение задачи: [math]\widehat{y}_2(x)= \frac{x(x-1)}{217}(42+40x)[/math].


Решим теперь задачу методом наименьших квадратов (см. непрерывный вариант).


1. Решение краевой задачи ищется в форме [math]\widehat{y}_2(x)= a_1\cdot x(1-x)+ a_2\cdot x^2(1-x)[/math].


2. Так как [math]f(x)=-x,~ \varphi_0(x)\equiv 0[/math], то система (7.20) имеет вид


[math]\begin{cases}a_1\cdot \langle L \varphi_1, L \varphi_1\rangle+ a_2\cdot \langle L \varphi_2, L \varphi_1\rangle= \langle-x, L \varphi_1\rangle,\\ a_1\cdot \langle L \varphi_1, L \varphi_2\rangle+ a_2\cdot \langle L \varphi_2, L \varphi_2\rangle= \langle-x, L \varphi_2\rangle, \end{cases}[/math]

где

[math]\begin{gathered}\langle L \varphi_1, L \varphi_1\rangle= \int\limits_{0}^{1} (-2+x-x^2)^2\,dx=\frac{101}{30}\,;\qquad \langle L \varphi_2, L \varphi_2\rangle= \int\limits_{0}^{1} (2-6x+x^2-x^3)^2\,dx=\frac{131}{35}\,;\\ \langle L \varphi_1, L \varphi_2\rangle= \int\limits_{0}^{1} (-2+x-x^2)(2-6x+x^2-x^3)\,dx=\frac{101}{60}\,;\\ \langle-x, L \varphi_1\rangle= \int\limits_{0}^{1}(-x)(-2+x-x^2)\,dx=\frac{11}{12}\,;\qquad \langle-x, L \varphi_2\rangle= \int\limits_{0}^{1} (-x)(2-6x+x^2-x^3)\,dx=\frac{19}{20}\,. \end{gathered}[/math]

Итак, имеем линейную систему относительно [math]a_1[/math] и [math]a_2\colon[/math]


[math]\left\{\! \begin{aligned}& \frac{101}{30}\,a_1+ \frac{101}{60}\,a_2= \frac{11}{12}\,;\\ & \frac{101}{60}\,a_1+ \frac{131}{35}\,a_2= \frac{19}{20}\,;\end{aligned}\right.[/math] решение которой дает [math]\left\{\! \begin{aligned}a_1=0,\!1875419;\\ a_2=0,\!1694707. \end{aligned}\right.[/math]

Приближенное решение задачи: [math]\widehat{y}_2(x)=0,\!1875419x(1-x)+ 0,\!1694707x^2(1-x).[/math].


Решим задачу методом Галеркина.


1. Пусть сначала [math]m=1[/math]. Решение ищется в форме [math]\widehat{y}_1(x)= a_1\cdot x(1-x)[/math].


2. Тогда система (7.24) преобразуется к виду


[math]a_1\cdot \langle L \varphi_1, \varphi_1\rangle= \langle-x,\varphi_1\rangle[/math] или [math]a_1\cdot (\varphi''_1+ \varphi_1)= \langle-x,\varphi_1\rangle[/math].

Так как [math]\varphi_1(x)= x(1-x),~ L\varphi_1(x)= \varphi''_1(x)+ \varphi_1(x)=-2+x(1-x)[/math], получаем


[math]a_1\cdot \int\limits_{0}^{1} \bigl(-2+x(1-x)\bigr)x(1-x)\,dx=-\int\limits_{0}^{1} x^2(1-x)\,dx\,.[/math]

После вычисления интегралов имеем уравнение [math]-\frac{3}{10}\,a_1=-\frac{1}{12}[/math], откуда [math]a_1=\frac{5}{18}[/math].


3. Приближенное решение краевой задачи: [math]\widehat{y}_1(x)=\frac{5}{18}\,x(1-x)[/math]. Пусть теперь [math]m=2[/math].


1. Решение краевой задачи ищется в форме [math]\widehat{y}_2(x)=a_1\cdot x(1-x)+ a_2\cdot x^2(1-x)[/math].


2. Тогда система (7.24) имеет вид

[math]\begin{cases}a_1\cdot \langle L \varphi_1,\varphi_1\rangle+ a_2\cdot \langle L \varphi_2,\varphi_1\rangle= \langle f,\varphi_1\rangle,\\ a_1\cdot \langle L \varphi_1,\varphi_2\rangle+ a_2\cdot \langle L \varphi_2,\varphi_2\rangle= \langle f,\varphi_2\rangle. \end{cases}[/math]

Так как

[math]\begin{gathered}\varphi_1(x)=x(1-x),\qquad \varphi_2(x)=x^2(1-x),\\[2pt] L\varphi_1(x)= \varphi''_1(x)+ \varphi_1(x)=-2+x(1-x),\qquad L\varphi_2(x)= \varphi''_2(x)+ \varphi_2(x)=2-6x+x^2-x^3, \end{gathered}[/math]

получаем

[math]\begin{aligned}& a_1 \int\limits_{0}^{1} \bigl[-2+x(1-x)\bigr]x(1-x)\,dx+ a_2 \int\limits_{0}^{1} \bigl[2-6x+x^2(1-x)\bigr]x(1-x)\,dx=-\int\limits_{0}^{1}x^2(1-x)\,dx\,,\\ & a_1 \int\limits_{0}^{1} \bigl[-2+x(1-x)\bigr]x^2(1-x)\,dx+ a_2 \int\limits_{0}^{1} \bigl[2-6x+x^2(1-x)\bigr]x^2(1-x)\,dx=-\int\limits_{0}^{1}x^3(1-x)\,dx\,. \end{aligned}[/math]

Вычисляя интегралы, находим


[math]\left\{\! \begin{aligned}& \frac{3}{10}\,a_1+\frac{3}{20}\,a_2=\frac{1}{12}\,,\\ & \frac{3}{10}\,a_1+\frac{13}{105}\,a_2=\frac{1}{20}\,. \end{aligned}\right.[/math] Отсюда [math]\left\{\! \begin{aligned}& a_1=\frac{71}{369}\,,\\ a_2=\frac{7}{41}\,. \end{aligned}\right.[/math]

3. Приближенное решение краевой задачи: [math]\widehat{y}_2(x)= x(1-x)\! \left(\frac{71}{369}+ \frac{7}{41}\,x\right)[/math].


Сопоставим полученные решения с точным (табл. 7.2).


[math]\begin{array}{|c|c|c|c|c|} \multicolumn{5}{r}{\mathit{Table~7.2}}\\\hline x& y_{\text{kollok.}}& y_{\text{naim. kvad.}}& y_{\text{galerkina}}& \text{Tochnoe reshenie} \\\hline 0,\!25& 0,\!045& 0,\!04311& 0,\!0440& 0,\!044014 \\\hline 0,\!50& 0,\!071& 0,\!06807& 0,\!0698& 0,\!069747 \\\hline 0,\!75& 0,\!062& 0,\!05899& 0,\!0600& 0,\!060050 \\\hline \end{array}[/math]

Очевидно, метод Галеркина дал более точный результат.


Пример 7.4. Найти приближенное решение краевой задачи [math]y''+2xy'-2y=2x^2,~ 0 \leqslant x \leqslant 1,[/math] [math]y'(0)=-2,~ y(1)+y'(1)=0[/math] методом Галеркина.


▼ Решение

В поставленной задаче


[math]\begin{gathered}a=0,\quad b=1,\quad p(x)=2x,\quad q(x)=2,\quad f(x)=2x^2,\\[2pt] \alpha_0=0,\quad \beta_0=1,\quad A=-2,\quad \alpha_1=1,\quad \beta_1=0,\quad Ly=y''+2xy'-2y. \end{gathered}[/math]

1. Зададим [math]m=2[/math] и подберем функции [math]\varphi_0(x),\, \varphi_1(x),\, \varphi_2(x)[/math], используя систему [math]1,x,x^2,\ldots[/math]. Функция [math]\varphi_0(x)[/math] должна удовлетворять условиям (7.12):


[math]\varphi'_0(0)=-2,\qquad \varphi_0(1)+\varphi'_0(1)=0.[/math]

Пусть [math]\varphi_0(x)=b+cx[/math], где [math]b,\,c[/math] — неопределенные коэффициенты. Тогда


[math]\varphi'_0(0)=c=-2,\qquad \varphi_0(1)+ \varphi'(1)= b+c+c=b=2c=0.[/math]

Отсюда [math]b=4[/math] и [math]\varphi_0(x)=4-2x[/math].


Функции [math]\varphi_1(x),\, \varphi_2(x)[/math] должны удовлетворять условиям (7.13):


[math]\varphi'_{j}(0)=0,\quad \varphi_{j}(1)+ \varphi'_{j}(1)=0,\quad j=1;2.[/math]

Первое условие выполняется для функций вида [math]\varphi_{j}= x^{j+1}+b_{j}[/math]. Значения [math]b_{j}[/math] находятся из второго условия [math]1+b_{j}+j+1=0[/math], откуда [math]b_{j}=-j-2[/math]. Тогда получаем [math]\varphi_1(x)=x^2-3,~ \varphi_2(x)=x^3-4[/math].


Таким образом, решение краевой задачи ищется в форме


[math]\widehat{y}_2(x)=4-2x+a_1\cdot (x^2-3)+ a_2\cdot (x^3-4).[/math]

2. Тогда система (7.24) имеет вид


[math]\left\{\begin{aligned}&a_1\cdot \langle L \varphi_1,\varphi_1\rangle+ a_2\cdot \langle L \varphi_2,\varphi_1\rangle= \langle f-L \varphi_0,\varphi_1\rangle,\\ &a_1\cdot \langle L \varphi_1,\varphi_2\rangle+ a_2\cdot \langle L \varphi_2,\varphi_2\rangle= \langle f-L \varphi_0,\varphi_2\rangle, \end{aligned}\right.[/math]

где

[math]\begin{aligned}L \varphi_0(x)&= \varphi''_0(x)+2x\varphi'_0(x)-2\varphi_0(x)= 0+2x(-2)-8+4x=-8;\\ L \varphi_1(x)&= \varphi''_1(x)+2x\varphi'_1(x)-2\varphi_1(x)= 2+2x2x-2x^2+6=2x^2+8;\\ L \varphi_2(x)&= \varphi''_2(x)+2x\varphi'_2(x)-2\varphi_2(x)= 6x+2x3x^2-2x^3+8= 4x^3+6x+8;\\[2pt] &\langle L \varphi_1,\varphi_1\rangle= \int\limits_{0}^{1} (2x^2+8)(x^2-3)\,dx=-22,\!93333;\\ &\langle L \varphi_2,\varphi_1\rangle= \int\limits_{0}^{1} (4x^3+6x+8)(x^2-3)\,dx=-31,\!16667;\\ &\langle L \varphi_1,\varphi_2\rangle= \int\limits_{0}^{1} (2x^2+8)(x^3-4)\,dx=-32,\!33333;\\ &\langle L \varphi_2,\varphi_2\rangle= \int\limits_{0}^{1} (4x^3+6x+8)(x^3-4)\,dx=-44,\!22857;\\ &\langle f-L \varphi_0,\varphi_1\rangle= \int\limits_{0}^{1} (2x^2+8)(x^2-3)\,dx=-22,\!93333;\\ &\langle f-L \varphi_0,\varphi_2\rangle= \int\limits_{0}^{1} (2x^2+8)(x^3-4)\,dx=-32,\!33333. \end{aligned}[/math]

Окончательно получаем


[math]\begin{cases}22,\!93333a_1+31,\!16667a_2=22,\!93333,\\ 32,\!33333a_1+ 44,\!22857a_2= 32,\!33333.\end{cases}[/math] Отсюда [math]\begin{cases}a_1=1,\\ a_2=0.\end{cases}[/math]

3. Приближенное решение краевой задачи [math]\widehat{y}_2(x)= x^2-2x+1[/math].




Методы сведения краевой задачи к задаче Коши


Метод стрельбы. Суть этого метода заключается в сведении решения краевой задачи к многократному решению задачи Коши. Принцип построения метода стрельбы рассмотрим на примере нелинейной краевой задачи:


[math]y''=f(x,y,y'),\quad a \leqslant x \leqslant b,[/math]
(7.25)

[math]y(a)=A,\quad y(b)=B,[/math]
(7.26)

где [math]f(x,y,y')[/math] — нелинейная функция, обусловливающая нелинейность дифференциального уравнения (7.25).


При введении новой переменой [math]z=y'[/math] уравнение (7.25) записывается в нормальной форме Коши, а краевые условия видоизменяются:


[math]\begin{gathered}y'=z,\qquad y(a)=A,\\ z'=f(x,y,z),\qquad z(a)=\eta,\end{gathered}[/math]
(7.27)

где[math]\eta=y'(a)=\operatorname{tg}\alpha[/math] — параметр, равный тангенсу угла наклона интегральной кривой в точке [math]x=a[/math]. Угол [math]\alpha[/math] (параметр [math]\eta[/math]) в процессе многократного решения краевой задачи должен принять такое значение, чтобы интегральная кривая "попала в цель", т.е. в точку [math](b,B)[/math] (рис.7.2 ,а). В общем случае полученное при некотором значении [math]\eta[/math] решение [math]y(x,\eta)[/math] не будет удовлетворять условию [math]y(b,\eta)=B[/math] на правом конце отрезка.


Следовательно, требуется найти такое значение параметра [math]\eta[/math], чтобы оно было корнем нелинейного уравнения [math]\Phi(\eta)= y(b,n)-B=0[/math]. Для решения этого уравнения, как правило, используются методы половинного деления или секущих. В случае использования метода половинного деления сначала делают "пробные" выстрелы при выбранных наугад или в соответствии с некоторым алгоритмом значениях [math]\eta[/math] до тех пор, пока среди значений [math]\Phi(\eta)[/math] не окажется двух противоположных по знаку. Им соответствует начальный интервал неопределенности, который далее последовательно сокращается путем деления пополам. При применении метода секущих используется формула


[math]\eta^{(k+1)}=\eta^{(k)}-\frac{\Phi(\eta^{(k)})\cdot \bigl[\eta^{(k)}-\eta^{(k-1)}\bigr]}{\Phi(\eta^{(k)})-\Phi(\eta^{(k-1)})},\quad k=1,2,\ldots[/math]

где [math]\eta^{(0)},\,\eta^{(1)}[/math] — начальные значения параметра, [math]k[/math] — номер итерации. Итерации прекращаются при выполнении условия окончания [math]\bigl|\Phi(\eta^{(k)})\bigr| \leqslant \varepsilon[/math] или [math]\bigl|\eta^{(k+1)}-\eta^{(k)}\bigr| \leqslant \varepsilon[/math] с некоторым положительным [math]\varepsilon[/math], характеризующим точность решения задачи.


Замечание. Точность решения краевой задачи зависит не только от точности определения параметра [math]\eta[/math], но также и от точности решения соответствующей задачи Коши. Поэтому одновременно с уточнением параметра [math]\eta[/math] рекомендуется уменьшать шаг при решении задачи Коши, либо выбирать более точный метод.


Рассмотрим применение метода стрельбы для решения линейной краевой задачи (7.3),(7.4):


[math]\begin{gathered}y''+p(x)y'-q(x)y=f(x),\quad a \leqslant x \leqslant b,\\ \alpha_0y(a)+ \beta_0y'(a)=A,\\ \alpha_1y(b)+ \beta_1y'(b)=B. \end{gathered}[/math]

Методика решения линейной краевой задачи


1. Решить две задачи Коши


[math]y''+p(x)y'-q(x)y=f(x),\quad a \leqslant x \leqslant b[/math]
(7.28)

при условии

[math]\alpha_0y(a)+ \beta_0y'(a)=A,[/math]
(7.29)

а именно при [math]\beta_0\ne0[/math] задается [math]y(a)=\eta[/math], тогда [math]y'(a)= \frac{A-\alpha_0\eta}{\beta_0}[/math], а при [math]\beta_0=0[/math] задается [math]y'(a)=\eta[/math] и тогда [math]y(a)=\frac{A}{\alpha_0}[/math] с разными произвольными значениями [math]\eta[/math], то есть [math]\eta=\eta^{(0)}[/math] и [math]\eta=\eta^{(1)}[/math].


2. Найти значения [math]\Phi(\eta^{(0)}),\, \Phi(\eta^{(1)})[/math] функции [math]\Phi(\eta)= \alpha_1\cdot y(b,\eta)+ \beta_1\cdot y'(b,\eta)-B[/math] и новое значение параметра:
[math]\eta^{(2)}=\eta^{(1)}-\frac{\Phi(\eta^{(1)})\cdot \bigl[\eta^{(1)}-\eta^{(0)}\bigr]}{\Phi(\eta^{(1)})-\Phi(\eta^{(0)})}\,.[/math]

3. Решить краевую задачу (7.28),(7.29) при [math]\eta=\eta^{(2)}[/math]. В результате получится приближенное решение исходной линейной краевой задачи, точность которого определяется точностью решения задачи Коши при значении [math]\eta=\eta^{(2)}[/math].


Таким образом, в силу линейности поставленной краевой задачи соответствующая задача Коши решается только три раза.


Пример 7.5. Методом стрельбы найти приближенное решение нелинейной краевой задачи

[math]y\cdot y''-y'^2=0,\quad y(0)=1,\quad y(1)=2,\!718.[/math]

Соответствующую задачу Коши решить явным методом Эйлера с шагом [math]h=0,\!01[/math], а параметр [math]\eta[/math] вычислить методом половинного деления.


▼ Решение

Зададим начальные значения параметра [math]\eta\colon\, \eta^{(0)}=0,~ \eta^{(1)}=1,\!35[/math], которые обеспечивают разные по знаку значения функции [math]\Phi(\eta)[/math]. Они являются соответственно левым и правым концами начального интервала неопределенности. Согласно методу половинного деления будем делить текущий интервал пополам и в качестве нового интервала выбирать тот, на концах которого функция [math]\Phi(\eta)= y(1,\eta)-2,\!718[/math] имеет разные знаки. Процедуру поиска завершим при выполнении условия [math]\bigl|\eta^{(k+1)}-\eta^{(k)}\bigr| \leqslant \varepsilon[/math], где положим [math]\varepsilon=0,\!01[/math].


Для применения явного метода Эйлера (6.19) уравнение следует переписать в форме [math]y''= \frac{y'^2}{y}[/math], а затем с помощью введения новой переменной [math]z=y'[/math] — в виде (7.27):


[math]\begin{aligned}& y'=z, & & y(0)=1,\\ & z'=\frac{z^2}{y}, & & z(0)=\eta. \end{aligned}[/math]

Результаты интегрирования явным методом Эйлера с шагом [math]h=0,\!01[/math] с параметром [math]\eta[/math], определяемым методом половинного деления, приведены в табл. 7.3. Четыре первых решения [math]y(x,\eta)[/math] изображены на рис. 7.2,б.


[math]\begin{gathered}\begin{array}{|c|c|c|c|} \multicolumn{4}{r}{\mathit{Table~7.3}} \\\hline k& \eta^{(k)}& y(1,\eta^{(k)})& \Phi(\eta^{(k)}) \\\hline 0&0&1,\!000000&-1,\!718000 \\\hline 1&1,\!35&3,\!822746&1,\!104700 \\\hline 2&0,\!675&1,\!959583&-0,\!758417 \\\hline 3&1,\!0125&2,\!738495&0,\!020495 \\\hline 4&0,\!84375&2,\!316000&-0,\!402000 \\\hline 5&0,\!934375&2,\!534000&-0,\!184000 \\\hline 6&0,\!9734375&2,\!634597&-0,\!083403 \\\hline 7&0,\!99296875&2,\!686050&-0,\!031950 \\\hline 8&1,\!002734375&2,\!712146&-0,\!005850 \\\hline \end{array}\\[8pt] \begin{array}{|c|c|c|c|c|c|c|c|c|c|c|c|} \multicolumn{12}{r}{\mathit{Table~7.4}}\\\hline x_{i}& 0& 0,\!1& 0,\!2& 0,\!3& 0,\!4& 0,\!5& 0,\!6& 0,\!7& 0,\!8& 0,\!9& 1,\!0 \\\hline \widehat{y}_{i}& 1& 1,\!105& 1,\!2208& 1,\!3489& 1,\!4905& 1,\!6468& 1,\!8196& 2,\!0106& 2,\!2215& 2,\!4546& 2,\!7121 \\\hline \end{array} \end{gathered}[/math]

Последний интервал неопределенности удовлетворяет условию окончания процесса:


[math]11,\!0125-1,\!0027343751= 0,\!009765625< \varepsilon= 0,\!01.[/math]

Полученное приближенное решение приведено в табл. 7.4.


Пример 7.6. Найти приближенное решение краевой задачи [math]y''+y=-x,~0 \leqslant x \leqslant 1,[/math] [math]y(0)=0,~ y(1)=0[/math] методом стрельбы.


▼ Решение

В поставленной задаче


[math]\begin{gathered}a=0,\quad b=1,\quad p(x)=0,\quad q(x)=-1,\quad f(x)=-x\\[2pt] \alpha_0=1,\quad \beta_0=0,\quad A=0,\quad \alpha_1=1,\quad \beta_1=0,\quad B=0. \end{gathered}[/math]

Точное решение найдено в примере 7.1.


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


1. Решим задачу Коши с начальными условиями, соответствующими случаю [math]\beta_0=0\colon[/math]


[math]\begin{gathered}y''+y=-x,\quad 0 \leqslant x \leqslant 1,\\ y(0)=\frac{A}{\alpha_0}=0,\quad y'(0)=\eta. \end{gathered}[/math]

при двух значениях параметра [math]\eta\colon\, \eta^{(0)}=1,~ \eta^{(1)}=-1[/math]. Для этого применим явный метод Эйлера с шагом [math]h=0,\!01[/math]. Исходное уравнение с учетом обозначений [math]z=y'[/math] предварительно запишем в форме системы


[math]\begin{gathered}y'=z,\quad y(0)=0,\\ z'=-y-x,\quad z(0)=\eta. \end{gathered}[/math]

Численные результаты приведены в табл. 7.5.


[math]\begin{array}{|c|c|c|c|c|c|c|} \multicolumn{7}{r}{\mathit{Table~7.5}} \\\hline \eta& \multicolumn{2}{c|}{\eta^{(0)}=1} & \multicolumn{2}{c|}{\eta^{(1)}=-1}& \multicolumn{2}{c|}{\eta^{(1)}=0,\!18249}\\\hline x_{i}& \widehat{y}(x_{i})& \widehat{z}(x_{i})& \widehat{y}(x_{i})& \widehat{z}(x_{i})& \widehat{y}(x_{i})& \widehat{z}(x_{i}) \\\hline 0&0&1&0&-1&0&0,\!18249 \\\hline 0,\!1&9,\!976\cdot 10^{-2}&0,\!9910&9,\!9999\cdot 10^{-2}&-1&1,\!81074\cdot 10^{-2}&0,\!17774 \\\hline 0,\!2&0,\!1977231&0,\!9620968&-0,\!2&-1&3,\!51523\cdot 10^{-2}&0,\!16008 \\\hline 0,\!3&0,\!2919084&0,\!9135469&-0,\!3&-1&4,\!99637\cdot 10^{-2}&0,\!13138 \\\hline 0,\!4&0,\!3803712&0,\!8458201&-0,\!4&-1&6,\!13916\cdot 10^{-2}&9,\!13343\cdot 10^{-2} \\\hline 0,\!5&0,\!4612217&0,\!7595744&-0,\!5&-1&6,\!83188\cdot 10^{-2}&4,\!03417\cdot 10^{-2} \\\hline 0,\!6&0,\!5326446&0,\!6556531&-0,\!6&-1&0,\!06967\cdot 10^{-2}&-2Д1013\cdot 10^{-2} \\\hline 0,\!7&0,\!5929167&0,\!5350776&-0,\!7&-1&6,\!44322\cdot 10^{-2}&-9,\!23912\cdot 10^{-2} \\\hline 0,\!8&0,\!6404248&0,\!399037&-0,\!8&-1&5,\!16459\cdot 10^{-2}&-0,\!17285 \\\hline 0,\!9&0,\!6736817&0,\!2488741&-0,\!9&-1&3,\!04335\cdot 10^{-2}&-0,\!261608 \\\hline 1,\!0&0,\!691341&8,\!6077\cdot 10^{-2}&-1&-1&-8,\!22125\cdot 10^{-2}&-0,\!35786 \\\hline \end{array}[/math]

2. Запишем функцию


[math]\Phi(\eta)= \alpha_1\cdot y(b,\eta)+ \beta_1\cdot y'(b,\eta)-B=1\cdot y(1,\eta)+0-0= y(1,\eta).[/math]

Найдем значения [math]\Phi(\eta^{(0)})= y(1;1)= 0,\!691341[/math] и [math]\Phi(\eta^{(1)})= y(1;-1)=-1[/math], а затем


[math]\eta^{(2)}= \eta^{(1)}-\frac{\Phi(\eta^{(1)})\cdot \bigl[\eta^{(1)}-\eta^{(0)}\bigr]}{\Phi(\eta^{(1)})-\Phi(\eta^{(0)})}=-1-\frac{-1\cdot (-2)}{-1,\!69134}= 0,\!18249.[/math]

3. Приближенное решение исходной задачи определяется решением задачи Коши с [math]\eta^{(2)}= 0,\!18249[/math] (две правые колонки в табл. 7.5). Сравнивая его с решением примера 7.1, можно сделать вывод о близости данного решения к точному.




Метод дифференциальной прогонки


Отличие метода дифференциальной прогонки от вышеизложенного метода стрельбы заключается в том, что решаются вспомогательные задачи Коши не для исходного дифференциального уравнения, а для других уравнений меньшего порядка. Рассмотрим его применение для решения линейной краевой задачи (7.3),(7.4).


Методика решения линейной краевой задачи


Первый случай: [math]\beta_0\ne0[/math].


Прямая прогонка. Решить две независимые друг от друга задачи Коши относительно [math]Z_1(x)[/math] и [math]Z_2(x)[/math] на отрезке [math][a,b]\colon[/math]


[math]\begin{aligned}&Z'_1=-Z_1^2-p(x)Z_1+q(x),\quad Z_1(a)=-\frac{\alpha_0}{\beta_0}\,;\\ &Z'_2=-Z_2\cdot \bigl[Z_1+p(x)\bigr]+f(x),\quad Z_2(x)=\frac{A}{\beta_0}\,. \end{aligned}[/math]

Обратная прогонка. Решить задачу Коши


[math]y'=Z_1(x)y+ Z_2(x),\quad a \leqslant x \leqslant b;\qquad y(b)=\frac{B-\beta_1Z_2(b)}{\alpha_1+ \beta_1Z_1(b)}\,.[/math]

Второй случай: [math]\alpha_0\ne0[/math].


Прямая прогонка. Решить две независимые друг от друга задачи Коши:


[math]\begin{aligned}& u'_1=-u_1^2q(x)+ u_1p(x)+1,\quad a \leqslant x \leqslant b,& & u_1(a)=-\frac{\beta_0}{\alpha_0}\,;\\ & u'_2=-u_1(x)\cdot \bigl[u_2q(x)+ f(x)\bigr],\quad a \leqslant x \leqslant b,& & u_2(a)=-\frac{A}{\alpha_0}\,.\end{aligned}[/math]

Обратная прогонка. Решить задачу Коши


[math]u_1(x)y'=y-u_2(x),\quad a \leqslant x \leqslant b;\qquad y(b)=\frac{Bu_1(b)+ \beta_1u_2(b)}{\beta_1+ \alpha_1u_1(b)}\,.[/math]

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


Пример 7.7. Найти приближенное решение краевой задачи [math]y''+(x+1)y'-2y=2,~ 0 \leqslant x \leqslant 1,[/math] [math]y(0)-y'(0)=-1,[/math] [math]y(1)=4[/math] методом дифференциальной прогонки. При прямой и обратной прогонке использовать явный метод Эйлера с шагом [math]h=0,\!02[/math].


▼ Решение

В поставленной краевой задаче


[math]\begin{gathered}a=0,\quad b=1,\quad p(x)=x+1,\quad q(x)=2,\quad f(x)=2,\\[2pt] \alpha_0=1,\quad \beta_0=-1,\quad A=-1,\quad \alpha_1=1,\quad \beta_1=0,\quad B=4.\end{gathered}[/math]

Так как [math]\beta_0\ne0[/math], воспользуемся соотношениями для первого случая.


На этапе прямой прогонки решим две задачи Коши на отрезке [math][0;1]\colon[/math]


[math]\begin{gathered}Z'_1=-Z_1^2-Z_1(x+1)+2,\quad Z_1(0)=-\frac{\alpha_0}{\beta_0}=-\frac{1}{-1}=1;\\ Z'_2=-Z_2\cdot \bigl[Z_1+x+1\bigr]+2,\quad Z_2(0)=\frac{A}{\beta_0}=\frac{-1}{-1}=1. \end{gathered}[/math]

На этапе обратной прогонки решим задачу Коши


[math]y'=Z_1(x)y+ Z_2(x),\quad 0 \leqslant x \leqslant 1;\qquad y(1)=\frac{B-\beta_1 Z_2(b)}{\alpha_1+ \beta_1Z_1(b)}= \frac{4-0}{1+0}=4.[/math]

Результаты вычислений представлены в табл. 7.6 (в целях экономии места численные значения приведены в точках, отстоящих друг от друга на 0,1).


[math]\begin{array}{|c|c|c|c|} \multicolumn{4}{r}{\mathit{Table~7.6}}\\\hline \begin{matrix}\text{Znacheniya}\\ \text{argumenta}\end{matrix}& \multicolumn{2}{c|}{\text{Pryamaya progonka}}& \begin{matrix}\text{Obratnaya}\\ \text{progonka}\end{matrix}\\\hline x_{i}& \widehat{Z}_1(x_{i})& \widehat{Z}_2(x_{i})& \widehat{y}(x_{i})\\\hline 0,\!0& 1,\!000000& 1,\!000000& 0,\!9856163\\\hline 0,\!1& 0,\!996238& 0,\!996238& 1,\!196328\\\hline 0,\!2& 0,\!984706& 0,\!984706& 1,\!427262\\\hline 0,\!3& 0,\!967711& 0,\!967711& 1,\!678383\\\hline 0,\!4& 0,\!947030& 0,\!947030& 1,\!949667\\\hline 0,\!5& 0,\!924000& 0,\!924000& 2,\!241091\\\hline 0,\!6& 0,\!899611& 0,\!899611& 2,\!552642\\\hline 0,\!7& 0,\!574584& 0,\!574584& 2,\!884312\\\hline 0,\!8& 0,\!849434& 0,\!849434& 3,\!236095\\\hline 0,\!9& 0,\!824526& 0,\!824526& 3,\!607991\\\hline 1,\!0& 0,\!8001108& 0,\!8001108& 4,\!000000\\\hline \end{array}[/math]

Если при прямой прогонке использовать явный метод Эйлера с шагом [math]h=0,\!01[/math], а при обратной — метод Эйлера-Коши, получается более точное решение.




Метод конечных элементов


Метод конечных элементов нашел широкое практическое применение при решении уравнений с частными производными. Здесь описывается его применение к решению линейной краевой задачи (7.3),(7.4) для обыкновенного дифференциального уравнения, в которой искомая функция зависит от одной переменной.


Суть метода конечных элементов заключается в следующем:


а) область определения функции [math]y(x)[/math], удовлетворяющей дифференциальному уравнению и краевым условиям, разбивается на конечное число подобластей, называемых конечными элементами;

б) в каждом элементе фиксируется конечное число узловых точек, общих с узловыми точками соседних элементов, в которых должны быть найдены узловые значения искомой функции;

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

г) для нахождения коэффициентов применяется метод взвешенных невязок (метод Галеркина).


Разобьем отрезок [math][a,b][/math] на [math]n[/math] конечных элементов (в рассматриваемой задаче ими являются отрезки) [math]e_1,e_2,\ldots,e_n[/math] с [math](n+1)[/math] нумерованными узлами [math]x_1,x_2,\ldots,x_{n+1}[/math] (рис. 7.3).


Каждому нумерованному узлу [math]x_{i},~ i=\overline{1,n+1}[/math], поставим в соответствие кусочно-линейную глобальную базисную функцию [math]\varphi_{i}(x)[/math], принимающую в данном узле значение единица, а в остальных — нулевое значение (рис. 7.4):


[math]\varphi_{i}(x)= \left\{\! \begin{aligned}& \frac{x-x_{i-1}}{x_{i}-x_{i-1}}, & & x_{i-1} \leqslant x \leqslant x_{i},\\ &\frac{x_{i+1}-x}{x_{i+1}-x_{i}}, & & x_{i} \leqslant x \leqslant x_{i+1},\\ &0, & & x< x_{i-1},\,x>x_{i+1},\end{aligned}\right.\quad i=\overline{1,n+1}.[/math]
(7.30)

Для обеспечения унифицированного определения глобальных базисных функций необходимо ввести в рассмотрение дополнительные узлы [math]x_{0}[/math] и [math]x_{n+2}[/math]. Тогда глобальные базисные функции [math]\varphi_1(x),\, \varphi_{n+1}(x)[/math] будут определены на отрезках [math][x_0,x_2][/math] и [math][x_{n},x_{n+2}][/math] соответственно. Значения функций [math]\varphi_1(x),\, \varphi_{n+1}(x)[/math] на отрезках [math][x_0,x_1][/math] и [math][x_{n+1}, x_{n+2}][/math], примыкающих к отрезку [math][a,b][/math], в дальнейших расчетах не используются.


Используя глобальные базисные функции, будем искать решение краевой задачи в виде (где [math]\widehat{y}_{i}[/math] — значения искомой функции в узлах [math]x_{i},~ i=\overline{1,n+1}[/math] (коэффициенты))


[math]\widehat{y}(x)= \sum\limits_{i=1}^{n+1} \widehat{y}_{i}\cdot \varphi_{i}(x),[/math]
(7.31)

Требуется найти такие значения [math]\widehat{y}_{i},~ i=\overline{1,n+1}[/math], чтобы выполнялось условие (7.23) (см. метод Галеркина). Функция, аппроксимирующая искомое решение на каждом конечном элементе, называется функцией элемента. Для элемента [math]e_{i}[/math] с узлами [math]x_{i}[/math] и [math]x_{i+1}[/math] определим локальные базисные функции (рис. 7.5):


[math]\begin{aligned}& \varphi_{i}^{e_{i}}(x)= \frac{x_{i+1}-x}{x_{i+1}-x_{i}}\,, & & x_{i} \leqslant x \leqslant x_{i+1},\\ & \varphi_{i+1}^{e_{i}}(x)= \frac{x-x_{i}}{x_{i+1}-x_{i}}\,, & & x_{i} \leqslant x \leqslant x_{i+1}, \end{aligned}[/math]
(7.32)

где нижний индекс у базисной функции соответствует номеру узла, а верхний -номеру конечного элемента. На каждом элементе [math]e_{i},~ i=\overline{1,n}[/math], обе локальные базисные функции линейны, причем в узлах этого элемента одна из них равна единице, т.е. [math]\varphi_{i}^{e_{i}}(x_{i})=1[/math] и [math]\varphi_{i+1}^{e_{i}}(x_{i+1})=1[/math]. Функция элемента е, может быть выражена с помощью локальных базисных функций и узловых значений [math]\widehat{y}_{i}[/math] и [math]\widehat{y}_{i+1}[/math] по формуле


[math]\widehat{y}^{e_{i}}(x)= \begin{cases}\widehat{y}_{i}\cdot \varphi_{i}^{e_{i}}(x)+ \widehat{y}_{i+1}\cdot \varphi_{i+1}^{e_{i}}(x),& x_{i} \leqslant x \leqslant x_{i+1},\\ 0,& x<x_{i},\end{cases} i=\overline{1,n}[/math]
(7.33)

Тогда приближенное решение (7.31) краевой задачи можно представить в форме


[math]\widehat{y}(x)= \sum\limits_{i=1}^{n} \widehat{y}^{e_{i}}(x).[/math]
(7.34)

В силу свойств локальных базисных функций на элементе [math]e_{i}[/math] функция элемента является линейной и принимает в узле [math]x_{i}[/math] значение [math]\widehat{y}_{i}[/math], а в узле [math]x_{i+1}[/math] значение [math]\widehat{y}_{i+1}[/math] (рис. 7.5). Если в краевой задаче заданы условия первого рода, т.е. [math]y(a)=A,~ y(b)=B[/math], то при рассмотрении элемента [math]e_1[/math] следует положить [math]\widehat{y}_1=A[/math], так как [math]x_1=a[/math], а при рассмотрении элемента [math]e_n[/math] положить [math]\widehat{y}_{i+1}=B[/math], поскольку [math]x_{n+1}=b[/math]. Тогда краевые условия первого рода для решения, записанного в виде (7.31) или эквивалентном ему (7.34), выполняются автоматически. Для учета условий второго и третьего рода применяется обобщенный подход (см. пример 7.8). В целом аппроксимация (7.31) является кусочно-линейной. На рис. 7.6 показано применение формулы (7.31) для аппроксимации некоторой произвольной функции [math]y=y(x)[/math].


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


Пример 7.8. Найти приближенное решение краевой задачи [math]y''-y=0,~ 0 \leqslant x \leqslant 1,[/math] [math]y(0)=0,~ y(1)=1[/math] методом конечных элементов, полагая число конечных элементов, равным трем.


▼ Решение

В поставленной задаче


[math]\begin{gathered}a=0,\quad b=1,\quad p(x)\equiv 0,\quad q(x)=1,\quad f(x)\equiv 0,\\[2pt] \alpha_0=1,\quad \beta_0=0,\quad A=0,\quad \alpha_1=1,\quad \beta_1=0,\quad B=1. \end{gathered}[/math]

Точное решение этой задачи (см. пример 7.1):


[math]y(x)=\frac{e}{e^2-1}\,e^x+ \frac{e}{1-e^2}\,e^{-x}.[/math]

Применим метод Галеркина. Для этого запишем условие (7.23):


[math]\int\limits_{0}^{1} \bigl[\widehat{y}\,''(x)-\widehat{y}(x) \bigr]\varphi_{j}(x)\,dx=0,\quad j=\overline{1,n+1}.[/math]
(7.35)

Заметим, что базисные функции непрерывны, но в силу кусочной линейности имеют разрывные производные, а при использовании метода Галеркина для дифференциального уравнения второго порядка требуется, чтобы подынтегральные выражения в (7.35) были по крайней мере кусочно-непрерывны. Поэтому рассмотрим так называемую слабую формулировку метода Галеркина, в которой требования, предъявляемые к базисным функциям, ослабляются.


Проинтегрируем по частям первое слагаемое в (7.35):


[math]\int\limits_{0}^{1} \widehat{y}\,''(x)\cdot \varphi_{j}(x)\,dx= \left.{\varphi_{j}(x) \frac{d\widehat{y}(x)}{dx}}\right|_{0}^{1}-\int\limits_{0}^{1} \frac{d\widehat{y}(x)}{dx}\cdot \frac{d \varphi_{j}(x)}{dx}\,dx\,.[/math]

Тогда (7.35) запишется в форме


[math]-\int\limits_{0}^{1}\! \left[\frac{d\widehat{y}(x)}{dx}\cdot \frac{d \varphi_{j}(x)}{dx}+ \widehat{y}(x)\cdot \varphi_{j}(x)\right]\!dx+ \left.{\varphi_{j}(x) \frac{d \widehat{y}(x)}{dx}}\right|_{0}^{1}=0.[/math]
(7.36)

Из (7.36) видно, что теперь достаточно, чтобы базисные функции [math]\varphi_{i}(x)[/math] принадлежали классу [math]C([0;1])[/math] непрерывных функций.


Задача заключается в следующем: требуется найти такой вектор [math]\widehat{y}= \bigl(\widehat{y}_1,\ldots,\widehat{y}_{n+1}\bigr)^T[/math] чтобы функция (7.31) удовлетворяла условию (7.36). В этом заключается слабая формулировка метода Галеркина.


Для решения задачи подставим (7.31) в (7.36):


[math]\int\limits_{0}^{1}\! \left[\frac{d \sum\limits_{i=1}^{n+1} \widehat{y}_{i}\varphi_{i}(x)}{dx}\cdot \frac{d \varphi_{j}(x)}{dx}+ \varphi_{j}(x) \sum\limits_{i=1}^{n+1} \widehat{y}_{i}\varphi_{i}(x)\right]\!dx= \left.{\varphi_{j}(x)\cdot \frac{d}{dx}\sum\limits_{i=1}^{n+1} \widehat{y}_{i}\varphi_{i}(x)}\right|_{0}^{1}.[/math]
(7.37)

Полученное равенство запишем в матричной форме:


[math]K\cdot \widehat{y}=f,[/math]
(7.38)

где [math]K[/math] — матрица размера [math](n+1)\times (n+1)[/math], элемент которой определяется по формуле


[math]K_{j,i}= \int\limits_{0}^{1}\! \left[\frac{d\varphi_{j}(x)}{dx}\cdot \frac{d\varphi_{i}(x)}{dx}+ \varphi_{j}(x)\cdot \varphi_{i}(x)\right]\!dx,\quad j=\overline{1,n+1},~ i=\overline{1,n+1},[/math]
(7.39)

а [math]f=\bigl(f_1,\ldots,f_{n+1}\bigr)^T[/math] вектор, компоненты которого находятся следующим образом:


[math]f_{j}= \left.{\varphi_{j}(x)\cdot \frac{d}{dx}\sum\limits_{i=1}^{n+1} \widehat{y}_{i}\varphi_{i}(x)}\right|_{0}^{1},\quad j=\overline{1,n+1}.[/math]
(7.40)

Проанализируем вклад элемента [math]e_{i}[/math] с узлами [math]x_{i},\,x_{i+1}[/math] (см. рис. 7.5). Единственными отличными от нуля глобальными базисными функциями для элемента [math]e_{i}[/math] будут [math]\varphi_{i}(x)[/math] и [math]\varphi_{i+1}(x)[/math]. Поэтому будем использовать соответствующие локальные базисные функции [math]\varphi_{i}^{e_{i}}(x)[/math] и [math]\varphi_{i+1}^{e_{i}}(x)[/math]. С учетом (7.32) и (7.39) определим элементы матрицы конечного элемента [math]e_{i}\colon[/math]


[math]\begin{gathered}K_{i,i}^{e_{i}}= \int\limits_{x_{i}}^{x_{i+1}}\! \left[\left(\frac{d\varphi_{i}^{e_{i}}(x)}{dx}\right)^2+ \bigl(\varphi_{i}^{e_{i}}(x)\bigr)^2\right]\!dx\,,\\ K_{i+1,i}^{e_{i}}= \int\limits_{x_{i}}^{x_{i+1}}\! \left[\frac{d\varphi_{i+1}^{e_{i}}(x)}{dx}\cdot \frac{d\varphi_{i}^{e_{i}}(x)}{dx}+ \varphi_{i+1}^{e_{i}}(x)\cdot \varphi_{i}^{e_{i}}(x)\right]\!dx\,,\\ K_{i+1,i+1}^{e_{i}}= \int\limits_{x_{i}}^{x_{i+1}}\! \left[\left(\frac{d\varphi_{i+1}^{e_{i}}(x) }{dx}\right)^2+ \bigl(\varphi_{i+1}^{e_{i}}(x) \bigr)^2\right]\!dx\,,\\ K_{i,i+1}^{e_{i}}= \int\limits_{x_{i}}^{x_{i+1}}\! \left[\frac{d\varphi_{i}^{e_{i}}(x)}{dx}\cdot \frac{d\varphi_{i+1}^{e_{i}}(x)}{dx}+ \varphi_{i}^{e_{i}}(x)\cdot \varphi_{i+1}^{e_{i}}(x)\right]\!dx= K_{i+1,i}^{e_{i}}. \end{gathered}[/math]
(7.41)

В результате можно записать матрицу элемента [math]e_{i}[/math] в форме


[math]K^{i}= \begin{pmatrix}0& \cdots& 0 & 0 & \cdots& 0\\ 0&\cdots& K_{i,i}^{e_{i}}& K_{i,i+1}^{e_{i}}& \cdots & 0\\ 0&\cdots& K_{i+1,i}^{e_{i}}& K_{i+1,i+1}^{e_{i}}& \cdots& 0\\ \vdots& & \vdots& \vdots& & \vdots \end{pmatrix}\!.[/math]
(7.42)

Матрица [math]K[/math] системы (7.38) получается суммированием матриц [math]K^{i},~ i=\overline{1,n}[/math] Этот процесс называется ансамблированием элементов.




Алгоритм применения метода конечных элементов


1. Разбить отрезок [math][a,b][/math] на [math]n[/math] конечных элементов [math]e_1,\ldots, e_n[/math] и представить решение в виде (7.31).


2. Для каждого конечного элемента составить матрицу [math]K^{i},~ i=\overline{1,n}[/math], по формуле (7.42), элементы которой вычисляются согласно (7.41).


3. Сформировать матрицу [math]K[/math] в результате суммирования матриц [math]K^{i}[/math], вектор [math]f[/math] с учетом (7.40) и составить систему (7.38).


4. Учесть краевые условия и решить систему (7.38). В результате найти значения [math]\widehat{y}_1,\ldots, \widehat{y}_{n+1}[/math] и выписать приближенное решение по формуле (7.31).


Теперь применим описанную методику к решению поставленной задачи.


1. Положим [math]n=3[/math] при равномерной сетке. Тогда [math]h=x_{i+1}-x_{i}= \frac{1}{3}= \text{const}[/math], a глобальные базисные функции, определяемые по формулам (7.30), изображены на рис. 7.7.


Решение задачи ищется в форме (где [math]\widehat{y}_1, \widehat{y}_2, \widehat{y}_3, \widehat{y}_4[/math] подлежат определению)


[math]\widehat{y}(x)= \widehat{y}_1\cdot \varphi_1(x)+ \widehat{y}_2\cdot \varphi_2(x)+ \widehat{y}_3\cdot \varphi_3(x)+ \widehat{y}_4\cdot \varphi_4(x).[/math]
(7.43)

2. Составим матрицу [math]K^{i}[/math] для каждого элемента [math]e_1,e_2,e_3[/math]. С этой целью вычислим отдельные элементы матрицы по формулам (7.41). Для конечного элемента ех[math]e_1[/math]получим


[math]\begin{aligned}K_{1,1}^{e_1}&= \int\limits_{x_1}^{x_2}\! \left[\left(\frac{d \varphi_1^{e_1}(x)}{dx} \right)^2+ \bigl(\varphi_1^{e_1}(x) \bigr)^2\right]\!dx= \int\limits_{0}^{1\!\not{\phantom{|}}\,\,3}\! \left(\left[\frac{d}{dx}\frac{x_2-x}{x_2-x_1}\right]^2+ \left(\frac{x_2-x}{x_2-x_1}\right)^2\right)\!dx=\\ &=\int\limits_{0}^{1\!\not{\phantom{|}}\,\,3}\! \left[9+ 9\!\left(\frac{1}{3}-x\right)^2\right]\!dx= \left.{\left[9x-\frac{9}{3}\! \left(\frac{1}{3}-x\right)^2\right]}\right|_{0}^{1\!\not{\phantom{|}}\,\,3}= \frac{28}{9}\,;\\[4pt] K_{1,2}^{e_1}&= \int\limits_{x_1}^{x_2}\! \left[\frac{d \varphi_1^{e_1}(x)}{dx}\cdot \frac{d \varphi_2^{e_1}(x)}{dx}+ \varphi_1^{e_1}(x)\cdot \varphi_2^{e_1}(x)\right]\!dx=\\ &= \int\limits_{0}^{1\!\not{\phantom{|}}\,\,3}\! \left[\frac{d}{dx}\! \left(\frac{x_2-x}{x_2-x_1}\right)\cdot \frac{d}{dx}\! \left(\frac{x-x_1}{x_2-x_1}\right)+ \frac{x_2-x}{x_2-x_1}\cdot \frac{x-x_1}{x_2-x_1}\right]\!dx=\\ &= \int\limits_{0}^{1\!\not{\phantom{|}}\,\,3}\! \left[-3\cdot3+ 9\! \left(\frac{1}{3}-x\right)\!(x-0)\right]\!dx=-\frac{53}{18}\,;\\[4pt] &\quad K_{2,1}^{e_1}= K_{1,2}^{e_1};\quad K_{2,2}^{e_1}=K_{1,1}^{e_1}.\end{aligned}[/math]

Здесь нижние индексы соответствуют связям узлов для элемента, указанного в верхнем индексе. В результате для конечного элемента [math]e_1[/math] получаем


[math]K^1= \begin{pmatrix}\dfrac{28}{9}&-\dfrac{53}{18}&0&0\\[9pt]-\dfrac{53}{18}& \dfrac{28}{9}&0&0\\[8pt] 0&0&0&0\\ 0&0&0&0 \end{pmatrix}[/math]

Так как сетка равномерная, дифференциальное уравнение с постоянными коэффициентами и базисные функции "одинаковые", то для конечных элементов е2,е3 в Решаемой задаче аналогично имеем


[math]K^2=\begin{pmatrix}0&0&0&0\\[5pt] 0&\dfrac{28}{9}&-\dfrac{53}{18}&0\\[9pt] 0&-\dfrac{53}{18}& \dfrac{28}{9}&0\\[8pt] 0&0&0&0 \end{pmatrix}\!,\qquad K^3= \begin{pmatrix} 0&0&0&0\\ 0&0&0&0\\[5pt] 0&0& \dfrac{28}{9}&-\dfrac{53}{18}\\[9pt] 0&0&-\dfrac{53}{18}& \dfrac{28}{9}\end{pmatrix}\!.[/math]

3. Складывая матрицы элементов [math]e_1,\,e_2,\,e_3[/math], находим результат ансамблирования:


[math]K= \begin{pmatrix} \dfrac{28}{9}&-\dfrac{53}{18}&0&0\\[9pt]-\dfrac{53}{18}& \dfrac{56}{9}&-\dfrac{53}{18}&0\\[9pt] 0&-\dfrac{53}{18}& \dfrac{56}{9}&-\dfrac{53}{18}\\[9pt] 0&0&-\dfrac{53}{18}& \dfrac{28}{9}\end{pmatrix}\!.[/math]

По формуле (7.40) с учетом (7.43) определим компоненты вектора / правой части системы (7.38):


[math]f_1= \left.{\varphi_1(x)\cdot \frac{d\widehat{y}(x)}{dx}}\right|_{0}^{1}=\left.{-\frac{d \widehat{y}(x)}{dx}}\right|_{x=0}[/math], поскольку [math]\varphi_1(1)=0[/math] и [math]\varphi_1(0)=0[/math];


[math]f_2= \left.{\varphi_2(x)\cdot \frac{d\widehat{y}(x)}{dx}}\right|_{0}^{1}=0[/math], так как [math]\varphi_2(1)=0[/math] и [math]\varphi_2(0)=0[/math];


[math]f_3= \left.{\varphi_3(x)\cdot \frac{d\widehat{y}(x)}{dx}}\right|_{0}^{1}=0[/math], так как [math]\varphi_3(1)=0[/math] и [math]\varphi_3(0)=0[/math];


[math]f_4= \left.{\varphi_4(x)\cdot \frac{d\widehat{y}(x)}{dx}}\right|_{0}^{1}=\left.{\frac{d \widehat{y}(x)}{dx}}\right|_{x=0}[/math], поскольку [math]\varphi_4(1)=1[/math] и [math]\varphi_4(0)=0[/math];


С учетом полученных результатов запишем систему (7.38):


[math]\begin{pmatrix} \dfrac{28}{9}&-\dfrac{53}{18}&0&0\\[9pt]-\dfrac{53}{18}& \dfrac{56}{9}&-\dfrac{53}{18}&0\\[9pt] 0&-\dfrac{53}{18}& \dfrac{56}{9}&-\dfrac{53}{18}\\[9pt] 0&0&-\dfrac{53}{18}& \dfrac{28}{9}\end{pmatrix}\!\cdot\! \begin{pmatrix}\widehat{y}_1\\[6pt] \widehat{y}_2\\[6pt] \widehat{y}_3\\[6pt] \widehat{y}_4\end{pmatrix}= \begin{pmatrix} \left.{-\dfrac{d \widehat{y}(x)}{dx}}\right|_{x=0}\\[6pt] 0\\[6pt] 0\\[6pt] \left.{\dfrac{d \widehat{y}(x)}{dx}}\right|_{x=1} \end{pmatrix}\!.[/math]
(7.44)

Из краевых условий [math]y(0)=0,~ y(1)=1[/math] следует, что [math]\widehat{y}_1= y(0)=0,~ \widehat{y}_4= y(1)=1[/math]. Тогда в системе (7.44) можно исключить первое и четвертое уравнения, положив в остальных [math]\widehat{y}_1=0,~ \widehat{y}_4=1[/math]. В итоге получим систему


[math]\begin{pmatrix}\dfrac{56}{9}&-\dfrac{53}{18}\\[9pt]-\dfrac{53}{18}& \dfrac{56}{9} \end{pmatrix}\!\cdot\! \begin{pmatrix}\widehat{y}_2\\[6pt] \widehat{y}_3\end{pmatrix}= \begin{pmatrix}0\\[6pt] \dfrac{53}{18}\end{pmatrix}\!.[/math]

Отсюда [math]\widehat{y}_2=0,\!2885;~ \widehat{y}_3=0,\!6088[/math]. Точные значения [math]y(x_2)= y(1\!\!\not{\phantom{|}}\,3)=0,\!2889;[/math] [math]y(x_3)= y(2\!\!\not{\phantom{|}}\,3)= 0,\!6102[/math]. Приближенное решение задачи имеет вид


[math]\widehat{y}(x)= 0,\!2885\cdot \varphi_2(x)+ 0,\!6088\cdot \varphi_3(x)+ \varphi_4(x).[/math]

Замечание. В случае краевых условий второго или третьего рода следует воспользоваться более общей схемой метода Галеркина с учетом невязки краевых условий, содержащих производные. Например, рассмотрим задачу [math]y''-y=0,[/math] [math]y(0)=0,~ y'(1)=1[/math]. Вместо (7.35) используем следующее условие:


[math]\int\limits_{0}^{1} \bigl[\widehat{y}\,''(x)-\widehat{y}(x)\bigr]\varphi_{j}(x)\,dx+ \bigl[\widehat{y}\,'(1)-1\bigr]\cdot \widetilde{\varphi}_{j}(1)=0,\quad j=\overline{1,n+1},[/math]
(7.45)

где [math]\widetilde{\varphi}_{j}(x)=0,~ j=\overline{1,n+1}[/math] — весовые функции, задаваемые в общем случае независимо от функций [math]\varphi_{j}(x)=0,~ j=\overline{1,n+1}[/math]. Как и ранее, краевое условие первого рода на левом конце может быть выполнено автоматически. Далее интегрируем по частям:


[math]\int\limits_{0}^{1}\! \left[\frac{d \widehat{y}(x)}{dx}\cdot \frac{d \varphi_{j}(x)}{dx}+ \widehat{y}(x)\cdot \varphi_{j}(x)\right]\!dx+ \left.{\varphi_{j}(x)\frac{d \widehat{y}(x)}{dx} }\right|_{0}^{1}+ \left.{\left[\widetilde{\varphi}_{j}(x)\left(\frac{d \widehat{y}(x)}{dx}-1\right)\right]}\right|_{x=1}=0.[/math]

Базисные функции [math]\widetilde{\varphi}_{j}(x),~ j=\overline{1,n+1}[/math], следует подбирать так, чтобы члены, содержащие краевые условия с производными, и члены с производными первого порядка, возникающими в той же точке в процессе интегрирования по частям, уничтожились. Положим [math]\widetilde{\varphi}_{j}(x)=-\varphi_{j}(x),[/math] [math]j=\overline{1,n+1}[/math]. Тогда имеем


[math]\int\limits_{0}^{1}\! \left[\frac{d \widehat{y}(x)}{dx}\cdot \frac{d \varphi_{j}(x)}{dx}+ \widehat{y}(x)\cdot \varphi_{j}(x)\right]\!dx= \left.{-\varphi_{j}(x)\frac{d \widehat{y}(x)}{dx} }\right|_{x=0}+ \varphi_{j}(1),\quad j=\overline{1,n+1}.[/math]

Полагая [math]n=3[/math] и рассуждая аналогично случаю краевых условий первого рода с учетом равенств


[math]\varphi_1(0)=1,~ \varphi_2(0)=0,~ \varphi_3(0)=0,~ \varphi_4(0)=0,\qquad \varphi_1(1)=0,~ \varphi_2(1)=0,~ \varphi_3(1)=0,~ \varphi_4(1)=0,[/math]

получаем систему

[math]\begin{pmatrix} \dfrac{28}{9}&-\dfrac{53}{18}&0&0\\[9pt]-\dfrac{53}{18}& \dfrac{56}{9}&-\dfrac{53}{18}&0\\[9pt] 0&-\dfrac{53}{18}& \dfrac{56}{9}&-\dfrac{53}{18}\\[9pt] 0&0&-\dfrac{53}{18}& \dfrac{28}{9}\end{pmatrix}\!\cdot\! \begin{pmatrix}\widehat{y}_1\\[6pt] \widehat{y}_2\\[6pt] \widehat{y}_3\\[6pt] \widehat{y}_4\end{pmatrix}= \begin{pmatrix} \left.{-\dfrac{d \widehat{y}(x)}{dx}}\right|_{x=0}\\[6pt] 0\\[6pt] 0\\[6pt]1 \end{pmatrix}\!.[/math]

Краевое условие [math]y(0)=0[/math] на левом конце учитывается вычеркиванием первого уравнения и приравниванием [math]\widehat{y}_1=0[/math] в остальных уравнениях.


Часовой пояс: UTC + 4 часа [ Летнее время ]


Яндекс.Метрика

Copyright © 2010-2016 MathHelpPlanet.com. All rights reserved