- •Глава 10. Численные методы решения дифференциальных уравнений с частными производными
- •10.1. Классификация дифференциальных уравнений с частными производными
- •10.2. Метод сеток
- •10.3. Итерационные методы решения системы конечно-разностных уравнений
- •10.4. Решение уравнений эллиптического типа
- •10.5. Решение уравнений параболического типа
- •10.6. Решение уравнений гиперболического типа
10.6. Решение уравнений гиперболического типа
Уравнение гиперболического типа иначе называют уравнением колебания струны, иливолновым уравнением. Сформулируем задачу:
Дано дифференциальное уравнение
|
(26) |
Необходимо найти функцию z(x,t), удовлетворяющую этому уравнению, а также начальным условиям
|
(27) |
и краевым условиям
|
(28) |
Так как введением новой переменной можно преобразовать уравнение к виду
,
то в дальнейшем будем полагать, что a=1.
Построим в полуполосе два семейства прямых, и заменим в уравнении производные конечно-разностными отношениями:
Умножим обе части уравнения на :
Обозначив , получим
|
(29) |
При это уравнение устойчиво, а приσ=1 имеет наиболее простой вид:
|
(30) |
Эта формула позволяет найти значения функции z(x,y)наtj+1слое, если известны значения функции на двух предыдущих слоях. Следовательно, необходимо определить формулы для нахождения значений функции на двух первых слоях. Для этого воспользуемся начальными условиями.
Из первого начального условия получим
|
(31) |
Во втором начальном условии заменим производную конечно-разностным отношением
Тогда
|
(32) |
Таким образом, находя значения функции в узлах сетки, в начале заполним первые два слоя, пользуясь формулами (31) и (32), а затем на всех остальных слоях с помощью формулы (29), либо, с помощью более простой формулы (30).
Пример:Найти решение уравнения при,;.
Решение:
Возьмем квадратную сетку с шагом h=l=0.05, т.е..
Найдем значения z(x,t)на двух начальных слоях:
– на первом слое по формуле
– на втором слое формула буде выглядеть так:
– на все последующих слоях будем пользоваться формулой (30): .
В итоге получили таблицу:
j |
x |
0 |
0,05 |
0,1 |
0,15 |
0,2 |
0,25 |
0,3 |
0,35 |
0,4 |
0,45 |
0,5 |
t | ||||||||||||
0 |
0 |
0 |
0,0005 |
0,0020 |
0,0045 |
0,0080 |
0,0125 |
0,0180 |
0,0245 |
0,0320 |
0,0405 |
0,0500 |
1 |
0,05 |
0 |
0,012 |
0,018 |
0,024 |
0,030 |
0,038 |
0,045 |
0,054 |
0,064 |
0,074 |
0,085 |
2 |
0,1 |
0 |
0,017 |
0,034 |
0,044 |
0,053 |
0,063 |
0,074 |
0,085 |
0,096 |
0,108 |
0,122 |
3 |
0,15 |
0 |
0,022 |
0,043 |
0,063 |
0,077 |
0,089 |
0,102 |
0,116 |
0,129 |
0,144 |
0,159 |
4 |
0,2 |
0 |
0,026 |
0,051 |
0,076 |
0,099 |
0,116 |
0,131 |
0,147 |
0,163 |
0,180 |
0,197 |
5 |
0,25 |
0 |
0,030 |
0,059 |
0,087 |
0,115 |
0,141 |
0,161 |
0,179 |
0,197 |
0,216 |
0,235 |
6 |
0,3 |
0 |
0,033 |
0,066 |
0,098 |
0,129 |
0,160 |
0,189 |
0,211 |
0,232 |
0,253 |
0,274 |
7 |
0,35 |
0 |
0,036 |
0,072 |
0,108 |
0,143 |
0,177 |
0,210 |
0,242 |
0,266 |
0,290 |
0,313 |
8 |
0,4 |
0 |
0,039 |
0,078 |
0,117 |
0,155 |
0,193 |
0,230 |
0,266 |
0,299 |
0,326 |
0,352 |
9 |
0,45 |
0 |
0,042 |
0,084 |
0,126 |
0,167 |
0,208 |
0,248 |
0,288 |
0,326 |
0,362 |
0,391 |
10 |
0,5 |
0 |
0,045 |
0,090 |
0,134 |
0,179 |
0,222 |
0,266 |
0,309 |
0,350 |
0,391 |
0,429 |
Продолжение таблицы:
j |
x |
0,55 |
0,6 |
0,65 |
0,7 |
0,75 |
0,8 |
0,85 |
0,9 |
0,95 |
1 |
t | |||||||||||
0 |
0 |
0,0605 |
0,0720 |
0,0845 |
0,0980 |
0,1125 |
0,1280 |
0,1445 |
0,1620 |
0,1805 |
0,2000 |
1 |
0,05 |
0,098 |
0,111 |
0,125 |
0,140 |
0,156 |
0,173 |
0,191 |
0,209 |
0,229 |
0,200 |
2 |
0,1 |
0,136 |
0,150 |
0,166 |
0,183 |
0,200 |
0,218 |
0,238 |
0,258 |
0,229 |
0,200 |
3 |
0,15 |
0,174 |
0,191 |
0,208 |
0,226 |
0,245 |
0,265 |
0,286 |
0,257 |
0,229 |
0,200 |
4 |
0,2 |
0,214 |
0,232 |
0,251 |
0,271 |
0,291 |
0,312 |
0,284 |
0,256 |
0,228 |
0,200 |
5 |
0,25 |
0,254 |
0,274 |
0,295 |
0,316 |
0,338 |
0,311 |
0,283 |
0,256 |
0,228 |
0,200 |
6 |
0,3 |
0,295 |
0,317 |
0,339 |
0,362 |
0,336 |
0,309 |
0,282 |
0,255 |
0,227 |
0,200 |
7 |
0,35 |
0,336 |
0,360 |
0,384 |
0,359 |
0,333 |
0,307 |
0,280 |
0,254 |
0,227 |
0,200 |
8 |
0,4 |
0,378 |
0,404 |
0,380 |
0,355 |
0,330 |
0,304 |
0,278 |
0,252 |
0,226 |
0,200 |
9 |
0,45 |
0,420 |
0,397 |
0,374 |
0,351 |
0,326 |
0,302 |
0,276 |
0,251 |
0,226 |
0,200 |
10 |
0,5 |
0,411 |
0,390 |
0,369 |
0,346 |
0,322 |
0,299 |
0,274 |
0,250 |
0,225 |
0,200 |