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

Методы решения жестких и нежестких краевых задач

..pdf
Скачиваний:
8
Добавлен:
15.11.2022
Размер:
1.29 Mб
Скачать

И теперь уже в это проортонормированное построчно уравнение подставляем

Y (x ) K(x

1

1

x

)Y (x

) Y

 

(x

 

2

2

 

 

1

x

2

)

 

 

.

И получаем

U

 

[K(x

x

)Y (x

) Y

 

(x

1орто

 

 

1

2

2

 

 

1

x

2

)]

 

 

u1орто

,

U

 

K(x

x

)Y (x

) u

U

Y

 

(x

1орто

 

 

1

2

2

1орто

 

1орто

 

1

x

2

)

 

 

.

Или получаем краевые условия, перенесенные в точку

U 2Y (x2 ) u2 ,

x

2

 

:

где

U

2

U

1орто

K(x

x

)

 

 

1

2

 

и u2

u1орто U1ортоY

 

(x1

 

x2

)

.

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

U

Y (x

) u

 

2орто

2

2орто

Итак далее.

Ианалогично поступаем с промежуточными матричными краевыми условиями, переносимыми с правого края в рассматриваемую точку.

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

элемента для получения решения

 

)

Y (x

в рассматриваемой точке x :

U

 

 

 

орто

 

)

V

 

Y (x

 

 

 

 

 

орто

 

 

орто

орто

.

21

6.3. Формулы для вычисления вектора частного решения неоднородной системы дифференциальных уравнений

Вместо формулы для вычисления вектора частного решения неоднородной системы дифференциальных уравнений в виде [Гантмахер]:

 

 

x

 

Y (x x

) e Ax

 

e At F (t)dt

0

 

 

 

 

 

x0

 

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

Y

 

(x

 

 

j

 

 

 

x

) Y

 

(x

 

x

) K(x

 

 

j

j

i

 

 

 

i

 

x

j

 

xi ) K(xi

x

i

 

t)F (t)dt

.

Правильность приведенной формулы подтверждается следующим:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

j

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Y

 

(x j

xi ) exp(A(x j

 

xi ))

 

exp(A(xi

t))F (t)dt

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x j

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Y

(x

j

x

)

 

exp(A(x

j

x

))exp(A(x

i

t))F (t)dt

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

xi

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

j

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Y

 

(x j

xi )

 

exp(A(x j

xi

xi t))F (t)dt ,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

j

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Y

 

(x j

xi )

 

exp(A(x j

t))F (t)dt ,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

j

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Y

 

(x j xi ) exp(Axj )

 

exp( At)F (t)dt ,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

 

 

 

 

 

 

 

 

Y (x xi ) exp(Ax)

 

 

exp( At)F (t)dt ,

 

 

 

 

 

xi

что и требовалось подтвердить.

,

,

22

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

 

 

 

 

 

 

 

 

x

j

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Y

 

(x j xi ) Y

 

(x j

xi ) K (x j xi ) K (xi t)F (t)dt

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

j

 

 

 

 

 

 

 

 

 

 

 

 

 

 

K (x j

 

 

 

 

2

(xi t)

2

 

 

 

 

 

 

 

 

xi ) (E A(xi t) A

 

 

/ 2! ...)F (t)dt

 

 

 

 

 

x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

j

 

x

j

 

 

 

 

 

x

j

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

K (x j

xi )(E F (t)dt A (xi

t)F (t)dt A

2

/ 2!

(xi t)

2

F (t)dt ...).

 

 

 

 

 

x

i

 

x

i

 

 

 

 

 

x

i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Эта формула справедлива для случая системы дифференциальных

уравнений с постоянной матрицей коэффициентов

 

A =const.

Рассмотрим

вариант,

когда

шаги

интервала интегрирования

выбираются достаточно малыми, что позволяет рассматривать вектор F (t) на участке (x j xi ) приближенно в виде постоянной величины

F(xi ) constant,

что позволяет вынести этот вектор из под знаков

интегралов:

 

 

 

 

x

j

x

j

 

 

 

 

 

 

Y

 

(x j

xi ) K (x j

xi )(E dt A (

 

 

 

 

 

x

i

x

i

 

 

 

 

 

 

Известно, что при T=(at+b) имеем

 

 

 

 

 

x

j

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

xi t)dt A

2

/ 2! (xi

t)

2

dt ...)F (t).

 

 

 

 

 

 

 

x

i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

T

n

dt

 

1

T

n 1

const

(при n -1).

 

 

 

 

 

 

 

 

a(n 1)

 

 

 

 

 

 

В нашем случае имеем (b - t)n dt 1 (b - t)n 1 const (при n -1). (-1)(n 1)

Тогда получаем

x

j

 

 

 

 

1

 

 

 

 

 

 

 

 

(xi

t)

n

dt

(xi

 

 

 

x

 

 

 

 

 

n 1

i

 

 

 

 

 

 

 

 

 

 

 

 

 

x

j

 

)

n 1

.

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

(x j xi ) :

Y (x j xi ) K(x j xi ) (E A(xi x j ) / 2! A2 (xi x j )2 / 3! ...) (x j xi ) F(xi ).

23

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

осредненная

матрица

Ai

A(xi )

коэффициентов

системы

дифференциальных уравнений.

Если рассматриваемый участок интервала интегрирования не мал, то предлагаются следующие итерационные (рекуррентные) формулы.

Приведем формулы вычисления вектора частного решения,

например, Y

 

(x3

x0 ) на рассматриваемом участке (x3 x0 ) через вектора

 

 

 

 

 

 

 

 

 

 

 

 

частного решения Y

 

(x1 x0 ) , Y

 

(x2 x1 ),

Y

 

(x3

x2 )

соответствующих

 

 

 

 

 

 

 

 

 

 

подучастков

(x1

x0 ) ,

(x2 x1 ) , (x3 x2 ) .

 

 

 

 

 

Имеем

Y (x) K(x x0 )Y (x0 ) Y

 

(x x0 ) .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Также имеем формулу для отдельного подучастка:

 

 

 

 

 

 

 

 

x

j

 

 

 

 

 

 

 

 

 

 

 

 

 

Y

 

(x j

xi ) Y

 

(x j

xi ) K(x j

xi )

 

K(xi

t)F (t)dt .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

i

 

 

 

 

 

 

 

 

 

 

 

 

 

Можем записать:

 

 

 

 

Y (x ) K(x x )Y (x ) Y

(x x ) ,

 

 

 

 

 

 

 

 

 

 

 

 

 

1

1

 

0

 

0

 

 

 

 

1

0

 

 

 

 

 

 

 

 

 

 

 

 

Y (x2 ) K(x2

x1 )Y (x1 ) Y

 

(x2 x1 ) .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Подставим

 

Y (x1 ) в Y (x2 ) и получим:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Y (x

) K(x

 

x )[K(x x

)Y (x

) Y

 

(x

x )] Y

 

(x

 

 

x )

2

 

 

2

2

 

 

 

1

1

0

 

0

 

 

 

 

1

 

0

 

 

 

 

 

1

K(x

 

x )K(x

x

)Y (x

) K(x

 

x )Y

 

(x

x ) Y

 

(x

 

x )

2

2

 

 

 

2

 

1

 

1

0

0

 

 

 

1

 

 

 

1

0

 

 

 

 

 

 

1

Сравним полученное выражение с формулой:

.

Y (x

) K(x

 

x

)Y (x

) Y

 

(x

 

x

)

2

 

2

2

 

0

0

 

 

 

0

 

и получим, очевидно, что:

K(x

x ) K(x

x )K(x

x )

2

0

2

1

1

0

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

24

 

(x

x

) K(x

x )Y

Y

 

2

0

2

1

То есть вектора подучастков

 

(x

x

) Y

 

(x

 

 

 

 

 

2

 

 

 

1

 

0

 

 

 

 

 

Y

 

(x

x ),Y

 

(x

 

 

 

 

2

 

 

 

 

1

 

0

 

 

 

 

 

x1 ) .

x1 )

не просто

складываются друг с другом, а с участием матрицы Аналогично запишем Y (x3 ) K(x3 x2 )Y (x2 ) Y

Коши подучастка.

 

(x3

x2 )

и подставим

 

 

 

сюда формулу для Y

Y (x3 ) K (x3 x2

(x2

)[K

) и получим:

 

 

 

 

 

 

 

 

 

 

(x

2

x )K (x x

)Y (x

) K (x

2

x )Y (x x

) Y (x

2

x )]

 

1

1

0

0

 

1

1

0

 

1

Y (x3 x2 ) K (x3 x2 )K (x2 x1 )K (x1 x0 )Y (x0 )

K (x3 x2 )K (x2 x1 )Y (x1 x0 ) K (x3 x2 )Y (x2 x1 ) Y (x3 x2 ).

Сравнив полученное выражение с формулой:

Y (x

) K(x

x

)Y (x

) Y

 

(x

x

)

 

3

3

0

0

 

 

3

0

 

очевидно, получаем, что:

K(x

x ) K(x

x

)K(x

x )K(x

x )

3

0

3

2

2

1

1

0

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

 

(x

x

) K(x

x

)K(x

 

(x

x

) K(x

x

 

(x

 

(x

x

).

Y

x )Y

)Y

x ) Y

 

3

0

3

2

2

1

1

0

3

2

 

2

1

3

2

 

То есть именно так и вычисляется частный вектор – вектор частного решения неоднородной системы дифференциальных уравнений, то есть

так вычисляется, например, частный вектор

Y

 

(x3

x0 )

на

 

 

 

 

 

рассматриваемом участке

(x

x

)

3

0

 

через вычисленные частные вектора

Y (x1 x0 ) ,

(x2 x1 ) , (x3

 

(x

 

Y

 

2

 

x2 ) .

x1 )

,

Y (x3 x2 ) соответствующих подучастков

(x1

x0

)

,

6.4. Применяемые формулы ортонормирования

Взято из [Березин, Жидков]. Пусть дана система линейных алгебраических уравнений порядка n:

A x = b .

25

Здесь над векторами поставим черточки вместо их обозначения жирным шрифтом.

Будем рассматривать строки матрицы A системы как векторы:

ai =( ai1, ai2 ,…, ain ).

Ортонормируем эту систему векторов.

Первое уравнение системы A x =b делим на

n

2

 

a

k 1

1k

 

.

При этом получим:

с

x

+ с

x

2

11

1

12

 

 

 

где c

 

=

 

 

1k

 

 

+…+ с1n

a

 

1k

 

n

2

 

a

k 1

1k

 

x

n

= d

 

 

 

, d

1

=

 

 

 

1

,

c

=(

 

1

 

 

b

 

 

 

1

 

 

n

 

2

 

 

 

 

a

k 1

1k

 

c

 

, c

11

12

 

n

2

,

 

c

 

 

1k

k 1

,…,

=1.

c1n

),

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

с

21

x

+ с

22

x

2

+…+ с

2n

x

n

= d

2

,

c

2

=( c

21

, c

22

,…, c

2n

),

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

/

 

 

 

 

 

 

 

/

 

 

 

 

 

 

 

 

 

 

 

где c2k =

c2k

 

,

d 2

=

d 2

 

,

 

 

 

 

 

 

 

 

 

n

 

 

 

n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

/ 2

 

 

 

 

 

/ 2

 

 

 

 

 

 

 

 

 

 

 

 

 

c

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2k

 

 

 

 

c2k

 

 

 

 

 

 

 

 

 

 

 

 

 

k 1

 

 

 

 

 

 

 

k 1

 

 

 

 

 

 

 

 

 

 

/

 

 

 

 

 

 

 

 

 

 

/

 

 

 

 

 

 

,c1 ) d1 .

 

 

 

 

c2k

= a2k -( a2 , c1 ) c1k , d 2 =b2 -( a2

 

 

Аналогично поступаем дальше. Уравнение с номером i примет вид:

сi1 x1+ сi2 x2 +…+ сin xn = d i , ci =( ci1 , ci2 ,…, cin ),

где cik =

 

cik/

 

 

 

 

 

, d

i

=

 

 

 

 

 

 

n

 

 

 

 

 

cik/ 2

 

 

 

k 1

 

 

cik/ = aik -( ai ,

d /

i ,

n

cik/ 2 k 1

c1 ) c1k -( ai , c2 ) c2k -…-( ai ,ci 1 ) ci 1,k ,

26

d / i

= b

i

-(

ai

, c1 ) d1 -(

ai

, c2 ) d 2 -…-(

ai

,c

i 1

)

d

i

1

.

Процесс будет осуществим, если система линейных алгебраических уравнений линейно независима.

В результате мы придем к новой системе C x d , где матрица C будет

с ортонормированными строками, то есть обладает свойством

C C

T

E ,

 

 

 

где E - это единичная матрица.

 

 

 

27

Глава 7. Простейший метод решения краевых задач с жесткими обыкновенными дифференциальными

уравнениями без ортонормирования – метод «сопряжения участков интервала интегрирования», которые выражены матричными экспонентами

Идея преодоления трудностей вычислений путем разделения интервала интегрирования на сопрягаемые участки принадлежит д.ф.- м.н. профессору Ю.И. Виноградову, а реализация этой идеи через формулы теории матриц принадлежит к.ф.-м.н. А.Ю. Виноградову.

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

x0 , x1 , x2 , x3 .

Имеем краевые условия в виде:

UY (x

) u,

0

 

VY (x

) v.

3

 

Можем записать матричные уравнения сопряжения участков:

Y (x

) K(x

x )Y (x ) Y

 

(x

 

 

 

0

 

0

1

1

 

 

0

Y (x ) K(x

 

x

)Y (x

) Y

 

(x

 

 

 

 

1

1

2

2

 

 

1

Y (x

) K(x

 

x

)Y (x

) Y

 

(x

 

2

 

2

2

 

3

3

 

 

 

 

x1 )

x

)

2

 

x

)

3

 

,

,

.

Это мы можем переписать в виде, более удобном для нас далее:

EY (x

) K(x

x )Y (x ) Y

 

(x

 

 

 

0

 

0

1

1

 

 

0

EY (x ) K(x

x )Y (x

) Y

 

(x

 

 

 

1

1

2

2

 

 

1

EY (x

) K(x

 

x )Y (x ) Y

 

(x

 

2

 

2

2

 

3

3

 

 

 

 

x1 )

x

)

2

 

x

)

3

 

,

,

.

где E - единичная матрица.

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

28

U

 

0

 

0

 

 

 

0

 

 

 

Y (x

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

E

K (x

 

x )

0

 

 

 

0

 

 

 

0

 

 

0

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

Y (x

)

 

0

 

E

K (x

 

x

)

 

0

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

2

 

 

 

 

 

 

Y (x

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

0

 

E

 

 

K (x

 

x

)

 

2

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

3

 

 

Y (x

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

0

 

0

 

 

V

 

 

 

3

 

 

 

 

 

 

 

 

 

 

 

 

 

u

 

 

(x

x

)

Y

 

0

1

 

 

(x

x

)

Y

 

1

2

 

 

(x

x

)

Y

 

2

3

 

 

v

 

.

Эта система решается методом Гаусса с выделением главного элемента.

В точках, расположенных между узлами, решение находиться при помощи решения задач Коши с начальными условиями в i-ом узле:

Y (x) K(x xi )Y (xi ) Y (x xi ) .

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

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

29

Глава 8. Расчет оболочек составных и со шпангоутами простейшим методом «сопряжения участков интервала

интегрирования»

8.1. Вариант записи метода решения жестких краевых задач без ортонормирования – метода «сопряжения участков,

выраженных матричными экспонентами» – через положительные направления формул матричного интегрирования дифференциальных уравнений

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

x0 , x1 , x2 , x3 .

Имеем краевые условия в виде:

UY (x

) u,

0

 

VY (x

) v.

3

 

Можем записать матричные уравнения сопряжения участков:

Y (x ) K(x

x

)Y (x

) Y

 

(x

 

1

1

0

0

 

 

1

Y (x

) K(x

x )Y (x ) Y

 

(x

 

2

2

1

1

 

 

2

Y (x

) K(x

x

)Y (x

) Y

 

(x

 

3

3

2

2

 

 

3

 

x

0

)

 

 

x )

1

 

x

2

)

 

 

,

,

.

Это мы можем переписать в виде, более удобном для нас далее:

EY (x1 ) K(x1 x0 )Y (x0 ) Y

 

(x1

x0 ) ,

 

EY (x2 ) K(x2

x1 )Y (x1 ) Y

 

(x2

x1 ) ,

 

EY (x3 ) K(x3

x2 )Y (x2 ) Y

 

(x3

x2 ) .

 

где E - единичная матрица.

В итоге получаем систему линейных алгебраических уравнений:

30