Первая краевая задача методом сеток

Листинг программы решения первой краевой задачи уравнения параболического типа методом сеток (по явной схеме).
program metodSetok;
uses Crt;
Type
ar = array[0..100,0..100] of Real;
Const
L=1;
h=0.1;
tay=0.00167;
m=10;
var 
u: ar;
i,k,n:integer;

function F(x:Real):real;
begin
F:=3*x*(1-x)+0.12;
end;
function Fi(x:Real):real;
begin
Fi:=2*(x+0.06);
end;
function Psi(x:Real):real;
begin
Psi:=0.84;
end;

BEGIN
ClrScr;
n:=Trunc(L/h+0.5);
for k:=1 to m do begin
u[0,k]:=Fi(k*tay);
u[n,k]:=Psi(k*tay);
end;
for i:=1 to n-1 do
u[i,0]:=f(i*h);
for k:=0 to m-1 do begin
for i:=1 to n-1 do begin
u[i,k+1]:=(u[i-1,k]+4*u[i,k]+u[i+1,k])/6;
end;
end;
writeln('Rezyltati vichisleniy');
write('');
for i:=1 to n do
write('',i:2,'');
Writeln;
write('');
for i:=0 to n do
write('',i*h:1:2,'');
for k:=0 to m do begin
Writeln;
write(k:2,'|');
for i:=0 to n do begin
write(u[i,k]:1:2,'');
end;
end;
Writeln;
Writeln('Kolichestvo razbieniy po osi Ox= ',n:2);
Writeln('Shag razbieniya= ',h:1:5);
Writeln('Shag po vremennomy slou= ',tay:1:5);
Writeln('Kolichestvo shagov= ',m:2);
while not keypressed do;
END.

Скрин выполнения программы

Онлайн всего: 13
Гостей: 13
Пользователей: 0

STUDLAB Сообщить про опечатку на сайте