Решение краевой задачи методом конечных разностей
Решение краевой задачи методом конечных разностей
Задание
Решить дифференциальное уравнение y'' - xy' + 2y = 4,
при y(0)=0, y(1)=2, n=5
Решение
Теоретическое
обоснование
Дифференциальное уравнение в общем
виде выглядит так:
y'' + P(x) y' +
Q(x) y = f(x)
для нашего исходного уравнения
находим:
P(x)= - x
Q(x)= 2
f(x)= 4
Так как в общем случае найти
аналитический вид функции y(x) в виде формулы
невозможно, сделаем упрощение: будем искать значение у в некоторой точке
xi. Разобьем интервал [xn; xk] на n-равных частей с шагом h:
h=
Используя обозначения y(xi) = yi, заменим y'(xi) и y''(xi) конечно-разностными выражениями для производных:
С помощью данных выражений для
производных заменим исходное дифференциальное уравнение на систему n-линейных уравнений относительно n-неизвестных:
i = 1,2,3,…, n -
1(x)= pi(x)= qi(x)= fi
+
pi +
qi yi = fi
умножим полученное уравнение на h2:
yi-1 + yi + yi+1 = fi
введем следующие обозначения:
Ai = ; Bi = ; Ci =
получаем следующее уравнение:
yi-1 - yi + yi+1 = fi
составляем систему (n-1) - уравнений:
x0: y0 =yn
x1: A1y0-C1y1+B1y2
=f1h22: A2y1-C2y2+B2y3
=f2h2
x3: A3y2-C3y3+B3y4
=f3h2
x4: A4y3-C4y4+B4y5
=f4h2
x5: y5 =yn
Получаем систему, которая имеет
трехдиагональную матрицу коэффициентов. При решении такой системы можно
применить метод прогонки.
Подставим во второе уравнение
системы yo из первого уравнения и выразим из полученного y1:
y1 = y2 + ,
тогда можно вывести следующие
коэффициенты:
a1 = ; b1 = ;
затем подставим в третье уравнение
системы выражение для y1 и выразим из этого
уравнения y2, проделав аналогичные
действия (n-1) раз, получим формулы для остальных неизвестных в общем виде:
ai = ; bi =
основное уравнение для выражения yi:
yi = aiyi+1 + bi
затем выполняем обратный ход
прогонки, вычисляя yi.
Практическая часть
1. Метод прогонки
Из исходных данных y(0)=0, y(1)=2, n=5 найдем шаг сетки h:
h = 0,2
дифференциальный
уравнение линейный
для заданного дифференциального
уравнения:
P(x)= - x
Q(x)= 2
f(x)= 4
далее рассчитываем коэффициенты А, В
и С:
Ai = 1 -
(-xi); Bi = 1+(-xi); Ci = 2-2
из исходных данных и полученных
результатов, построим таблицу следующих значений:
№ узла
|
Xi
|
p(x)
|
q(x)
|
f(x)
|
A
|
B
|
C
|
F
|
0
|
0
|
|
|
|
0
|
-1
|
0
|
1
|
0,2
|
-0,2
|
2
|
4
|
1,02
|
0,98
|
1,92
|
0,16
|
2
|
0,4
|
-0,4
|
2
|
4
|
1,04
|
0,96
|
1,92
|
0,16
|
3
|
0,6
|
-0,6
|
2
|
4
|
1,06
|
0,94
|
1,92
|
0,16
|
4
|
0,8
|
-0,8
|
2
|
4
|
1,08
|
0,92
|
1,92
|
0,16
|
5
|
1
|
|
|
|
0
|
0
|
-1
|
2
|
Система уравнений записывается в
виде:
Пользуясь полученными данными можно
рассчитать прогоночные коэффициенты: прямой ход:
a
|
b
|
0
|
0
|
0,510416667
|
-0,083333333
|
0,691061788
|
-0,177564487
|
0,791595942
|
-0,293242806
|
0,863787814
|
-0,447575628
|
0
|
2
|
Пользуясь формулой yi = aiyi+1 + bi и полученными прогоночными коэффициентами, сделаем обратный ход
прогонки для вычисления значений искомой функции:
Xi
|
Y
|
0
|
0
|
0,2
|
0,08
|
0,4
|
0,32
|
0,72
|
0,8
|
1,28
|
1
|
2
|
Полученные точки нанесем на
координатные оси:
Проверка:
0=0
,02*0-1,92*0,08+0,98*0,32=0,16
,04*0,08-1,92*0,32+0,96*0,72=0,16
,06*0,32-1,92*0,72+0,94*1,28=0,16
,08*0,72-1,92*1,28+0,92*2=0,16
=2
Аналитический метод:
Составим аналитическую модель
решения в виде y=ax2+bx+c
Для проверки возьмем точку (1; 2)
y'=4x
y''=4
Подставляя эти значения в формулу y'' - xy' + 2y = 4 получаем:
4-1*(4*1)+2*2=4 =>
4=4