Голдаев С.В., Ляликов Б.А. Основы математического моделирования
в теплотехнике: Учебное пособие. - Томск: Изд. ТПУ, 1999. – 106 с.
63
begin clrscr;
repeat write('a,b,e,u,m,n '); readln(a,b,e,u,m,n);
h:=a/m; l:=b/n; t:=sqr(h/l);
writeln(' a=', a:5,' b=', b:5, ' e=',e:5,' u=',u:5,' h=',h:5,' l=', l:5);
an(a,b,e,u,h,l,m,n,f1); fd(e,u,t,m,n,f2);
writeln(' - «analit. chislen.');
for i:=2 to m div 2+1 do
for j:=2 to n {div 2+1} do
if (i mod 2 = 1) and (j mod 2 =1) then
writeln('f[',i:2,',',j:2,']=',f1[i,j]:8:5,' f[',i:2,',',j:2,']=',f2[i,j]:8:5);
until readkey =#27 end.
В диалоговом режиме осуществляется ввод:
l1 – условное число, при нулевом значении которого срабатывает первая
процедура;
a =4,b = 4 – размеры системы;
ε = 0,001- погрешность решения системы разностных уравнений;
tb = 10 – безразмерная температура верхней стенки;
m = 8, n = 8 – число разбиений области интегрирования вдоль координат
x и y.
Затем вычисляются шаги сетки h и l по
коорди
натам x и y, а также значе-
ние переменной k
hl
, необходимой в подпрограмме.
После обращения к подпрограммам аналитического или разностного ме-
тодов осуществляется вывод результатов на дисплей.
Ниже приведена выборка результатов расчетов температуры по данной
программе. Вследствие симметрии задачи на печать выведены значения
температуры в узлах левой половины прямоугольной области.
a,b,e,u,m,n 4 4 0.005 10 8 8
a= 4.0E+00 b= 4.0E+00 e= 5.0E-03 u= 1.0E+01
t= 1.0E+00 h= 5.0E-01 l= 5.0E-01
analit chiclen
x=1.500 y=1.500 ua= 0.67973 u= 0.67535
x=1.500 y=2.500 ua= 1.82030 u= 1.82119
x=1.500 y=3.500 ua= 4.31932 u= 4.30024
x=2.500 y=1.500 ua= 0.95412 u= 0.94569
x=2.500 y=2.500 ua= 2.50003 u= 2.47942
x=2.500 y=3.500 ua= 5.40426 u= 5.34837
Как видно из этих данных, результаты численного решения хорошо со-
ответствуют аналитическим, что свидетельствует о достоверности вычисли-
тельного эксперимента.