ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΡΠ°ΡΡΠ΅ΡΠ° Π΄Π°Π²Π»Π΅Π½ΠΈΠΉ ΠΈ Π΄Π΅Π±ΠΈΡΠΎΠ² Π½Π° ΠΠΠ
Var Pp, Pt, Qp, Qt: masP; Type masP=array of real; Summ (xb, tau, Sp, Sq); NamFRez='kursovay.txt'; Var Spi, Sqi, e: real; Assign (Rez, NamFRez); For It:=1 to Nt do. For It:=1 to Nt Do. For Ir:=1 to Nr Do. For Ir:=1 To Nr Do. Var It, Ir: integer; Sqi:=cos (Lmi*xb)*e; Program pod. Gidrom; MasX=array of real; MasT=array of real; Tau, xb, Lmi: real; Lt:=2*sqrt (cap*T); Lmi:=3.14*(i+0.5); Write (Rez… Π§ΠΈΡΠ°ΡΡ Π΅ΡΡ >
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΡΠ°ΡΡΠ΅ΡΠ° Π΄Π°Π²Π»Π΅Π½ΠΈΠΉ ΠΈ Π΄Π΅Π±ΠΈΡΠΎΠ² Π½Π° ΠΠΠ (ΡΠ΅ΡΠ΅ΡΠ°Ρ, ΠΊΡΡΡΠΎΠ²Π°Ρ, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½ΡΡΠΎΠ»ΡΠ½Π°Ρ)
Program pod. Gidrom;
uses crt;
const Pk=26;
Pg=10;
cap=1.33;
L=420;
B=280;
dt=3600.0;
h=18;
k=0.24;
mu=0.018;
Nr=11;
Nt=11;
NamFRez='kursovay.txt';
type masP=array[1.Nr, 1. Nt] of real;
masX=array[1.Nr] of real;
masT=array[1.Nt] of real;
const mX: masX = (0,42,84,126,168,210,252,294,336,378,420);
var Pp, Pt, Qp, Qt: masP;
mT: masT;
r, Rt, T, Lt, Sp, Sq: real;
tau, xb, Lmi: real;
It, Ir, i: integer;{ΠΠ½Π΄Π΅ΠΊΡΡ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΈ ΡΠ°Π΄ΠΈΡΡΡ}.
Rez: text;{ΠΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»Π° Π²ΡΠ²ΠΎΠ΄Π° Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅}.
——————————————————-;
procedure Summ (xbf, tauf: real;var Sp, Sq: real);
{ΠΡΠΎΡΠ΅Π΄ΡΡΠ° ΡΠ°ΡΡΠ΅ΡΠ° ΡΡΠΌΠΌΡ ΡΡΠ΄Π°}.
const et=1e-10;
var Spi, Sqi, e: real;
begin.
Sp:=0;
Sq:=0;
i:=0;
repeat.
Lmi:=3.14*(i+0.5);
e:=exp (-Lmi*Lmi*cap*T/(L*L));
Spi:=sin (Lmi*xb)*e/(Lmi);
Sp:=Sp+Spi;
Sqi:=cos (Lmi*xb)*e;
Sq:=Sq+Sqi;
i:=i+1;
until ((e1000));
end;
procedure PRINT_MAS (mRf:masX;mTf:masT;Pf:masP;namMAS:string);
{ΠΡΠΎΡΠ΅Π΄ΡΡΠ° Π²ΡΠ²ΠΎΠ΄Π° ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠ² Π² ΡΠ°ΠΉΠ»}.
var It, Ir: integer;
begin.
Writeln (rez, namMAS,';');
Writeln (Rez,'t, ΡΠ΅ΠΊ;; ΠΠ½Π°ΡΠ΅Π½ΠΈΡ ΡΠ°Π΄ΠΈΡΡΠΎΠ², ΠΌ;');
Write (Rez,' ;');
for Ir:=1 To Nr Do.
begin.
Write (Rez, mrf[Ir]: 7:1,';');
end;
Writeln (Rez);
for It:=1 to Nt do.
begin.
Write (Rez, mT[It]: 6:0,';');
for Ir:=1 to Nr do Write (Rez, Pf[Ir, It]: 7:1,';');
Writeln (Rez);
end;
Writeln (Rez);
{Π Π°Π·Π΄Π΅Π»ΠΈΡΠ΅Π»Ρ; Π²Π²Π΅Π΄Π΅Π½ Π΄Π»Ρ ΡΠ΄ΠΎΠ±ΡΡΠ²Π° ΠΏΠ΅ΡΠ΅Π½Π΅ΡΠ΅Π½ΠΈΡ ΡΠ°Π±Π»ΠΈΡ Π² EXEL}.
end;
begin.
for It:=1 to Nt Do.
begin.
T:=dt*(It-1);
mT[It]: =T;
Lt:=2*sqrt (cap*T);
tau:=cap*T/(L*L);
for Ir:=1 to Nr Do.
begin.
r:=mX[Ir];
xb:=r/L;
{ Π Π°ΡΡΡΡ ΠΏΠΎ ΠΠΠ‘Π‘Π‘}.
If r.
begin.
PP[Ir, It]: =sqrt (Pk*Pk-(Pk*Pk-Pg*Pg)*(1-mX[Ir]/Lt));
QP[Ir, It]: =((k*1e-12*(Pk*Pk-Pg*Pg)*1e12*B*h))/(mu*1e-3*Lt*2*0.1*1e6);
end.
else.
begin.
PP[Ir, It]: =Pk;
QP[Ir, It]: =0;
end;
{ Π Π°ΡΡΡΡ ΠΏΠΎ ΡΠΎΡΠ½ΠΎΠΌΡ ΡΠ΅ΡΠ΅Π½ΠΈΡ}.
Summ (xb, tau, Sp, Sq);
Pt[Ir, It]: =sqrt (Pg*Pg+(Pk*Pk-Pg*Pg)*(r/L+2*Sp));
Qt[Ir, It]: =(k*1e-12*(Pk*Pk-Pg*Pg)*1e12*B*h*(1+2*Sq))/(mu*1e-3*2*0.1*1e6*L);
end;
end;
clrscr;
Assign (Rez, NamFRez);
Rewrite (Rez);
PRINT_MAS (mX, mT, Pp,'izmenenie P (r, t) v plaste po priblegonnomu resheniu');
PRINT_MAS (mX, mT, Pt,'izmenenie P (r, t) v plaste po totnomu resheniu');
PRINT_MAS (mX, mT, Qp,'izmenenie Q (r, t) v plaste po priblegennomu resheniu');
PRINT_MAS (mX, mT, Qt,'izmenenie Q (r, t) v plaste po totnomu resheniu');
Close (Rez);
Writeln ('Π Π°ΡΡΠ΅Ρ Π·Π°ΠΊΠΎΠ½ΡΠ΅Π½. ΠΠ°ΠΆΠΌΠΈΡΠ΅ Π»ΡΠ±ΡΡ ΠΊΠ»Π°Π²ΠΈΡΡ');
end.