Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Задачи Коши для дифференциальных уравнений высших порядков




Задача Коши для дифференциального уравнения n -го порядка

 

,                   (7.21)

 

           (7.22)

 

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

 

                      (7.23)

 

Учитывая (7.23) из уравнения (7.21) получим систему дифференциальных уравнений

                                     (7.24)

Начальные условия (7.22) для функций zl переписываются в виде

.                          (7.25)

Запишем для полученной системы метод Рунге-Кутта

.    (7.26)

Для вычисления коэффициентов Kl ,1, Kl ,2, Kl ,3 и Kl ,4 имеем следующие формулы:

 

Пример 7.5. Решить задачу Коши для дифференциального уравнения третьего порядка

 

,

Решение в Excel. Точное решение данной задачи известно . Преобразуем эту задачу с помощью замены  к задаче для системы уравнений:

 

 

Точным решением системы теперь будут функции

 

.

 

Выберем шаг h = 0,1. В программе Excel мы используем функции и алгоритм решения, созданные для решения примера 7.4.

Откроем файл примера 7.4 и внесем необходимые изменения. Результаты расчетов представлены в таблице 7.10.

1) Заменить функции f_1(), f_2() и f_3() на следующие:

 

Function f_1(ByVal x, ByVal y_1, ByVal y_2, ByVal y_3)

f_1 = 2 * x * y_1 / y_2

End Function

Function f_2(ByVal x, ByVal y_1, ByVal y_2, ByVal y_3)

f_2 = 8 * y_3 / (3 * y_2)

End Function

Function f_3(ByVal x, ByVal y_1, ByVal y_2, ByVal y_3)

f_3 = 3 * y_3 / y_1

End Function

 

Функции для вычисления коэффициентов Kl , I не изменяем.

2) Изменим начальные условия в ячейках B 3, C 3, D 3 на 0, 1, 0.

В столбце значений переменной xi вводим числа 0; 0,1; 0,2; …; 1.

В ячейках E 3, F 3, G 3 вводим соответственно формулы =SIN(A3), =COS(A3) и =-SIN(A3).

 

Таблица 7.10

 

A

B

C

D

E

F

G

1

h=

0,1

 

 

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

2

xi

y1i

y2i

y3i

y1=sinx

y2=cosx

y3=-sinx

3

0

0

1

0

0

1

0

4

0,1

0,099833

0,995004

-0,09983

0,09983

0,995

-0,099833

5

0,2

0,198669

0,980067

-0,19867

0,19867

0,98007

-0,198669

6

0,3

0,29552

0,955337

-0,29552

0,29552

0,95534

-0,29552

7

0,4

0,389418

0,921061

-0,38942

0,38942

0,92106

-0,389418

8

0,5

0,479425

0,877583

-0,47943

0,47943

0,87758

-0,479426

9

0,6

0,564642

0,825336

-0,56464

0,56464

0,82534

-0,564642

10

0,7

0,644217

0,764843

-0,64422

0,64422

0,76484

-0,644218

11

0,8

0,717356

0,696707

-0,71736

0,71736

0,69671

-0,717356

12

0,9

0,783326

0,621611

-0,78333

0,78333

0,62161

-0,783327

13

1

0,84147

0,540303

-0,84147

0,84147

0,5403

-0,841471

 

Сравнивая столбцы B и E, видим, что метод Рунге-Кутта дает хорошие приближения к значениям точного решения y1=sinx.

Краевые задачи для обыкновенных дифференциальных уравнений

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

1) Найти функцию u (x), которая удовлетворяет на отрезке [ a, b ] уравнению

,                                             (7.27)

а на концах отрезка условиям

 

u (a) = u (b) = 0.                                              (7.28)

 

Задача (7.27), (7.28) имеет следующее содержание. Между точками
x = a и x = b натянута упругая струна, находящаяся под действием внешней изгибающей нагрузки.   f (x) — величина нагрузки, а u (x) — прогиб струны в безразмерных единицах.

2) Двухточечная краевая задача для линейного дифференциального уравнения второго порядка

 

                              (7.29)

 

                                           (7.30)

 

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

Рассмотрим частный случай задачи (7.29), (7.30)

 

                              (7.31)

 

                                        (7.32)

 

Введем сетку: . Обозначим через ui приближенные значения u (x) в узлах сетки. Рассмотрим уравнение (7.31) во внутренних узлах  и заменим производную второго порядка разностной формулой (5.11):

 

.                                   (7.33)

 

Тогда из (7.31), (7.32) получим для определения ui систему линейных уравнений

 

                    (7.34)

 

Система (7.34) при p (x) ≥ 0 имеет решение. Доказательство этого утверждения можно найти в [1].

Система (7.34) представляет собой систему линейных уравнений с трехдиагональной матрицей

 

                    (7.35)

 

и для её решения применим метод прогонки, который фактически является методом исключения неизвестных Гаусса.

1. Прямой ход прогонки. Запишем первое уравнение (7.35) в виде

 

                      (7.36)

 

Подставив (7.36) во второе уравнение (7.35) и упростив выражения, увидим, что можно для ui получить формулы

 

(7.37)

 

Из последнего уравнения (7.35), учитывая (7.37) при , получим

 

                     (7.38)

 

2. Обратный ход прогонки. После вычисления прогоночных коэффициентов можно найти значения решения задачи. Формула (7.38) дает значение :

 

                                                      (7.39)

 

Остальные значения вычисляем в обратном порядке

 

                              (7.40)

 

Пример 7. 6. Решить краевую задачу методом прогонки

 

.

 

Решение в программе Excel. Выберем N = 10, т.е. шаг h = π/10 ≈ 0,31415926.

Составим таблицу значений аргумента x, функций p (x) и f (x), вычислим прогоночные коэффициенты и приближенные значения искомого решения по формулам (7.36) — (7.40). В таблице 7.11 приведен фрагмент листа Excel с результатами вычислений.

1) Заполним столбцы A 1: A 15, B 1: B 15 и строку A 4: H 4 как в таблице 7.11. При заполнении столбца значений переменной x можно ввести 0 в ячейку B 5, 3,1415926 в ячейку B 6, затем выделить B 5: B 6 и маркером заполнения протянуть до ячейки B 15.

2) Присвоим имена a, b и h ячейкам B 1, B 2, B 3 соответственно с помощью команды «Вставка — Имя — Присвоить».

Приведем содержимое для остальных ячеек, которые содержат формулы.

3) В столбце для значений p (x), т.е. в ячейках C 5: C 16 записываем единицы, так как p (x) = 1.

4) В диапазоне D 5: D 16 вводим формулу =-2*SIN(x),  так как
f (x) = – 2sin x. Для этого достаточно ввести эту формулу в ячейку D 5 и протянуть D 5 маркером заполнения до D 15.

5) В ячейку E 5 введем число 0, а в ячейку E 6 — формулу
=1/(2+C6*h^2-E5) и протянем ячейку E 6 маркером заполнения до E 13. В ячейку E 14 запишем число 0.

6) В ячейку F 5 введем число 0, в ячейку F 6 вводим формулу
=(a-D6*h^2)/(2+C6*h^2-E5), и в ячейку F 7 введём =(F6-D7*h^2)/(2+C7*h^2-E6) и протянем ячейку F7 маркером заполнения до F 14.

7) Вычислим решение. В ячейку G 14 введем =F14, в ячейку G 13 введем формулу =E13*G14+F13 и протянем G 13 вверх до ячейки G 6.

8) Для проверки правильности вычислений вычислим в столбце H 5: H 15 значения точного решения задачи . В ячейку H 5 введем формулу =sin(x) и протянем ячейку H 5 до H 15.

Как видим из таблицы, полученные приближенные значения имеют абсолютную погрешность не более 0,01.

Таблица 7.11

 

A

B

C

D

E

F

G

H

1

a=

0

 

 

 

 

 

 

2

b=

0

 

 

 

 

 

 

3

h=

0,31415926

 

 

 

 

 

 

4

i

x

p(x)

f(x)

alfa

beta

ui

sin(x)

5

0

0

1

0

0

0

 

0

6

1

0,31415926

1

-0,61803

0,476486

0,029064

0,310289

0,309017

7

2

0,62831852

1

-1,17557

0,616443

0,089439

0,590204

0,587785

8

3

0,94247778

1

-1,61803

0,674649

0,168077

0,812347

0,809017

9

4

1,25663704

1

-1,90211

0,702224

0,249857

0,954971

0,951057

10

5

1,5707963

1

-2

0,71609

0,320271

1,004116

1

11

6

1,88495556

1

-1,90211

0,723272

0,367423

0,954971

0,951057

12

7

2,19911482

1

-1,61803

0,727048

0,383239

0,812347

0,809017

13

8

2,51327408

1

-1,17557

0,72905

0,363988

0,590204

0,587785

14

9

2,82743334

1

-0,61803

0

0,310289

0,310289

0,309017

15

10

3,1415926

1

-1,1E-07

 

 

 

5,36E-08

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

Пример 7. 7. Решить краевую задачу методом прогонки

 

 

Решение в программе Excel. Выберем шаг h = 0,1, т.е. разделим отрезок [1, 2] на N = 10 частей. Откроем файл с решением примера 7.4 и внесем в таблицу изменения. Эти изменения не касаются столбцов E, F и G, в которых записаны формулы (7.27) — (7.31) метода прогонки.

Так как a = 2, b = 12 и h = 0,1, в ячейки B 1: B 3 вводим числа 2, 12 и 0,1.

Отметим те изменения, которые не видны явно в таблице 7.12.

В столбце для значений p (x), т.е. в ячейках C 5: C 16 записываем нули, так как p (x) = 0.

В ячейку D 5 вводим формулу =6*x+2,  так как f (x) = 6 x + 2, и протянем ячейку D 5 до D 15.

В ячейку H 5 введем формулу =x^3+x^2 и протянем ячейку H 5 до H 15.

Результаты приведены в таблице 7.12.

Таблица 7.12

 

A

B

C

D

E

F

G

H

1

a=

2

 

 

 

 

 

 

2

b=

12

 

 

 

 

 

 

3

h=

0,1

 

 

 

 

 

 

4

i

x

p(x)

f(x)

alfa

beta

ui

x^3+x^2

5

0

1

0

8

0

0

 

2

6

1

1,1

0

8,6

0,5

0,957

2,54100000

2,54100000

7

2

1,2

0

9,2

0,666667

0,576667

3,16800000

3,16800000

8

3

1,3

0

9,8

0,75

0,359

3,88700000

3,88700000

9

4

1,4

0

10,4

0,8

0,204

4,70400000

4,70400000

10

5

1,5

0

11

0,833333

0,078333

5,62500000

5,62500000

11

6

1,6

0

11,6

0,857143

-0,03229

6,65600000

6,65600000

12

7

1,7

0

12,2

0,875

-0,135

7,80300000

7,80300000

13

8

1,8

0

12,8

0,888889

-0,23378

9,07200000

9,07200000

14

9

1,9

0

13,4

0

10,469

10,46900000

10,46900000

15

10

2

0

14

 

 

 

12

 

Точное совпадение решения системы уравнений (7.34) со значениями решения краевой задачи (7.31), (7.32) объяснятся следующим обстоятельством. Разностная формула для производной второго порядка (7.33) дает точное значение (!) для кубических функций.





Поделиться с друзьями:


Дата добавления: 2018-10-14; Мы поможем в написании ваших работ!; просмотров: 1016 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Студенческая общага - это место, где меня научили готовить 20 блюд из макарон и 40 из доширака. А майонез - это вообще десерт. © Неизвестно
==> читать все изречения...

2308 - | 2259 -


© 2015-2024 lektsii.org - Контакты - Последнее добавление

Ген: 0.008 с.