Разностные методы решения задач теплопроводности. Кузнецов Г.В - 62 стр.

UptoLike

62
{определяем номера узлов, в которых расположен источник}
N1:=N div 4;
N2:=2*N1;
N3:=3*N1;
{определяем расчетный шаг сетки по пространственной координате}
h:=L/(N-1);
{определяем коэффициент температуропроводности}
a:=lamda/(ro*c);
{определяем расчетный шаг сетки по времени}
tau:=t_end/100.0;
{определяем поле температуры в начальный момент времени}
for i:= 1 to N do
T[i]:=T0;
{проводим интегрирование нестационарного уравнения
теплопроводности}
time:=0;
while time<t_end do {используем цикл с предусловием}
begin
{увеличиваем переменную времени на шаг τ}
time:=time+tau;
{определяем начальные прогоночные коэффициенты на основе левого
граничного условия, используя соотношения (2
4)}
alfa[1]:=2.0*a*tau*lamda/(lamda*sqr(h)+2.0*a*tau*(lamda+kapa*h));
beta[1]:=(lamda*sqr(h)*T[1]+2.0*a*tau*kapa*h*Te)/(lamda*sqr(h)+2.0
*a*tau*(lamda+kapa*h));
{цикл с параметром для определения прогоночных коэффициентов по
формуле (8)}
for i:= 2 to N-1 do
begin
{ai, bi, ci, fi – коэффициенты канонического представления системы
уравнений с трехдиагональной матрицей}
ai:=lamda/sqr(h);
bi:=2.0*lamda/sqr(h)+ro*c/tau;
ci:=lamda/sqr(h);
fi:=-ro*c*T[i]/tau;
{определяем fi в зависимости от рассматрвиаемой точки
пространства}
if (i=N1) or (i=N2) then fi:=-ro*c*T[i]
/tau-h*(i-1)*q;
if i=N3 then fi:=-ro*c*T[i]/tau-h*(N1-1)*q;
{alfa[i], beta[i] – прогоночные коэффициенты}
alfa[i]:=ai/(bi-ci*alfa[i-1]);