
mathcad2005
.pdf
Данное неравенство выполняется при всех α, если gr ≤1. |
||
Следовательно, условием устойчивости схемы (6.19) будет |
|
|
h |
(6.24) |
|
τ ≤ g . |
||
|
Пусть теперь g = g(x,t) ≠ const. В этом случае применяется принцип «замороженных коэффициентов», в соответствии с которым необходимое условие устойчивости Неймана можно за-
писать в виде |
|
|
||
τ ≤ |
h |
, g* |
= max g(x,t) . |
(6.25) |
|
||||
|
g* |
x,t |
|
|
|
|
|
Вопрос влияния граничных условий на устойчивость разностной схемы здесь не рассматривается.
Неявная разностная схема
При построении схемы (6.15) производная uxx была заменена на конечную разность на временном слое tj = jτ. Если же использовать значения с временного слоя tj+1, то получим схему
u j +1 |
−2u j +u j −1 |
+ 2 |
u j +1 |
−2u j +1 |
+u j +1 |
|
+ |
|
|
i |
i |
i |
= g j 1 |
i +1 |
i |
i −1 |
+τ2 |
f j 1 |
, (6.26) |
|
τ2 |
|
|
h2 |
|
||||
|
|
i |
|
|
|
i |
|
которой соответствует шаблон, изображенный на рис. 6.8. Из уравнения (6.26) невоз-
можно явно выразить uij+1 че-
рез значения функции u с предыдущих слоев по времени (j и j–1), поскольку в (6.23)
наряду с uij+1 входят неиз-
вестные uij++11 и uij−+11 . Поэтому |
Рис. 6.8. Шаблон неявной схемы |
данная схема называется не- |
для волнового уравнения |
явной. |
|
Анализ устойчивости показывает, что неявная схема безусловно устойчива, т.е. обеспечивает сходимость разностной задачи к решению соответствующей дифференциальной при любом отношении τ/h. Решение на первых двух временных слоях опре-
93
деляется из начальных данных, как это сделано для явной схемы. Обозначив γ = gij +12r2 , перепишем (6.26) в виде
γuij++11 −(1+ 2γ )uij+1 +γuij−+11 = −2uij + uij−1 +τ 2 fi j+1,i =1, 2,..., N −1. (6.27)
Дополнив (6.26) формулами, аппроксимирующими краевые условия, получим СЛАУ с трехдиагональной матрицей, которая решается с помощью метода прогонки (см. п. 2.2).
6.4. Приближенные методы решения уравнения Пуассона
Рассмотрим решение эллиптического уравнения на примере уравнения Пуассона:
u ≡ |
∂2u |
+ |
∂2u |
= F(x, y) , |
(6.28) |
|
∂x2 |
|
∂y2 |
|
|
описывающего, например, распределение электростатического поля или стационарное распределение температуры. Пусть требуется определить решение в некоторой области G на плоскости (x,y). Корректная постановка задачи требует задания граничных условий на границе этой области ∂G .
Сравнивая уравнение Пуассона (6.28) и уравнение (6.10), можно понять, что уравнение Пуассона является стационарным, т.е. не зависящим от времени вариантом уравнения теплопроводности. Поэтому для решения уравнения Пуассона часто применяют так называемый метод установления. Для этого в пра-
вую часть уравнения (6.28) добавляют слагаемое ∂∂ut , затем ре-
шают полученное уравнение теплопроводности с помощью описанных в п. 6.2 методов до тех пор, пока решение не выйдет на стационар, т.е. не перестанет изменяться в зависимости от времени. Время в этой задаче является фиктивным, и в разностных схемах надо использовать максимально возможный шаг. Процесс установления решения может занять продолжительное время, особенно если используются явные схемы, имеющие жесткое ограничение на временной шаг. В этом случае применение схем дробных шагов помогает существенно сократить время решения.
94

Для решения уравнения Пуассона используются и другие методы, не связанные со сведением его к уравнению теплопроводности. Как правило, все эти методы приводят к решению СЛАУ с заполненной матрицей, которая решается одним из итерационных методов. Эти методы положены в основу стандартных функций пакета MathCAD.
Решение будем искать на плоской квадратной области, состоящей из (M+1)x(M+1) точек. При этом требуется, чтобы M было степенью числа 2, т.е. M = 2n, где n – некоторое целое число. Граничные условия должны быть определены пользователем на четырех сторонах квадрата. Простейший вариант – нулевые граничные условия. В этом случае можно использовать встроенную функцию.
multigrid(F,ncycle).
Здесь F – матрица размера (M+1)x(M+1), содержащая правую часть уравнения (6.28) в узлах разностной сетки, ncycle – параметр численного алгоритма (количество циклов в пределах каждой итерации). Параметр ncycle в большинстве случаев можно выбрать равным 2. На рис. 6.9 приведен листинг программы с использованием функции multigrid для решения краевой задачи для уравнения Пуассона на сетке из 33x33 узлов. Функция правой части F(x,y) представляет собой так называемый точечный источник тепла, т.е. F(x,y) = 0 всюду, кроме одной точки с номером (15, 20), в которой она принимает значение 104.
M = 32
FM,M = 0
F15,20 = 104
G = multigrid(-F,2)
G
95

Рис. 6.9. Решение уравнения Пуассона с помощью функции multigrid
Для решения краевой задачи с ненулевыми краевыми условиями можно использовать встроенную функцию relax(a,b,c,d,e,F,v,r).
Здесь параметры a, b, c, d, e – квадратные матрицы коэффициентов разностной схемы, аппроксимирующей уравнение, F
– квадратная матрица, задающая правую часть уравнения, v – квадратная матрица граничных условий и начального приближения к решению. Последний параметр r, характеризующий скорость сходимости метода, должен лежать на интервале (0,1). На рис. 6.10 приведен пример программы на MathCAD, иллюстрирующий применение этой функции для решения уравнения (6.28), правая часть которого представляет собой три точечных источника, заданных в точках сетки с номерами (15, 20), (25, 10)
и (10, 10).
M := 32 |
FM ,M := 0 F15,20 := 15 |
||
F25 |
,10 := 8 |
F10,10 := −10 |
|
i := |
0.. M |
k := 0.. M |
|
ai,k := 1 |
b := a |
c := a |
|
d := a |
e := −4 a |
vi,k := 0 |
G := relax(a,b ,c,d ,e,−F,v ,0.95)
Рис. 6.10. Решение уравнения Пуассона с помощью функции relax
96
ЗАКЛЮЧЕНИЕ
В учебном пособии были изложены методы приближенного решения нелинейных алгебраических уравнений, систем линейных и нелинейных алгебраических уравнений, методы интерполяции, численного дифференцирования и интегрирования, численные методы решения задачи Коши и краевых задач для обыкновенных дифференциальных уравнений. В пособии также рассмотрены методы решения дифференциальных уравнений в частных производных и некоторые аспекты теории разностных схем. Однако многие вопросы, связанные с методами вычислений остались за рамками пособия. Чтобы познакомиться с этими вопросами, можно воспользоваться источниками, приведенными в библиографическом списке.
97
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1.Вержбицкий В. М. Основы численных методов / В. М. Вержбицкий. – М. : Высшая школа, 2002. – 840 с.
2.Калиткин Н. Н. Численные методы / Н. Н. Калиткин.
–М. : Наука, 1978. – 518 с.
3.Бахвалов Н. С. Численные методы : учеб. пособие / Н. С. Бахвалов, Н. П. Жидков, Г. М. Кобельков. – М. :
Наука, 1987. – 500 с.
4.Воскобойников Ю. Е. Программирование и решение задач в пакете MathCAD : учеб. пособие / Ю. Е. Воскобойников, В. Ф. Очков. – Новосибирск :
НГАСУ, 2003. – 132 с.
5.Самарский А. А. Теория разностных схем / А. А. Са-
марский. – М. : Наука, 1977. – 656 с.
6.Яненко Н. Н. Метод дробных шагов решения многомерных задач математической физики / Н. Н. Яненко.
–Новосибирск : Наука, 1967. – 197 с.
7. Кирьянов Д. В. Самоучитель MathCAD 2001 / Д. В. Кирьянов. – СПб. : БХВ-Петербург, 2001. – 544 с.
98