Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Численное моделирование динамических систем, описываемых обыкновенными дифференциальными уравнениями. Учебное пособие
.pdf
Министерство науки и высшего образования Российской Федерации
НОВОСИБИРСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
__________________________________________________________________________
Д.В. ВАГИН
ЧИСЛЕННОЕ МОДЕЛИРОВАНИЕ
ДИНАМИЧЕСКИХ СИСТЕМ,
ОПИСЫВАЕМЫХ
ОБЫКНОВЕННЫМИ
ДИФФЕРЕНЦИАЛЬНЫМИ
УРАВНЕНИЯМИ
Утверждено Редакционно-издательским советом университета
в качестве учебного пособия
НОВОСИБИРСК
2019

УДК 519.62(075.8)
В 124
Рецензенты:
канд. техн. наук, ведущий инженер-программист
АО «Завод Экран» А.В. Волкова
д-р техн. наук, профессор М.Э. Рояк
Работа подготовлена на кафедре прикладной математики НГТУ
Вагин Д.В.
В 124 Численное моделирование динамических систем, описывае-
мых обыкновенными дифференциальными уравнениями: учебное пособие / Д.В.
Вагин. – Новосибирск: Изд-во НГТУ, 2019. –
63 с.
ISBN 978-5-7782-3941-8
В данном учебном пособии рассмотрены элементы теории из раздела численных методов решения систем обыкновенных дифференциальных уравнений. Пособие может быть рекомендовано как для самостоятельного изучения курса «Численное моделирование динамических систем, описываемых обыкновенными дифференциальными
уравнениями», так и для подготовки к выполнению практических заданий.
УДК 519.62(075.8)
ISBN 978-5-7782-3941-8 © Вагин Д.В., 2019
© Новосибирский государственный
технический университет, 2019

ВВЕДЕНИЕ
Для изучения поведения (эволюции) динамических систем необходимо решать описывающие их системы дифференциальных уравнений.
Сложные динамические системы описываются большими системами
нелинейных дифференциальных уравнений разного порядка. Для
большинства практических задач эти системы могут быть сведены к
системам обыкновенных дифференциальных уравнений. Для решения
подобных систем используются численные методы.
В данном учебном пособии
теории численного решения систем обыкновенных дифференциальных
уравнений. Среди них:
Явные и неявные схемы;
Аппроксимация, сходимость и устойчивость численных схем;
Одношаговые и многошаговые схемы;
Методы Эйлера, Рунге–Кутты и Адамса;
Методы типа «прогноз-коррекция»;
Системы обыкновенных дифференциальных уравнений;
Жесткие задачи.
Помимо этого
программ для имитационного моделирования сложных технических
систем.
рассматриваются основные принципы написания
рассматриваются основные элементы

1. ДИСКРЕТНАЯ ЗАДАЧА КОШИ
Рассмотрим задачу Коши:
Ее решением является функция
ния (1.1) с начальным условием (1.2) (нахождение функции
же называют интегрированием уравнения (1.1). Когда аналитическое
решение (1.1) невозможно или чрезвычайно сложно, прибегают к численному интегрированию.
Для использования численного метода необходимо перейти от непрерывной задачи, решением которой является функция
ленная для всех
()yt
заменена набором значений
ванных со значениями
шения непрерывной и дискретной задачи совпадают, то будет выполнено:
выполняется всегда, так как является исходным данным для обеих задач. Набор значений
сетки. Величины
сетки. Набор значений
ции
как
()yt y
11
()yt
(или сеточной функцией). Если
1, 2,..., ,nN
h
t
, а сеточная функция
то сетка
[, ]ttT
0
()yt y
,
22
htt
() (, ())yt ftyt
()yt y
00
tttt tT
iN
t
называется сеткой, а значения
i
y
i
t
i
,
, к дискретной задаче, в которой функция
yyyyy
iN
012
()
yt y
, ...,
называется равномерной и обозначается
y
i
NN
,
1nnn
называется дискретным аналогом функ-
– как
, (1.1)
[, ]ttT
()yt
. (1.2)
0
. Процесс решения уравне-
())yt
так-
()yt , опреде-
, , ,...,
012
...
. Отметим, что
1, 2,..., ,nN
hht t N
h
[1].
y
называются шагами
()/,
nN
, ассоцииро-
. То есть если ре-
()yt y
00
t
– узлами
i
0
для всех
4

Для того чтобы сформулировать дискретную задачу, необходимо
f
f
левую и правую части уравнения (1.1) заменить на их дискретные аналоги. Для упрощения выкладок ограничимся рассмотрением равномерных сеток. Отметим, что данное упрощение не нарушает общности
излагаемой теории.
Аппроксимируем
()yt
ностной схемы, включающей в себя
h
ции
:
y
1
( ) ( ... )
yt y y y
h
Полагается, что
(, ())
tyt
в общем виде может быть записана, как
( , ( )) ( , ,..., , , )
tyt t y y y h
0
[, ]
ttt
,
nn
01 1 1
nnknk
0
. При этом аппроксимация функции
nnk nn
с помощью некоторой раз-
1
1k
значение сеточной функ-
. (1.3)
11
. (1.4)
Таким образом, дискретным аналогом уравнения (1) является уравнение
k
1
h
ytyyyh
jnj n nk n n
0
j
Из уравнения (1.5) можно найти значение
предыдущих значений
y
( , ,..., , , )
111
y
y
, ...,
1nk
сеточной функции
n
. (1.5)
, если известны k
1n
h
. Поэтому
y
основанные на решении уравнения (1.5) методы получили название
k-шаговых. Очевидно, что для того чтобы использовать k-шаговый
метод, необходимо задать
k
начальных значений:
hh h
( ) , ( ) , ..., ( )
yt y yt y yt y
00 11 1 1
kk
. (1.6)
Уравнение (1.5) с начальными условиями (1.6) будем называть дискретной задачей Коши. Так как ее решением является сеточная функ-
ция
h
, соответствующие методы нахождения
y
h
также называются
y
сеточными методами. Принято считать, что уравнение (1.5) задает
численный метод, который также называется численной схемой. Далее
5

будем отождествлять свойства уравнения (1.5), численного метода
(схемы) и соответствующей дискретной задачи Коши.
Отметим также, что если в правой части (1.5) функция
сит от
В противном случае (функция
численная схема называется
ния
, то соответствующая численная схема называется явной.
1ny
зависит от
y
1n
неявной. Очевидно, что для нахожде-
с помощью явной схемы достаточно подставить в (1.5) из-
1ny
) соответствующая
не зави-
вестные из начальных условий или уже вычисленные на предыдущих
h
шагах интегрирования значения искомой сеточной функции
y
. По-
этому явные схемы очень просты с точки зрения их программной ре-
y
ализации. Для нахождения
в (1.5) с помощью неявной схемы в
1n
общем случае приходится решать нелинейное уравнение. Решение
нелинейного уравнения, даже таким быстро сходящимися методом
как, например, метод Ньютона, требует существенных вычислительных затрат относительно простого вычисления правой части в явном
методе [2]. Тем не менее положительные свойства неявных схем, как
правило, позволяют использовать более грубый
шаг интегрирования,
что может частично или полностью компенсировать временные затраты на решение нелинейного уравнения. К тому же в случае, если
решаемая задача является
жесткой, то использование явной схемы
зачастую вообще не позволяет получить сколько-нибудь приемлемое
решение.
АППРОКСИМАЦИЯ
Итак, мы сформулировали дискретную задачу Коши, но сразу возникает вопрос о том, как сильно она отличается от исходной непрерывной задачи.
Заменим в (1.5) значения
ствующими значениями
y
()
yt
nj
сеточной функции
1nj
функции ()yt . После этой подста-
1
новки левая и правая части дискретного уравнения могут начать отличаться. Рассмотрим их разность:
k
1
njnjnnknn
h
j
( ) , ( ),..., ( ), ( ),
yt t yt yt yt h
0
111
6
h
соответ-
y
. (1.7)

Сеточная функция
называется погрешностью аппроксимации
n
дискретного уравнения (1.5). Говорят, что дискретное уравнение (1.5)
аппроксимирует дифференциальное уравнение (1.1), если
при
0h
,
1knN
. Также логично предположить, что в этом
max 0
n
случае
k
( , ( ),..., ( ), ( ), ) ( , ( ))
tyt yt yt h ftyt
nnk n n
1
h
j
11
()()
yt y t
jnj
0
1
; (1.8)
. (1.9)
Из (1.8) в частности следует, что
k
j
0
. (1.10)
j
0
Качество аппроксимации непрерывного уравнения дискретным
оценивают с помощью
док малости погрешности аппроксимации относительно шага
порядка аппроксимации, выражающего поря-
h
. Говорят, что дискретное уравнение (1.5) аппроксимирует дифференциальное уравнение (1.1) с
p-м порядком, если
p
max
n
Ch
,
0p
,
1knN
. (1.11)
Помимо погрешности аппроксимации для оценки качества одно-
шаговых методов также используют другую величину – локальную
y
погрешность. Пусть
yyt
– значение, найденное из уравнения
1n
()
1
nn
h
(, (), , )
tyt y h
nnn
1
. (1.12)
Уравнение (1.12) – это уравнение (1.5) для одношагового метода,
в которое вместо
()
lyt y
ность
nn n
11
y
подставлено точное значение
n
называется локальной погрешностью (погреш-
()
yt
n
. Тогда раз-
ностью на шаге) метода. Нетрудно показать, что для явных схем локальная погрешность и погрешность аппроксимации связаны простым
lh
соотношением
nn
. Хотя для неявных схем локальная погреш-
7

ность не связана с погрешностью аппроксимации так просто, как для
j
K
h
явных, ее порядок малости относительно
такой же, как и у явной
схемы.
УСТОЙЧИВОСТЬ
Порядок аппроксимации является важной характеристикой дискретной задачи, однако еще более важно, чтобы решение дискретной
задачи было устойчивым к малым возмущениям начальных значений и
правой части уравнения. Отсутствие этого свойства делает соответствующую численную схему непригодной для практического использования.
Внесем в правую часть уравнения (1.5) и начальные условия (1.6)
произвольные малые возмущения
ственно. Положим
Обозначим за
*h
y
k
1
h
j
0
***** *
hh h
( ) , ( ) , ..., ( )
yt y yt y yt y
*
yy
000
решение соответствующей возмущенной задачи
****
ytyyyh
nj n nk n n n
111
00 11 1 1
,
yy
, ,..., , ,
Будем называть дискретную задачу Коши и соответствующий численный метод устойчивыми на конечном отрезке (или просто
чивыми
), если при всех
hh
0
(где
неравенство
и
,
,
n
0
*
111
1
, ...,
,...,
2
*
yy
соответ-
1k
111kkk
; (1.13)
. (1.14)
kk
устой-
h
достаточно мало) справедливо
0
.
1
N
nk
1
, входящих в (1.15). Вы-
n
, (1.15)
001
где величина
*
max ( ) max
nN nk
yy KT h
nn n n
T
не зависит от h,
n
и
ражение (1.15) по сути означает, что ошибка решения, вызванная возмущением начальных значений и правой части уравнения, может быть
сделана сколь угодно малой, если соответствующим образом уменьшить породившее ее возмущение. Последнее предложение и есть
наиболее часто используемое определение понятия устойчивой задачи.
8

НУЛЬ-УСТОЙЧИВОСТЬ
Чтобы сразу отбросить непригодные для практического применения методы, рассмотрим следующее уравнение:
() 0yt
. (1.16)
Для всякого практически пригодного метода (решение непрерывным образом зависит от начальных значений) ошибку
*
можно оце-
y
n
нить как
*
max ( ) max
yy KT
001
nn n
nN nk
h
. (1.17)
Согласно (1.17) ошибка, внесенная в начальные значения, возрастает в
h
раз. То есть величина
()
KT
сти метода. Величина
стом
в общем случае допустим. Однако если величина
T
h
KT
жет неограниченно возрастать с уменьшением
h
играет роль числа обусловленно-
()
KT
зависит от h и от T , и ее рост с ро-
()
h
KT
h
, то уменьшение шага
()
мо-
интегрирования приведет не к уточнению, а наоборот, к неограниченному росту погрешности. Соответственно для устойчивости метода
h
естественно потребовать, чтобы для достаточно малых
h
села от
h
и
, т. е. чтобы выполнялось
max ( ) max
nN nk
001
0f
В (1.16)
0
), получаем
. Следовательно, согласно (1.5) (при фиксированном
*
yy KT
nn n
. (1.18)
K не зави-
k
y
jnj
0
j
0
. (1.19)
1
Уравнение (1.19) относится к классу линейных однородных раз-
ностных уравнений k-го порядка с постоянными коэффициентами.
Если
*h
– решение этого уравнения, соответствующее возмущенным
y
9

начальным значениям
ния (1.19) погрешность
*
,
y
y
0
1
yy
nnn
k
0
*
,...,
y
1k
*
также будет решением (1.19):
. (1.20)
1
jnjj
*
Будем искать частное решение (1.20) в виде
в (1.20) и разделив на общий множитель
, то в силу линейности уравне-
0
n
. Подставив его
q
n
1nk
q
, получим уравнение
k
j
kj
q
j
0
0
, (1.21)
которое называют характеристическим уравнением, соответствующим
методу (1.5). Левая часть (1.21) называется характеристическим мно-
гочленом.
Из теории линейных разностных уравнений можно показать, что
уравнение (1.18) для задачи (1.16) будет выполнено (метод будет обладать
нуль-устойчивостью), если корни характеристического уравне-
ния лежат внутри или на границе единичного круга комплексной плоскости, причем среди корней, лежащих на границе единичного круга,
нет кратных. Сформулированное условие также называют корневым
условием.
АБСОЛЮТНАЯ УСТОЙЧИВОСТЬ
Нуль-устойчивость гарантирует устойчивое развитие погрешности
0h
при
только в том случае, когда отрезок интегрирования
фиксирован. При этом наличие нуль-устойчивости вовсе не исключает
того, что сколь угодно малая погрешность в начальных значениях при
T
может приводить к сколь угодно большой погрешности решения. Часть методов, непригодных для практического применения при
решении задачи Коши на больших временных отрезках, можно отбросить, исследовав результат их применения к решению модельной задачи
, tT
0
yy
,
10
()yt y
00
. (1.22)
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
