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

Boyarshinov_ChM_T2

.pdf
Скачиваний:
308
Добавлен:
13.03.2016
Размер:
2.93 Mб
Скачать

МИНИСТЕРСТВО ОБЩЕГО И ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ РОССИЙСКОЙ

ФЕДЕРАЦИИ

ПЕРМСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

М. Г. БОЯРШИНОВ

ЧИСЛЕННЫЕ МЕТОДЫ

Часть 2.

Учебное пособие для студентов направления

“ПРИКЛАДНАЯ МАТЕМАТИКА И ИНФОРМАТИКА

ПЕРМЬ

УДК 681.3

Численные методы. Часть 2: Учебное пособие для студентов направления “Прикладная математика и информатика”/М. Г. Бояршинов; Перм. гос. техн. ун-т. Пермь, . - 216 с.

ISBN 5 - 88151 -

Учебное пособие написано на основе курса, читаемого студентам специальности “Прикладная математика” (специализация “Математическое моделирование”) в Пермском государственном техническом университете.

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

Пособие предназначено для студентов и аспирантов ВУЗов, специалистов, занимающихся вопросами построения моделей систем и процессов. Может быть использовано как пособие для учителей средних учебных заведений при проведении факультативных занятий по компьютерному моделированию.

Библиогр. : 16 назв.

ISBN 5 - 88151 -

М.Г. Бояршинов,

2

С О Д Е Р Ж А Н И Е

 

Введение

6

1. Обыкновенные дифференциальные уравнения.

7

2. Задача Коши.

9

Устойчивость решения задачи Коши

10

Метод Пикара

12

Метод Эйлера

15

Метод Рунге - Кутты

19

Методы Рунге - Кутты третьего и четвертого порядков

25

Метод Адамса

27

Неявные схемы интегрирования

29

Дифференциальные уравнения высших порядков. Системы

 

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

32

Метод Эйлера

33

Метод Рунге - Кутты

34

Разностные схемы интегрирования дифференциальных уравнений

 

второго порядка

36

Контрольные вопросы и задания

40

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

41

Метод пристрелки

42

Метод дифферениальной прогонки

45

Метод моментов

56

Метод Галеркина

61

Разрешимость системы уравнений метода Галеркина

67

Метод наименьших квадратов

69

Разрешимость системы уравнений метода наименьших квадратов

72

Сходимость метода наименьших квадратов

73

3

Метод Ритца

75

Сходимость метода Ритца

77

Сеточный метод решения линейной граничной задачи

80

Разрешимость системы алгебраических уравнений метода сеток

81

Оценка порядка аппроксимации

83

Метод прогонки для решения сеточной задачи

83

Контрольные вопросы и задания

86

4. Дифференциальные уравнения в частных производных

88

Некоторые дифференциальные уравнения второго порядка

89

Уравнение теплопроводности

89

Уравнение свободных поперечных колебаний струны

91

Уравнение стационарной диффузии

91

Дифференциальные уравнения для функций нескольких

 

переменных

92

Метод Фурье разделения переменных

93

Основные понятия и определения теории разностных схем

96

Аппроксимация уравнения разностной схемой. Порядок

 

аппроксимации

98

Устойчивость разностной схемы

101

Принцип максимума

106

Оценка устойчивости разностных схем методом Неймана

111

Сходимость решения разностной схемы

114

Контрольные вопросы и задания

116

5. Сеточные схемы для уравнений в частных производных

117

Уравнения первого порядка

117

Схемы бегущего счета

117

Явно-неявная схема

122

Многомерное уравнение переноса

122

Контрольные вопросы и задания

125

4

Уравнения параболического типа

126

Схема с “весами”

126

Трехслойная схема Ричардсона

129

Схема Дюфорта и Франкела

131

Схема бегущего счета

131

Многомерные уравнения

133

Схема переменных направлений (продольно - поперечная

 

схема)

135

Метод расщепления

136

Контрольные вопросы и задания

138

Уравнения гиперболического типа

139

Схема “крест”

139

Разностная схема с “весами”

143

Многомерные уравнения

144

Факторизация разностной схемы с “весами”

145

Контрольные вопросы и задания

147

Уравнения эллиптического типа

148

Контрольные вопросы и задания

154

6. Прикладные задачи математического моделирования

155

Аккумуляция лесным массивом и вторичный вынос загрязняющих веществ

155

Движение потока жидкости по системе каналов городского коллектора178

Моделирование состояния проволоки при знакопеременном изгибе

с натяжением

189

Моделирование поведения тяжелой полосы металла в процессе

 

свободного петлеобразования

202

Контрольные вопросы и задания

212

Предметный указатель

213

Библиографический список

215

5

В В Е Д Е Н И Е

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

-точное решение, позволяющее представить искомую функцию в элементарных функциях;

-приближенные решения, в которых точное решение получается как предел некоторой последовательности; в этом случае, как правило, используются разложения искомой функции в ряды Тэйлора, Фурье и так далее;

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

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

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

6

1 . О Б Ы К Н О В Е Н Н Ы Е Д И Ф Ф Е Р Е Н Ц И А Л Ь Н Ы Е У Р А В Н Е Н И Я

Решением, интегралом или интегральной кривой обыкновенного дифференциального уравнения первого порядка

dydx f x,y , или y f x,y

называется дифференцируемая функция y = y(x), удовлетворяющая этому уравнению, то есть такая, что y x f x,y x на некотором участке изменения аргумента x.

Различают три типа задач:

-задача Коши, когда для искомой функции задается условие для одного из значений аргумента, принимаемого за начальное, y x0 y0 ;

-граничная задача1, когда условия на искомую функцию задаются для

нескольких

различных

значений

аргумента,

y x0 y0,

y x1 y1 ,

y x2 y2,

;

 

 

 

 

- задачи на собственные значения,

когда в формулировку задачи входят

неопределенные параметры, определяемые из самой задачи (нахождение частот собственных колебаний многомассовых систем).

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

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

Пример 1.1. На материальную точку массы m, находящуюся на гладкой горизонтальной поверхности, действует горизонтальная периодическая сила F t A sin t . Определить закон движения точки, если ее начальная скорость v0.

Уравнение, описывающее движение точки, имеет вид:

d2x

m dt2 A sin t .

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

2Под устойчивостью в данном случае понимается непрерывная зависимость решения от входных данных, [2].

7

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

 

 

 

x 0 0,

v 0 dx 0 v0 .

 

 

 

 

 

 

 

 

 

 

dt

 

 

 

 

 

 

Интегрирование исходного уравнения с заданными начальными условиями

дает решение

 

 

 

 

 

 

 

 

 

 

 

 

 

v t v

 

A

1 cos t ,

 

 

 

 

A

t

A

 

 

 

x t v

 

 

sin t ,

 

 

0

m

 

 

 

 

 

0

 

m

 

m

 

непрерывно зависящее

от

начальных

условий

x 0 0,

v 0 v0 и

коэффициентов A, m.

 

 

 

 

 

 

 

 

 

 

 

 

Положим v0

A . В этом частном случае решение исходной задачи

 

m

 

 

 

 

 

 

x t A sin t

 

 

 

 

 

m

 

 

 

соответствует случаю гармонического колебания точки вблизи ее начального

положения. Иными словами, t 0

 

x t A .

 

 

 

 

 

m

 

 

 

Очевидно, что при малом отклонении

величины

v0

от выбранного

значения, например за счет погрешности округления данных в ЭВМ, при

численном решении задачи получаем (рис. 1)

 

 

 

 

x t

 

 

.

 

 

 

 

t

 

 

Таким образом, даже при корректно поставленной задаче ее численное

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

 

x(t)

 

 

 

 

 

 

10

 

 

 

 

 

 

6

 

 

 

 

 

 

2

 

 

 

 

 

 

-2

 

 

 

 

 

 

0

10

 

20

 

30

t

Рис. 1.1. Действительное (нижняя кривая) и возмущенное (верхняя кривая)

 

решения задачи из примера 1.1.

 

 

8

2 . З А Д А Ч А К О Ш И

Требуется найти функцию y(x), удовлетворяющую дифференциальному уравнению

dy f

 

x,y

x

,

0 x T, y 0

 

y

 

.

(2.1)

dx

 

 

 

 

 

0

 

 

Здесь f(x, y(x)) - заданная непрерывная функция двух аргументов.

Условия существование и единственность решения задачи (1.1) устанавливает

Теорема 2.1 (Пеано3, [3]). Пусть функция f(x, y(x)) непрерывна в открытой области D. Тогда через каждую точку (u,v) этой области проходит хотя бы одна интегральная кривая. Каждая из этих кривых может быть продолжена в обе стороны вплоть до границы любой замкнутой области G, целиком содержащейся в D и содержащей точку (u,v) внутри себя.

Кроме того, если функция f(x, y(x)) имеет в области D непрерывные частные производные первого порядка или удовлетворяет условию Липшица,

f

 

x,y

2

 

f

 

x,y

1

K y

2

y

1

,

 

 

x,y

1

 

x,y

2

G,

K const 0

,

 

 

 

 

 

 

 

 

 

,

 

 

то задача (2.1) имеет единственное решение.

В дальнейшем будем предполагать, что правая часть f(x, y) уравнения дифференцируема достаточное число раз.

 

 

 

 

Устойчивость решения задачи Коши

 

 

Наряду с уравнением (2.1) рассмотрим задачу

 

 

 

 

 

 

 

 

~

 

x,~y

 

 

x ,

~y

0

 

~y

 

,

(2.2)

 

 

 

 

 

dy f

 

 

 

0

 

 

 

 

 

dx

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

где

 

x ,

 

- возмущения”,

 

вносимые в

правую

часть уравнения (2.1) и

 

 

 

 

начальные условия.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Задача Коши (2.1)

абсолютно устойчива [4], если 0

0 такое,

что x 0

из условия

,

 

 

следует

 

y ~y .

 

 

Иначе говоря, решение устойчиво, если “возмущенное” решение “не

слишком сильно” отличается от исходного.

 

 

 

 

 

 

 

 

Рассмотрим условия устойчивости решения по начальному условию, то

есть положим x 0.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Оценим погрешность решения

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

z x ~y x y x .

 

 

 

(2.3)

3

Пеано Джузеппе [27.8.1858 - 20.9.1930] - итальянский математик. С 1890 года - профессор Туринского

 

университета.

9

Для этого, вычитая уравнение (2.1) из выражения (2.2), получаем:

dz f x,~y f x,y f x,y z f x,y . dx

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

f

 

x,y z

 

f

 

x,y

 

y

 

 

 

.

 

 

 

 

 

 

z f

x,y z ,

01,

 

 

Решаем полученное дифференциальное уравнение

 

 

 

 

 

 

 

 

 

dz z fy x,y z

 

 

 

 

 

 

 

 

 

 

dx

 

 

 

 

 

 

 

 

разделяя переменные:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

dz fy x,y z dx,

 

 

 

 

 

 

 

 

 

 

z

 

 

 

 

 

 

 

 

 

 

 

 

 

 

z

 

 

 

 

x

 

 

 

 

 

 

 

 

 

 

 

dzz

 

fy t,y z dt ,

 

 

 

 

 

 

 

 

 

z0

 

 

 

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

 

 

 

 

 

 

 

 

 

 

ln z zz

0

fy t,y z dt,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

fy t,y z dt

.

 

 

 

 

 

 

 

 

 

 

 

z z0 e0

 

 

 

 

 

Очевидно, что погрешность z(t) не будет возрастать, если

x

z x z0 .

 

 

 

 

 

 

 

 

 

 

 

x

 

 

 

 

 

Но это возможно

в

том

 

случае,

когда

fy t,y z dt 0.

Поскольку это

 

 

 

 

 

 

 

 

 

 

 

0

 

 

 

 

 

требование должно выполняться для любого значения x, необходимо

потребовать, чтобы выполнялось условие

fy 0.

 

Пример 2.1. Расмотрим задачу: dy k y,

y 0 y0 .

dx

 

 

 

 

 

Точное решение этого уравнения имеет вид

y x y0ekx . В случае k < 0

условие устойчивости выполняется:

 

 

 

 

 

fy k 0,

 

 

 

z x ~y x y x ~y

0

y

0

ekx 0

 

 

 

x

и различие между решениями уменьшается с увеличением значения аргумента

(рис. 2.1а).

При k > 0 условие устойчивости не выполняется: fy k 0,

10

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]