Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
вычмат курсач.doc
Скачиваний:
9
Добавлен:
16.09.2019
Размер:
531.97 Кб
Скачать

3.2. Описание результатов

При решении данного дифференциального уравнения второго порядка с заданными краевыми условиями (1.3) методом конечных разностей, получены следующие результаты представленные в таблице 2. В столбце Х приведено разбиение отрезка [1.3; 1.8] с шагом h = 0.02, в столбце Y(X) – значение функции (n=1,…,26) в соответствующих точках , в столбце E - значения найденных абсолютных погрешностей.

В результате работы программы, листинг которой приведен в приложении 2, точность была достигнута при шаге 0.01, максимальная погрешность как видно из таблицы 2 при n=14.

Для достижения заданной точности Е = шаг h = 0.02 уменьшили в 2 раза, поскольку при шаге большем, чем h = 0.01 полученная точность не удовлетворяла заданной.

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

Таблица 2

X Y(X) E

1) 1.30 2.200000 0.00e+000

2) 1.32 2.029191 6.88e-007

3) 1.34 1.859823 1.33e-006

4) 1.36 1.692044 1.92e-006

5) 1.38 1.525996 2.45e-006

6) 1.40 1.361810 2.94e-006

7) 1.42 1.199608 3.36e-006

8) 1.44 1.039506 3.73e-006

9) 1.46 0.881607 4.04e-006

10) 1.48 0.726010 4.29e-006

11) 1.50 0.572804 4.48e-006

12) 1.52 0.422069 4.61e-006

13) 1.54 0.273879 4.68e-006

14) 1.56 0.128301 4.69e-006

15) 1.58 -0.014607 4.62e-006

16) 1.60 -0.154793 4.50e-006

17) 1.62 -0.292211 4.32e-006

18) 1.64 -0.426823 4.07e-006

19) 1.66 -0.558596 3.77e-006

20) 1.68 -0.687504 3.40e-006

21) 1.70 -0.813526 2.98e-006

22) 1.72 -0.936648 2.50e-006

23) 1.74 -1.056858 1.95e-006

24) 1.76 -1.174153 1.36e-006

25) 1.78 -1.288532 7.06e-007

26) 1.80 -1.400000 0.00e+000

4. Метод Галёркина

4.1. Описание метода

В данном методе решения дифференциального уравнения (1.1) с краевыми условиями (1.2) для удобства описания метода введем:

линейный дифференциальный оператор ,

линейные операторы

Тогда постановка задачи для дифференциального уравнения (1.1) с краевыми условиями (1.2) примет вид:

(4.1)

Решение краевой задачи (4.1) будем искать в виде суммы:

(4.2)

где ( i = 1, 2,..., n ) - конечная система базисных функций. Базисные функции должны составлять часть полного класса функций, то есть нет ни одной функции, которую нельзя было бы разложить по данной системе базисных функций.

Функция y(x) должна удовлетворять краевым условиям, то есть должно выполняться:

Краевые условия должны быть справедливы для любого набора констант , поэтому запишем:

По условию курсовой работы получим:

(4.3)

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

В качестве базисных функций выбираем:

При таком подборе базисных функций функция y(x), удовлетворяет краевым условиям, при любом наборе констант .

Введем следующее определение: невязка – разность между левой и правой частями уравнения:

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

Таким образом, для определения коэффициентов (i=1,2,...,n) приходим к системе линейных уравнений:

, (i=1,2,...,n)

или более подробно запишем данную систему в матричном виде:

= (4.4)

Система уравнений (4.4) разрешается относительно по методу Гаусса. По полученным значениям и функциям определяем столбец значений функции y(x) согласно формуле (4.2).

Определенные интегралы системы уравнений (4.4) можно вычислить по методу Симпсона, общая формула которого имеет вид:

где n - количество разбиений отрезка [a, b].

Общая погрешность метода Симпсона составляет где .

Подынтегральные функции в системе (4.4) имеют вид или Тогда из однородных краевых условий (4.3) получим или , что упрощает формулу Симпсона.

Чтобы достичь заданную точность вычисляем y(x) двумя способами: один раз с числом базисных функций i, другой раз с i+1, получая при этом значения более точные. Если расхождение полученных значений не превышает заданной точности Е = то выбранное число функций можно считать достаточным и полученная функция y(x) удовлетворяет заданной точности. Иначе увеличиваем i, пока не будет достигнута заданная точность.