Численные методы решения прикладных задач - page 264

264
Учитывая, что на нулевом слое (при
i
=0) все значения
0
,
i
u
(как,
впрочем, и
j
u
,0
,
jn
u
,
) известны по формуле (9.9) можно сначала явно
рассчитать значения
1,
i
u
, затем
2
,
i
u
и так до
ki
u
,
. Для устойчивости
разностной схемы (9.9) значения шагов по
t
и
х
должны удовлетворять
следующему условию
2
2
2
a
h

.
(9.11)
Рассмотрим решение параболического уравнения на примере
следующей задачи.
9.3. Примеры
Пример 9.1
Решить параболическое уравнение, описывающее распределение
температуры в стержне длиной
L
, начальная температура стержня
задается произвольной функцией φ(
х
). Температуры концов стержня
равны
u
(0,
t
)=
U
1
=const,
u
(
L
,
t
)=
U
2
=const.
 
t
x
f
t
u
a
t
u
,
2
2
2
,
cp
a
2
,
L x

0
,
t
0
,
u
(0,
t
)=
U
1
=const,
u
(
L
,
t
)=
U
2
=const,

t
0
,
,
L x
0
,
где
а
2
– коэффициент температуропроводности; λ - коэффициент
теплопроводности материала стрежня;
с
– удельная теплоемкость; ρ -
плотность массы.
Программа решения задачи с помощью явной разностной схемы
(9.9) -(9.10) на языке Си ++ представлена на листинге.
#include
"iostream"
#include
"iomanip"
#include
"fstream"
usingnamespace
std;
double
f(
double
x
,
double
t
)
//праваячастьдифференциальногоуравнения
{
double
y;
y=sin(
x
*
t
);
return
y;
}
// начальноеусловие
double
fi(
double
x
)
{
double
y;
y=exp(0.15*
x
);
return
y;
}
//условие на левой границе
double
myu(
double
t
)
{
I...,254,255,256,257,258,259,260,261,262,263 265,266,267,268,269,270,271,272,273,274,...284
Powered by FlippingBook