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

UptoLike

119
Writeln('Введите молярную массу, M');
Readln(M);
Writeln('Введите предэкспонент, P0');
Readln(P0);
Writeln('Введите начальную температуру, T0');
Readln(T0);
{определяем расчетный шаг сетки по пространственной координате}
h:=L/(N-1);
{определяем расчетный шаг сетки по времени}
tau:=t_end/1000.0;
{определяем поле температуры в начальный момент времени}
for i:= 1 to N do
T[i]:=T0;
{проводим интегрирование нестационарного уравнения
теплопроводности}
time:=0;
while time<t_end do {используем цикл с предусловием}
begin
{увеличиваем переменную времени на шаг τ}
time:=time+tau;
{определяем alfa начальный прогоночный коэффициент на основе ле
вого
граничного условия, используя соотношение (54)}
alfa[1]:=2.0*tau*lamda/(2.0*tau*lamda+ro*c*sqr(h));
{запоминаем поле температуры на предыдущем временном слое}
for i:=1 to N do
Tn[i]:=T[i];
{цикл с постусловием, позволяющий итерационно вычислять поле
температуры, вследствие наличия нелинейности в левом граничном
условии}
repeat
{определяем beta начальный прогоночный коэффициент на основе
левого граничного условия, используя соотношение (5
4), при этом
начинаем итерационный цикл по левому граничному условию}
d:=T[1];
beta[1]:=(ro*c*sqr(h)*Tn[1]+2.0*tau*h*q)/(ro*c*sqr(h)+2.0*tau
*lamda)-2.0*tau*A*h*qev*(P0*exp(-qev/(R*d))-Patm)
/((2.0*tau*lamda+ro*c*sqr(h))*sqrt(2.0*pi*R*d/M));
{цикл с параметром для определения прогоночных коэффициентов по
формуле (8)}
for i:= 2 to N-1 do
begin