Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Методическое пособие 644

.pdf
Скачиваний:
5
Добавлен:
30.04.2022
Размер:
3.09 Mб
Скачать

трапеций действительно выше точности и явного, и неявного метода Эйлера.

Таблица 6

i

 

0

1

2

3

4

5

 

 

 

 

 

 

 

 

 

xi

 

0

0,2

0,4

0,6

0,8

1,0

Явный метод Эйлера

1

1

1,008

1,04

1,115

1,26

Неявный метод Эйлера

1

1,008

1,041

1,122

1,587

1,61

Метод трапеций

1

1,004

1,024

1,079

1,191

1,408

Точное решение

 

 

 

 

 

 

x3

 

1

1,003

1,022

1,075

1,186

1,396

y x exp

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

 

 

 

 

 

 

 

 

 

 

Задачи для самостоятельной работы

 

 

5.1.

Найти

частное решение дифференциального уравне-

ния y 2 y x2 ,

соответствующее начальному условию y(0) 1, яв-

ным

методом Эйлера на отрезке 0;1 с шагом h 0,1.

Построить

таблицу и график приближённого решения.

 

 

5.2.

Найти

частное решение дифференциального уравне-

ния y 2 y x2 ,

соответствующее начальному условию y(0) 1, не-

явным методом Эйлера на отрезке 0;1 с шагом h 0,1.

Построить

таблицу и график приближённого решения.

 

 

5.3. Используя метод трапеций, составить таблицу приближен-

ных

значений

интеграла

дифференциального

уравнения

y 0, 2x 3y2 , удовлетворяющего начальным условиям y(0) 0, 2 на отрезке 0;0,5 с шагом h 0,1. Все вычисления вести с четырьмя десятичными знаками и свести в таблицу.

5.4. Вычислить тремя методами: явным методом Эйлера, трапеций и неявным методом Эйлера ‒ интеграл дифференциального

61

уравнения y x y при начальном условии

y(0) 1

на отрезке

0; 0,5 с шагом интегрирования h 0,1.

 

 

5.5. Используя методы явный и неявный Эйлера и

трапеций,

составить таблицу приближенных значений интеграла дифференци-

ального уравнения y xy 0,5y, удовлетворяющего начальным ус-

ловиям y(0) 1 на отрезке 0; 1 с шагом h 0,1. Все вычисления вести с тремя десятичными знаками и свести в таблицу.

6. КРАЕВЫЕ ЗАДАЧИ ДЛЯ ОБЫКНОВЕННЫХ ДИФФЕРЕНЦИАЛЬНЫХ УРАВНЕНИЙ

Будем рассматривать линейные краевые задачи второго порядка:

y p x y q x y

 

f x

 

x a,b ;

(6.1)

0 y a 1 y a A;

 

(6.2)

0 y b 1 y b B.

 

(6.3)

Коэффициенты 0 ,

0 , 1, 1

удовлетворяют условиям:

 

 

 

 

 

0

 

 

 

 

 

 

 

 

 

 

 

0,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

0

 

 

 

 

 

1

 

 

0.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Функции p p x ,

q q x ,

 

f

 

f x

выбираются таким образом,

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

В зависимости от краевых условий краевые задачи делят: а) на первую краевую 1 1 0 ;

б) вторую краевую 0 0 0 ; в) третью краевую или смешанную (6.2) – (6.3).

Как известно, точное (аналитическое) решение краевых задач вызывает еще большие трудности, чем решение задачи Коши. Отсюда

62

и повышенный интерес и большое разнообразие приближенных методов решения.

Классификация приближенных методов решения краевых задач для ОДУ:

1‒ методы сведения к задаче Коши (пристрелки, дифференциальной прогонки, редукции);

2‒ метод конечных разностей;

3‒ метод балансов или интегро-интерполяционный метод;

4‒ метод коллокации;

5‒ проекционные методы (моментов, Галеркина);

6‒ вариационные методы (наименьших квадратов, Ритца);

7проекционно-разностные методы (метод конечных элементов).

Методы 4 ‒ 6 приводят к приближенному решению в виде функции заданного семейства (линейной комбинации некоторой системы линейно независимых функций).

Методы 1 ‒ 3 и 7 генерируют таблицы численных значений приближенного решения.

Разберем подробно наиболее часто используемые численные методы.

6.1. Метод конечных разностей

Идея метода конечных разностей (МКР) решения краевых задач состоит в следующем: вместо производных в дифференциальном уравнении используются их конечно-разностные аппроксимации. Эта идея уже применялась при построении методов решения задачи Коши. При построении дискретных аппроксимаций краевых дифференциальных задач нужно стремиться увязать две цели: хорошее качество аппроксимации и эффективное и устойчивое решение получающихся при этом алгебраических систем.

Рассмотрим применение МКР для линейной краевой задачи (6.1) – (6.3). Сначала на отрезке a, b вводится сетка с шагом

h

b a

, где N 1 число узлов. На этой сетке определяются се-

N

 

функции pi p xi , qi q xi , fi f xi , отвечающие

точные

функциональным коэффициентам данного дифференциального урав-

63

нения, а также yi y xi при условии,

что y x

точное решение

краевой задачи.

 

 

Фиксируя в уравнении (6.1) x xi

с учетом обозначений, при-

ходим к равенству:

 

 

y xi pi y xi qi y xi

fi ,

(6.4)

где i 0, N .

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

и порядком аппроксимации:

 

 

 

 

 

 

 

 

 

 

 

 

y xi

 

y xi 1 y xi 1

 

O h2

;

 

 

 

 

 

2h

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

y xi

 

y xi 1 y xi 1

O

h ;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

h

 

 

 

 

 

 

 

y xi

 

y xi y xi 1

 

O h ;

h

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

y xi

y xi 1 2 y xi y xi 1

 

O h2 .

 

 

 

 

 

 

 

 

 

 

 

 

 

h2

 

 

 

 

 

 

 

Будем использовать

 

формулы вида O h2 , подставляя их в

уравнение (6.4), получим:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

y xi 1 2 y xi y xi 1

 

pi

y xi 1 y xi 1

qi y xi fi O h2 .

 

h2

 

 

 

 

 

 

 

2h

 

 

 

 

 

 

Это уравнение является точным отражением дифференциального уравнения (6.1), но в нем имеется неопределенное слагаемое O h2 .

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

yi 1

2 yi yi 1

p

yi 1 yi 1

q y f

.

 

 

 

 

h2

i

2h

i i i

 

 

 

 

 

Приведем это уравнение к классической форме трехточечного разностного уравнения второго порядка:

64

 

 

 

 

 

Ai yi 1 Bi yi Ci yi 1 Fi ,

i 1, N 1.

(6.5)

Видим, что в системе уравнений (6.5) (N 1) уравнение, а неизвестных (N 1) . Два недостающих уравнения получают на основе краевых условий (6.2) и (6.3).

Будем рассматривать два варианта аппроксимации производных первого порядка:

y a

y x1 y x0

O h

3y x0 4 y x1 y x2

O h2 ;

 

 

 

 

 

 

 

 

 

 

h

 

 

 

 

 

 

 

 

 

 

 

2h

 

 

 

 

 

 

 

 

y b

 

y xN y xN 1

O h

 

y xN 2 4 y xN 1 3y xN

O h2 .

 

 

 

 

 

 

 

 

 

 

h

 

 

 

 

 

 

 

 

 

 

 

 

 

2h

 

 

 

 

 

 

В случае аппроксимации первого порядка относительно шага

получим:

 

 

 

 

 

 

 

 

 

 

y x1 y x0

 

 

 

 

 

 

а) для условия (6.2)

0 y x0 1

O h A;

 

 

 

h

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

б) для условия (6.3)

0 y xN

1

y xN y xN 1

O h B .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

h

 

 

 

 

 

 

 

 

Переходя к

 

yi ,

получим

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

1

x 1

y A,

 

 

 

0

1

x

N

 

1 y

N 1

B.

 

 

h

 

0

h

1

 

 

 

 

 

h

 

 

h

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

В случае аппроксимации второго порядка O h2 имеем: а) для условия (6.2)

0 y x0 1 3y x0 4 y x1 y x2 O h2 A; 2h

б) для условия (6.3)

0 y xN 1 y xN 2 4 y xN 1 3y xN O h2 B . 2h

Откуда

65

 

 

 

 

31

y

21

y 1

y

 

A,

 

0

 

 

2

 

 

 

 

0

h

1

2h

 

 

 

 

 

 

2h

 

 

 

 

 

 

 

2

 

 

 

 

3

 

1

yN 2

1

yN 1

 

0

 

1

yN B.

2h

h

2h

 

 

 

 

 

 

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

Пример. Методом конечных разностей найти решение краевой задачи:

y xy 0,5

y

1,

y(2)

2 y (2)

1,

 

 

 

2,15.

 

 

 

x

 

y(2,3)

Решение. Разбиваем отрезок [2; 2,3] с шагом h 0,1

на части.

Получаем четыре узловые точки x0 2;

x1 2,1;

x2 2, 2;

x3 2,3.

Узлы x0

и x3 являются граничными,

x1 и

x2 внутренними.

Данное

уравнение во внутренних

точках

заменим

конеч-

но-разностным уравнением:

 

yi 1 2 yi

yi 1

 

x

 

yi 1 yi 1

0,5

yi

 

 

1

(i 1, 2).

 

 

 

 

 

 

 

 

 

 

 

h2

 

 

 

 

 

 

 

 

i

 

2h

 

 

 

 

 

 

 

 

 

xi

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Из краевых условий составим конечно-разностные уравнения в

граничных точках:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

y

2

 

4 y

3y

 

 

 

 

 

 

 

 

 

 

 

 

y0

2

 

 

1

 

 

 

 

 

 

0

1 (i

0),

 

 

 

 

 

2h

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2,15

 

 

 

(i 3).

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

y3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Данная задача сводится к решению системы уравнений:

 

y 2

y2 4 y1 3y0

1,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

 

 

 

 

 

 

 

2h

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

y

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

2 y y

0

 

 

 

y

2

y

0

 

 

 

 

 

y

 

 

 

 

 

 

 

1

 

 

 

 

 

2,1

 

 

 

 

 

 

 

0,5

1

 

1,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0,01

 

 

 

 

 

 

 

 

0, 2

 

 

 

 

 

 

 

2,1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

y

3

2 y

2

 

 

y

 

 

 

y

3

 

y

y

2

 

 

 

 

 

 

 

 

 

 

 

 

1

 

2, 2

 

 

 

 

 

 

 

1

0,5

 

 

 

1,

 

 

 

0,01

 

 

 

 

 

 

 

0, 2

 

 

 

2, 2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2,15.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

y3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

66

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

 

 

2,9 y0 4 y1 y2 0,1,

 

 

 

 

 

 

 

 

 

841y1

464,1y2

4, 2,

 

 

 

 

375,9 y0

 

 

 

 

391,6 y

881y

2

488, 4 y

3

4, 4,

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

y3 2,15.

 

 

 

 

 

 

 

 

Решая эту систему методом Гаусса, получим решение, пред-

ставленное табл. 7:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Таблица 7

 

 

 

 

 

 

 

 

 

 

 

 

x

 

2,0

2,1

 

2, 2

 

 

2,3

 

 

y

 

2,235

2,185

 

2,158

 

2,150

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

6.2. Метод прогонки

 

Итак, для решения уравнения вида

 

 

 

 

 

Ai yi 1 Bi yi Ci yi 1 Fi , i 1, N 1

(6.6)

предполагают, что существует зависимость yi i yi 1 i , т.е.

трех-

точечное уравнение второго порядка сводят к двухточечному уравнению первого порядка.

Тогда

 

 

 

 

 

 

 

 

yi 1

i 1 yi i 1

(6.7)

подставим в уравнение (6.6), получим

 

Ai yi 1 Bi yi Ci i 1 yi Ci i 1 Fi .

 

Откуда

 

 

 

 

 

 

 

y

 

Ai

y

 

Ci i 1 Fi

.

 

 

 

 

 

i

Bi Ci i 1

i 1

 

Bi Ci i 1

 

 

 

 

 

Сравнивая полученное соотношение с (6.7), можно записать:

67

 

 

 

 

Ai

 

Ci i 1 Fi

 

 

 

 

 

i

 

;

; i 1, N 1.

 

 

 

 

 

 

Bi Ci i 1

i

Bi Ci i 1

 

 

 

 

 

 

 

 

 

 

 

 

Чтобы воспользоваться этими формулами, необходимо найти 0

и 0

на основе соотношения y0 0 y1 0 ,

т.е. 0 и 0 можно найти

из краевого условия на левой границе.

 

 

 

 

В нашем случае два вида аппроксимации условий:

1.

 

 

 

 

1 y 1 y A y

 

 

1

 

y

 

Ah

,

 

0

 

 

 

 

 

 

 

 

 

0

 

 

 

1

 

 

 

0

 

 

1

0h

1

1

0h

 

 

 

 

 

 

2h

 

h

 

 

 

 

 

 

 

 

 

 

 

 

таким образом,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

 

 

 

1

 

;

 

0

 

 

 

Ah

,

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

0h 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0h

 

 

 

 

 

 

 

 

2.

 

 

 

 

3 1

y

 

2 1

y 1

y

 

A.

 

 

 

 

 

 

 

0

 

 

2

 

 

 

 

 

 

 

 

 

 

 

0

 

 

h

1

2h

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2h

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Из этого отношения необходимо исключить y2 , воспользуемся уравнением (6.5) при i 1:

A y

 

B y C y F ,

 

A

1

 

 

p1

; B

 

2

q ;

 

 

h2

 

 

 

 

 

1

2

1 1 1 0

1

 

 

1

 

 

 

2h

 

1 h2

1

C

1

 

p1

; F f ;

y

2

 

F1

 

 

B1

y

C1

y .

 

 

 

 

 

1

 

h2

2h

1

1

 

 

A1

 

A1

1

 

A1

0

 

 

 

 

 

 

 

 

 

 

 

Подставляя это в краевое условие, получим:

 

 

 

 

31

y

21

y

1

 

F1

 

B1

y

C1

y

 

A;

 

0

 

 

 

 

 

 

0

 

 

 

 

0

 

1

 

 

 

A1

1

A1

 

 

 

 

 

 

2h

 

h

 

2h A1

 

 

 

 

 

 

 

 

 

 

3 C

 

2

 

 

B

 

 

F

 

y

 

 

1

 

1 1

 

y

 

 

1

 

1 1

 

A

1 1

;

 

 

 

 

 

 

 

 

 

 

0

 

0

 

 

 

 

1

 

 

 

 

 

2 A1h

 

 

 

 

 

 

2h 2 A1h

 

 

h

 

 

2 A1h

 

 

y0

 

 

 

1B1 41A1

 

y1

 

 

 

2hAA1 1F1

.

20hA1 31A1 1C1

20hA1 31A1

1C1

 

 

 

 

 

 

 

68

Таким образом,

в случае O h2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

 

1B1 4 1A1

 

;

0

 

 

2hAA1 1F1

.

 

2 0hA1 3 1A1 1C1

 

2 0hA1

3 1A1 1C1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Когда 0 и 0 определили,

можно находить i

и i ,

i 1, N 1:

 

 

 

 

 

 

i

 

 

 

Ai

;

 

Ci i 1 Fi

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Bi Ci i 1

 

 

 

i

 

Bi Ci i 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Далее находят

yi

по формулам

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

yi i yi 1 i ,

i N 1, N 2,...,0 :

 

 

 

 

1) с погрешностью аппроксимации O(h)

 

 

 

 

 

 

 

 

0

 

 

 

 

 

 

 

yN 1 B;

 

yN 1 N 1 yN N 1;

 

 

 

1

yN

1

 

 

 

 

 

 

 

h

 

 

 

 

h

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

 

 

 

 

 

 

N 1 yN

 

B;

 

 

 

 

 

1

yN

1

 

1 N 1

 

 

 

 

 

 

 

 

h

 

 

 

 

h

 

 

 

 

h

 

 

 

 

 

 

 

yN

 

1 N 1 hB

 

O(h);

 

 

h 0

 

 

 

 

 

 

1 1 N 1

 

 

 

2) с погрешностью аппроксимации O(h2 )

 

 

 

 

 

2

 

 

 

3

 

 

 

1

yN 2

1

yN 1

0

1

yN B.

 

2h

h

2h

 

 

 

 

 

 

 

Воспользуемся системой уравнений, полученной после аппроксимации дифференциального уравнения (6.5) при i = N 1.

 

 

 

 

 

AN 1 yN BN 1 yN 1 CN 1 yN 2 FN 1,

 

 

 

 

A

 

1

 

pN 1

; B

 

2

q

N 1

; C

N

1

 

1

 

pN 1

; F

f

N 1

;

 

 

 

 

 

 

 

N 1

 

h2

 

2h

 

N 1

 

 

h2

 

 

 

 

h2

 

2h

N 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

y

N 2

 

FN 1

 

BN 1

y

N 1

 

AN 1

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

CN 1

 

CN 1

 

 

 

CN 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

69

Далее находят все у , I = N –1,1.

Таким образом, решение уравнения (6.5) описываемым способом, называемым методом прогонки, сводится к вычислениям по трем формулам:

1) нахождение прогоночных коэффициентов i и i :

 

i

 

Ai

;

Ci i 1 Fi

,

 

 

 

 

Bi Ci i 1

i

Bi Ci i 1

 

 

 

 

 

 

при i 1, N 1 это прямая прогонка;

2) вычисление yi по прогоночной формуле:

yi i yi 1 i , i N 1, N 2,...,0 – это обратная прогонка.

Из левого граничного условия находят 0 и 0 , yN находят из

правого граничного условия.

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

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

 

 

 

 

 

тойчивой, если

i

1 i 0, N 1.

Достаточные условия корректности и устойчивости прогонки:

 

 

 

 

 

 

 

 

 

 

Bi

 

Ai

 

Ci

i 1, N 1 и

0

1.

Задачи для самостоятельной работы

6.1.Методом конечных разностей найти решение краевой задачи

сшагом h 0,1:

1) y y 2 y x, x

y(0,7) 0,5,

2 y(1) 3y (1) 1, 2.

2)y xy 2 y x 1,

y(0,9) 0,5 y (0,9) 2,y(1, 2) 1.

70