📄 vapour_lost.cpp
字号:
#include <iostream.h>
#include <stdio.h>
#include <math.h>
#include "IF97.h"
#define N 57
void main()
{
int i,b=4; //b根据要计算的水蒸气(工质)所在的区域选择不同的值,湿蒸汽4区,过热蒸汽选2
double pitch[N],aa[N],bb[N],cc[N],pitch0[N],sz0[N],s0[N];
double sp0[N],sp1[N],sp2[N],tp0[N],tp1[N],rtp1[N],tp2[N],s1[N],s2[N];
double si1[N],i_is_01[N],ti1[N],rti1[N],i_is_12[N],si2[N],i_is_02[N],ti2[N],ti_is_02[N];
double sz[N],sz2[N];
double hn[N],hc[N];
double reaction[N];
double eff_tt[N],eff_ts[N];
double ti0[N];
///////////////////////////////////////////////////////////
// 求静叶损失系数 ///
//////////////////////////////////////////////////////////
FILE *fp;
fp=fopen("s0.dat","r");//读叶高百分数和静叶进口的熵增
for(i=0;i<N;i++)
{
fscanf(fp,"%lf %lf",&pitch0[i],&sz0[i]);
// s1[i]=(s0*1000+sz[i])/1000.0;
s0[i]=sz0[i]/1000.0;
}
fclose(fp);
fp=fopen("ti0.dat","r");//读叶高百分数和静叶进口的总熵
for(i=0;i<N;i++)
{
fscanf(fp,"%lf %lf",&pitch0[i],&ti0[i]);
// s1[i]=(s0*1000+sz[i])/1000.0;
ti0[i]=ti0[i]/1000.0;
}
fclose(fp);
fp=fopen("s1.dat","r");//读叶高百分数和静叶出口的熵增
for(i=0;i<N;i++)
{
fscanf(fp,"%lf %lf",&pitch[i],&sz[i]);
// s1[i]=(s0*1000+sz[i])/1000.0;
s1[i]=sz[i]/1000.0;
}
fclose(fp);
/*
fp=fopen("ti0.dat","r");//
for(i=0;i<N;i++)
{
fscanf(fp,"%lf",&ti0[i]);
}
fclose(fp);
*/
fp=fopen("sp1.dat","r");//读静叶出口静压
for(i=0;i<N;i++)
{
fscanf(fp,"%lf %lf",&aa[i],&bb[i]);
sp1[i]=bb[i]/1000000.0;
}
fclose(fp);
// cout<<" "<<sp1[28]<<" "<<s1[28]<<endl;
for(i=0;i<N;i++)//求静叶出口的等熵焓和静焓
{
PS2H97(sp1[i],s1[i],si1[i],b);
PS2H97(sp1[i],s0[i],i_is_01[i],b);
}
// cout<<" "<<si1[28]<<endl;
cout<<"静叶损失系数"<<endl;
for(i=0;i<N;i++)
{
hn[i]=(si1[i]-i_is_01[i])/(ti0[i]-i_is_01[i]);
cout<<hn[i]<<endl;
cc[i]=pitch[i]*100.0;
}
fp=fopen("hn.dat","w");
for(i=0;i<N;i++)
{
fprintf(fp,"%lf %lf",hn[i],cc[i]);
fprintf(fp,"\n");
}
fclose(fp);
///////////////////////////////////////////////////////////
// 求动叶损失系数 ///
//////////////////////////////////////////////////////////
fp=fopen("rtp1.dat","r");//读静叶出口的相对总压
for(i=0;i<N;i++)
{
fscanf(fp,"%lf %lf",&aa[i],&bb[i]);
rtp1[i]=bb[i]/1000000.0;
}
fclose(fp);
fp=fopen("sp2.dat","r");//读动叶出口的静压
for(i=0;i<N;i++)
{
fscanf(fp,"%lf %lf",&aa[i],&bb[i]);
sp2[i]=bb[i]/1000000.0;
}
fclose(fp);
fp=fopen("s2.dat","r");//读动叶出口的熵
for(i=0;i<N;i++)
{
fscanf(fp,"%lf %lf",&aa[i],&sz2[i]);
// s2[i]=(s0*1000+sz2[i])/1000.0;
s2[i]=sz2[i]/1000.0;
}
fclose(fp);
for(i=0;i<N;i++)//计算静叶出口相对总焓,动叶出口等熵焓,静焓
{
PS2H97(rtp1[i],s1[i],rti1[i],b);
PS2H97(sp2[i],s1[i],i_is_12[i],b);
PS2H97(sp2[i],s2[i],si2[i],b);
}
cout<<s1[27]<<" "<<s2[27]<<endl;
/*
fp=fopen("rti1.dat","r");
for(i=0;i<N;i++)
{
fscanf(fp,"%lf",&aa[i]);
rti1[i]=aa[i]/1000.0;
}
fclose(fp);
*/
// cout<<" "<<si2[27]<<" "<<i_is_12[27]<<" "<<rti1[27]<<endl;
cout<<"动叶损失系数"<<endl;
for(i=0;i<N;i++)
{
hc[i]=(si2[i]-i_is_12[i])/(rti1[i]-i_is_12[i]);
cout<<hc[i]<<endl;
}
fp=fopen("hc.dat","w");
for(i=0;i<N;i++)
{
fprintf(fp,"%lf %lf",hc[i],cc[i]);
fprintf(fp,"\n");
}
fclose(fp);
///////////////////////////////////////////////////////////
// 求级的反动度 ///
//////////////////////////////////////////////////////////
cout<<"级的反动度"<<endl;
for(i=0;i<N;i++)
{
PS2H97(sp2[i],s0[i],i_is_02[i],b);
reaction[i]=(si1[i]-i_is_12[i])/(ti0[i]-i_is_02[i]);
cout<<reaction[i]<<endl;
}
cout<<endl;
fp=fopen("react.dat","w");
for(i=0;i<N;i++)
{
fprintf(fp,"%lf %lf",reaction[i],cc[i]);
fprintf(fp,"\n");
}
fclose(fp);
///////////////////////////////////////////////////////////
// 求级的总总效率 ///
//////////////////////////////////////////////////////////
fp=fopen("tp2.dat","r");//读动叶出口总压
for(i=0;i<N;i++)
{
fscanf(fp,"%lf %lf",&aa[i],&bb[i]);
tp2[i]=bb[i]/1000000.0;
}
fclose(fp);
cout<<"级的总总效率"<<endl;
for(i=0;i<N;i++)//计算动叶出口总焓,总等熵焓和总总效率
{
PS2H97(tp2[i],s2[i],ti2[i],b);
PS2H97(tp2[i],s0[i],ti_is_02[i],b);
eff_tt[i]=(ti0[i]-ti2[i])/(ti0[i]-ti_is_02[i]);
cout<<eff_tt[i]<<endl;
}
cout<<endl;
fp=fopen("eff_tt.dat","w");
for(i=0;i<N;i++)
{
fprintf(fp,"%lf %lf",eff_tt[i],cc[i]);
fprintf(fp,"\n");
}
fclose(fp);
///////////////////////////////////////////////////////////
// 求级的总静效率 ///
//////////////////////////////////////////////////////////
cout<<"级的总静效率"<<endl;
for(i=0;i<N;i++)
{
eff_ts[i]=(ti0[i]-ti2[i])/(ti0[i]-i_is_02[i]);
cout<<eff_ts[i]<<endl;
}
fp=fopen("eff_ts.dat","w");
for(i=0;i<N;i++)
{
fprintf(fp,"%lf %lf",eff_ts[i],cc[i]);
fprintf(fp,"\n");
}
fclose(fp);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -