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

Автор работы: Пользователь скрыл имя, 07 Мая 2013 в 23:35, курсовая работа

Описание работы

Приближённые методы возникли до появления ЭВМ и не утратили до сих пор своего значения. Это— методы коллокаций, наименьших квадратов, метод Галёркина, вариационные и проекционные методы. Приближенные методы состоят из аналитических методов решения ОДУ. Так метод коллокаций, а также схожий с ним метод Галеркина, подразумевают введение операторов для уравнения и краевых условий и выбор базисных функций, удовлетворяющих условию, дальнейшее решение производится по формулам, связывающим базисные функции с искомой функцией. Суть вариационных методов заключается в приведении краевой задачи к аналогичной вариационной задаче и ее последующем решении.

Содержание работы

Введение ………………………………………………………………………….2
Глава 1. Численные методы решения краевых задач для обыкновенных дифференциальных уравнений
1.1. Постановка задачи и основные положения………….……….…….5
1.2. Метод прогонки……………………………………………………...12
1.3. Конечно-разностный метод (метод сеток)………………..………..15
1.4. Метод стрельбы……………………………………..….…………….24
Глава 2. Практическое применение численных методов решения краевых задач для дифференциальных уравнений.
2.1. Метод стрельбы…………………………………………………….....29
2.2 . Конечно-разностный метод (метод сеток)………………………….33
2.3. Сравнение результатов вычислений………………………………....37
Заключение……………………………………………………………………….43
Список литературы…………………

Файлы: 1 файл

диплом переделаный.docx

— 2.68 Мб (Скачать файл)

,                 (5)

которому соответствует расширенная матрица

 

Здесь первое и последнее  уравнения, содержащие по два слагаемых, могут рассматриваться как краевые  условия. Знак «-» при коэффициенте взят для более удобного представления расчетных формул метода.

Требуется найти решение системы (5) методом исключения Гаусса.

Если к (5) применить алгоритм прямого хода метода Гаусса, то вместо получится :

.

Учитывая, что последний  столбец в этой матрице соответствует  правой части, и переходя к системе, включающей неизвестные, получаем рекуррентную формулу:

                                         (6)

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

 

и подставим в (6). Получим

 

Приводя эту формулу к  виду (6) и сравнивая полученное выражение с (6), получаем рекуррентные соотношения для :

                      (7)

Определение прогоночных коэффициентов по формулам (7) соответствует прямому ходу метода прогонки.

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

 

 

Тогда определяется :

т.е. (8)

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

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

Прямой ход.

  1. Вычислить (в (7) подставить ).
  2. Вычислить прогоночные коэффициенты по формулам (7).  

Обратный ход.

1. Найти 

2. Значения определить по формуле (6) :

 

Замечания.

1. Данный метод называется  методом скалярной прогонки, так  как при решении задачи на  каждом i-м шаге определяется скалярная величина

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

3. Достаточным условием  корректности и устойчивости  прогонки является условие преобладания  диагональных элементов в матрице А, в которой и ):

                                                        (9)

и в (9) имеет место строгое неравенство хотя бы при одном i.

 

1.3. Конечно- разностный метод (метод сеток)

Идея метода заключается  в сведении краевой задачи к решению  системы алгебраических уравнений  путем замены производных в дифференциальном уравнении и краевых условий  конечно-разностными соотношениями.

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

(10)

 

, [a,b] — заданные функции; — заданные числа.  Любой отрезок [a,b] на котором ищется решение краевой задачи, можно привести к отрезку [0;1] с помощью линейного преобразования . Действительно, тогда новая переменная . В результате без ограничения общности краевая задача (10) может быть решена сначала на отрезке [0;1], а затем это решение с помощью преобразования может быть записано на отрезке [a,b]. То же относится и к исследованию свойств полученного решения.

Утверждение 2 (о единственности решения краевой задачи (10)) [6].

Если функции  принадлежат классу [a,b] , на [0;1], то краевая задача (10) имеет единственное решение ].

Для решения задачи (10) применим метод сеток, получаемый путем аппроксимации первой и второй производных.

Введем равномерную сетку

 

где n — число отрезков разбиения.

Функции заменяются их проекциями на сетку , т.е. . Вместо точного решения отыскивается некоторое приближение .

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

 

Краевые условия для этой задачи аппроксимируются точно, т.е. и заменяются на и . После замены от дифференциальной задачи (10) переходим к разностной схеме:

 

 

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

                              (11)

 

где

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

 

Замечания.

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

(12)

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

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

                  (13)

 

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

 

 

которая решается на каждой итерации методом прогонки.

При выполнении условия итерации сходятся с линейной скоростью. [14]

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

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

                                         (14)

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

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

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

              (15)

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

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

  1. Задать сетку на отрезке [а,b] или сформировать ее из условий достижения требуемой точности.
  2. Используя аппроксимационные формулы

 

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

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

Пример 2. Найти приближенное решение краевой задачи

 

 

при используя первый способ аппроксимации краевых условий. Записать разностные схемы для второго и третьего способов при произвольном .

Решение.

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

  1. Так как, то сетка имеет вид

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

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

 

Применим первый способ аппроксимации  краевых условий с учетом условия на левом конце имеем

 

На правом конце  , и по второй из формул (14)

.

Тогда краевое условие  аппроксимируется выражением

 

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

 

 

 

Сравнивая первое уравнение  этой системы с рекуррентным соотношением метода прогонки (cм. пункт 1.2) характеризующим обратный ход, получаем .

После этого вычисляются  все последующие прогоночные коэффициенты по формулам:. Здесь соответствуют коэффициентам левой части полученной алгебраической системы, а — правой части.

Далее выполняется обратный ход:

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

i

             

y(x)

0

0

-1,0000

-1

0,00000

1,00000

0

1,8648

2,0000

1

1

1,72584

1

0,27415

1,37771

-0,37771

1,8648

1,8666

2

1

1,72584

1

0,27415

2,87240

2,87240

1,6277

1,5000

3

1

0,47640

-

1,04200

-

1,,21853

1,21853

1,0000


Таблица 1.1

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

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

.

Выразим из этого соотношения  и подставим в него вместо выражение определяемое исходным  дифференциальным уравнением:

 

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

 

Аналогично получается двухточечное алгебраическое уравнение при . Разложение у(х) в точке относительно точки по формуле Тейлора имеет вид

.

Выражая отсюда с учетом связи   следующей из исходного дифференциального уравнения, получаем

 

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

 

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

 

 

 

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

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

 

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

 

Алпроксимация производной в крайней правой точке по правосторонней формуле приводит к трехточечному алгебраическому уравнению:

 

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

 

 

 

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

 

 

1.4. Метод стрельбы

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

(16)

                                               (17)

где — нелинейная функция, обусловливающая нелинейность дифференциального уравнения (16).

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

(18)

где - параметр, равный тангенсу угла наклона интегральной кривой в точке х = а. Угол (параметр ) в процессе многократного решения краевой задачи должен принять такое значение, чтобы интегральная кривая «попала в цель», т.е. в точку (b, B) (рис.2,a). В общем случае полученное при некотором значении решение у(х;) не будет удовлетворять условию у(b;)=B  на правом конце отрезка.

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