📄 declare.pas
字号:
unit Declare;
interface
uses Math,SysUtils,Windows;
type SESystemData=record
co2_coal:array[1..2] of Real;
co_coal:array[1..2] of Real;
n2_coal:array[1..2] of Real;
o2_coal:array[1..2] of Real;
h2_coal:array[1..2] of Real;
ch4_coal:array[1..2] of Real;
cmhn_coal:array[1..2] of Real;
tm_coal: Real;
h2o_coal:Real;
co2_cokecoal: Real;
co_cokecoal: Real;
n2_cokecoal: Real;
o2_cokecoal:Real;
h2_cokecoal:Real;
ch4_cokecoal:Real;
cmhn_cokecoal:Real;
factor_cokecoal: Real;
co2_fume:array[1..2] of Real;
co_fume:array[1..2] of Real;
n2_fume:array[1..2] of Real;
o2_fume:array[1..2] of Real;
ch4_fume:array[1..2] of Real;
h2o_fume:Real;
q1_inheat:array[1..6] of real;//%
q2_inheat:array[1..5] of real;
q3_inheat:array[1..5] of real;
q4_inheat:array[1..5] of real;
q1_outheat:array[1..5] of real;
q2_outheat:array[1..5] of real;
q3_outheat:array[1..2] of real;
q4_outheat:array[1..4] of real;
q5_outheat:array[1..7] of real;
q6_outheat:array[1..6] of real;
q7_1_outheat:array[1..5] of real;
q7_2_outheat:array[1..5] of real;
q7_outheat:array[1..2] of real;//Q7z
q8_outheat:array[1..5] of real;
q9_outheat:array[1..5] of real;
q10_outheat:array[1..6] of real;
q11_outheat:array[1..5] of real;
process_heatcompute:array[1..10] of real;//WaterofAir,a,bw,
//Log,V0,Vns,Qdws,B,
//Vy,Los
Result_heatcompute:array[1..7]of real;//Qs,Qz,Qc,Qsr,HEF1,HEF2,ty
structure:array[1..5]of real;
grille:array[1..3,1..4]of real;
wind:real;
initial:array[1..3] of real;
inhibit:array[1..7] of real;
end;
Type DryAirWater=array[0..41]of Real;
const DryAirWaterElem:DryAirWater=(4.87,5.24,5.64,6.05,6.51,6.97,7.48,8.02,8.59,9.17,
9.81,10.5,11.2,12.1,12.9,13.7,14.6,15.7,16.7,17.8,
19,21.5,24.4,27.6,31.2,35.1,39.6,44.5,50.1,56.3,63.1,
84,111.3,148,197,264,356,494,705,1061,1810,4040);
type DryAirTemp=array[0..41] of Real;
const DryAirTempElem:DryAirTemp=(0,1,2,3,4,5,6,7,8,9,
10,11,12,13,14,15,16,17,18,19,
20,22,24,26,28,30,32,34,36,38,40,
45,50,55,60,65,70,75,80,85,90,95);
type mo=array[1..5]of real;
const A11:mo=(10.55,7.17,7.16,6.66,6.761);
B11:mo=(2.16,2.56,1.0,1.02,1.0158);
C11:mo=(-2.04,0.08,-0.4,0.0,-0.084);
D11:mo=(0,0,0,0,0);
var ag,bg,cg,dg:array[1..2]of real;
xg:array[1..5]of real;
const MaxTime:Integer=41;
const MaxPosition:Integer=41;
type AnalogData=record
TempFume:array[1..41,1..41]of real;
TempAir:array[1..41,1..41]of real;
TempRegenerator:array[1..2,1..41,1..41]of real;
CommonCoefficient:array[1..14]of Real;
end;
type OperationImproveData=record
Condition_OperationImprove:array[1..3]of Real;//要求热风温度,排烟上限温度
//炉顶最高温度
WindCoefficient:array[1..3]of Real; // 先行炉,后行炉,掺混冷风
Result_OperationImprove:array[1..11]of Real;// 煤气量,热风量,空气量,湿烟气量,
//煤气热值,空气与煤气之比,
//热风炉本体热效率,
//燃烧期,送风期,实际热风温度
//排烟温度
end;
var SESystemElement:SESystemData;
AnalogElement:AnalogData;
OperationImproveElement:OperationImproveData;
bRanshao:Boolean=FALSE;
PrecisionValue:Real=1;
IterativeNumber:int64=200;
procedure WriteSESystemFile(filename:string);
procedure ReadSESystemFile(filename:string);
procedure WriteCsvFile(filename:string);
procedure WriteAnalogFile(filename:string);
procedure ReadAnalogFile(filename:string);
procedure InitialSESystem;
Function DryAirtoHumidityAir(Temp:Real):Real;
Function AirExpendCoefficient(O2y:Real;COy:Real;H2y:Real;CH4y:Real;
N2y:Real;N2:Real;RO2y:Real;CO2:Real;
CO:Real;CH4:Real;m:Integer;CmHn:Real;
H2S:Real):Real;
Function IncompleteComparecomplete(a:Real;COy:Real;H2y:Real;
CH4y:Real;O2y:Real):Real;
Function TheoryDryAirQ(H2:Real;CO:Real;CH4:Real;m:Integer;
n:Integer;CmHn:Real;H2S:Real;O2:Real):Real;
Function TheoryHumidityFumeQ(CO:Real;CH4:Real;m:Integer;n:Integer;
CmHn:Real;CO2:Real;H2:Real;H2S:Real;
N2:Real;H2O:Real;Log:Real):Real;
Function FactHumidityFumeQ(V0:Real;a:Real;gk:Real;Log:Real):Real;
Function QdwEnergy(CO:Real;H2:Real;CH4:Real;C2H6:Real;C2H4:Real;H2S:Real):Real;
Function CoalNeedQ(Vm:Real;Tr:Real;Vf:Real;Tf:Real):Real;
Function FuelPhysicsEnergy(B:Real;Cm:Real;tm:Real;Cme:Real;te:Real):Real;
Function TheoryHumidityAirQ(Log:Real;gk:Real):Real;
Function HelpAirPhysicsEnergy(B:Real;a:Real;Los:Real;Ck:Real;tk:Real;Cke:Real;te:Real):Real;
Function CoolWindEnergy(Cf1:Real;tf1:Real;Cfe:Real;te:Real):Real;
Function HotStoveEnergy(Cf2:Real;tf2:Real;Cfe:Real;te:Real):Real;
Function FumePhysicsEnergy(B:Real;bw:Real;Vns:Real;Cy2:Real;ty2:Real;Cye:Real;te:Real):Real;
Function ChemistryIncompleteEnergy(B:Real;bw:Real;Vns:Real;Qdwsh:Real):Real;
Function CoalMachineWaterEnergy(B:Real;gmj:Real;tm:Real;Cq:Real;ty2:Real):Real;
Function CoolWaterEnergy(Gs:Real;T:real;Vf:Real;Tf:Real;ts2:Real;ts1:Real):Real;
Function CoolPipeEnergy(T:Real;Vf:Real;Tf:Real;qi:Real;Ai:Real):Real;
Function RadiateEnergy(e:Real;tb:Real;te:Real;ad:Real):Real;
Function ConvectionEnergy(A:Real;tb:Real;te:Real):Real;
Function Cpy(CO2y:Real;N2y:Real;O2y:Real;CH4y:Real;COy:Real;H2Oy:Real;t:Real):Real;
Function Space(n:Integer):String;
//某一温度下的定压比热比热 ,单位 J/(kg.℃)
Function CpO2(T:Real):Real;
Function CpCO2(T:Real):Real;
Function CpN2(T:Real):Real;
Function CpH2O(T:Real):Real;
Function CpH2Oq(T:Real):Real;
Function Cpair(T:Real):Real;
Function CpCO(T:Real):Real;
Function CpH2(T:Real):Real;
Function CpCH4(T:Real):Real;
Function CpC2H4(T:Real):Real;
//模拟
Function AverageRadLen(V:Real;F:Real):Real;
Function EmissivityCO2(PCO2:Real;T:Real;l:Real):Real;
Function EmissivityH2O(PH2O:Real;T:Real;l:Real):Real;
Function AbsorptivityCO2(eCO2:Real;T:Real;ts:Real):Real;
Function AbsorptivityH2O(eH2O:Real;T:Real;ts:Real):Real;
Function RadiationEnergy(es:Real;e:Real;T:Real;A:Real;ts:Real):Real;
Function ConvectionCoefficient(de:Real;r:Real;Pr:Real;w:Real;v:Real):Real;
Function RadiationCoefficient(qr:Real;T:Real;Ts:Real):Real;
Function FumeP(T:Real;p:Real):Real;
Function FumeW(Lk:Real;Af:Real):Real;
Function FumeCp(T:Real):Real;
Function uO2(T:Real):Real;
Function uCO2(T:Real):Real;
Function uN2(T:Real):Real;
Function uH2O(T:Real):Real;
Function uair(T:Real):Real;
Function pair(T:Real):Real;
Function rO2(T:Real):Real;
Function rCO2(T:Real):Real;
Function rN2(T:Real):Real;
Function rH2O(T:Real):Real;
Function rair(T:Real):Real;
Function FumeU(T:Real):Real;
Function FumeR(T:Real):Real;
Function FumePr(Cp:Real;u:Real;r:Real):Real;
Function SolidX(h:Real;ts:Real):Real;
Function TotalTransferCoefficient(a:Real;hd:Real;r:Real):Real;
Function C1(az:Real;A:Real;W:Real;C:Real;L:Real;yc:Real;u:Real):Real;
Function C2(az:Real;A:Real;M:Real;Cs:Real;Tc:Real):Real;
Function RegeneratorCp(h:Real;ts:Real):Real;
Function LossEnergy(Aws:Real;qw:Real;W:Real;C:Real;yc:Real):Real;
Function AirW(Lk:Real;Af:Real):Real;
Function AirPr(Cp:Real;u:Real;r:Real):Real;
Function A1(C1:Real):Real;
Function A2(C1:Real):Real;
Function B1(C2:Real):Real;
Function B2(C2:Real):Real;
Function Dw(Qw:Real;C1:Real):Real;
Function H1(A1:Real;A2:Real;B2:Real):Real;
Function H2(A2:Real;B2:Real):Real;
Function H3(B2:Real;H2:Real):Real;
Function H4(B1:Real;H2:Real):Real;
Function H5(Dw:Real;A2:Real;B2:Real):Real;
Function K1(B1:Real;A2:Real;B2:Real):Real;
Function K2(A2:Real;B2:Real):Real;
Function K3(A2:Real;K2:Real):Real;
Function K4(A1:Real;K2:Real):Real;
Function p:Real;
procedure EquationCoefficient(T:Real;h:Real;ts:Real;u:Real);
Function FUT(Y0:Real;TJ:Real):Real; //通过热风炉的无因次风量的计算公式
//燃烧优化
Function Cpairj(t1:Real;t2:Real):Real;
Function Cp(a:Real;b:Real;t1:Real;t2:Real):Real;
Function CpH2j(t1:Real;t2:Real):Real;
Function CpN2j(t1:Real;t2:Real):Real;
Function CpO2j(t1:Real;t2:Real):Real;
Function CpCOj(t1:Real;t2:Real):Real;
Function CpH2Oj(t1:Real;t2:Real):Real;
Function CpCO2j(t1:Real;t2:Real):Real;
Function Cpmeij(t1:Real;t2:Real):Real;
Function Cpyanj(t1:Real;t2:Real):Real;
//操作优化
procedure ComputeBurnBlowTime; //计算送风期、燃烧期
Function FUT1(Y0:Real;TJ:Real):Real; //通过热风炉的无因次风量的计算公式
Function CATG(Ui:real;Uj:real;TI:real;TU:Real):Real; //计算混风温度
procedure ptog; //计算烟气比热容公式参数
Function HI(A:Real;B:Real;C:Real;D:Real;T1:Real;T2:Real):Real;
Function HICO2(T1:Real;T2:Real):Real;
Function HIH2O(T1:Real;T2:Real):Real;
Function HIO2(T1:Real;T2:Real):Real;
Function HIN2(T1:Real;T2:Real):Real;
Function HIair(T1:Real;T2:Real):Real;
procedure OperateImProve;
procedure WriteOperationImproveFile(filename:string);
procedure ReadOperationImproveFile(filename:string);
implementation
uses SESytemMDI;
procedure WriteSESystemFile(filename:string);
var fileno:file;
begin
AssignFile(fileno, filename);
Rewrite(fileno,1);
BlockWrite(fileno, SESystemElement, SizeOf(SESystemData));
CloseFile(fileno);
end;
procedure ReadSESystemFile(filename:string);
var fileno:file;
begin
AssignFile(fileno, filename);
Reset(fileno,1);
BlockRead(fileno, SESystemElement, SizeOf(SESystemData));
CloseFile(fileno);
end;
procedure WriteOperationImproveFile(filename:string);
var fileno:file;
begin
AssignFile(fileno, filename);
Rewrite(fileno,1);
BlockWrite(fileno, OperationImproveElement, SizeOf(OperationImproveData));
CloseFile(fileno);
end;
procedure ReadOperationImproveFile(filename:string);
var fileno:file;
begin
AssignFile(fileno, filename);
Reset(fileno,1);
BlockRead(fileno, OperationImproveElement, SizeOf(OperationImproveData));
CloseFile(fileno);
end;
procedure WriteAnalogFile(filename:string);
var fileno:file;
begin
AssignFile(fileno, filename);
Rewrite(fileno,1);
BlockWrite(fileno, AnalogElement, SizeOf(AnalogData));
CloseFile(fileno);
end;
procedure ReadAnalogFile(filename:string);
var fileno:file;
begin
AssignFile(fileno, filename);
Reset(fileno,1);
BlockRead(fileno, AnalogElement, SizeOf(AnalogData));
CloseFile(fileno);
end;
procedure WriteCsvFile(filename:string);
var fileno:TextFile;
Qs,Q1s,Q2s,Q3s,Q4s,
Qz,Q1z,Q2z,Q3z,Q4z,Q5z,Q6z,Q71z,Q72z,Q8z,Q9z,Q10z,Q11z,
Qc,Qsr,HEF1,HEF2:Real;
ps1,ps2,ps3,ps4,pz1,pz2,pz3,pz4,pz5,pz6,pz71,pz72,pz8,pz9,pz10,pz11,pc:String;
begin
Q1s:=SESystemElement.q1_inheat[5];
Q2s:=SESystemElement.q2_inheat[4];
Q3s:=SESystemElement.q3_inheat[4];
Q4s:=SESystemElement.q4_inheat[4];
Q1z:=SESystemElement.q1_outheat[4];
Q2z:=SESystemElement.q2_outheat[4];
Q3z:=SESystemElement.q3_outheat[1];
Q4z:=SESystemElement.q4_outheat[3];
Q5z:=SESystemElement.q5_outheat[6];
Q6z:=SESystemElement.q6_outheat[5];
Q71z:=SESystemElement.q7_1_outheat[4];
Q72z:=SESystemElement.q7_2_outheat[4];
Q8z:=SESystemElement.q8_outheat[4];
Q9z:=SESystemElement.q9_outheat[4];
Q10z:=SESystemElement.q10_outheat[5];
Q11z:=SESystemElement.q11_outheat[4];
Qs:=Q1s+Q2s+Q3s+Q4s;
Qz:=Q1z+Q2z+Q3z+Q4z+Q5z+Q6z+Q71z+Q72z+Q8z+Q9z+Q10z+Q11z;
Qc:=Qs-Qz;
Qsr:=Q6z+Q71z+Q72z+Q8z+Q9z+Q10z+Q11z;
Qz:=Qs;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -