1 #ifndef COMBRX_H 2 #define COMBRX_H 3 #include "chemical.hpp" 4 #include "defines.hpp" 5 using namespace std; 6 7 class combrx { 8 9 private : 10 ifstream data; 11 bool stop; 12 double nO2, nCO2, nH2O; 13 char tmp[41]; 14 string CAS; 15 chemical *H2O, *N2, *O2, *CO2, *COMB; 16 double LFLo, UFLo, Hro, sum; 17 18 public: 19 combrx( const string & cas ); O2_flow()20 double O2_flow() { return (O2->M*nO2/1000.0); } //theoritical O2 flow, in kg/mol of COMB N2_flow()21 double N2_flow(){return (0.79*O2_flow()/0.21);} //theoritical N2 flow, in kg/mol of COMB CO2_flow()22 double CO2_flow() {return (nCO2*CO2->M/1000.0);} //theoritical CO2 flow, in kg/mol of COMB H2O_flow()23 double H2O_flow() {return (nH2O*H2O->M/1000.0);} //theoritical H2O flow, in kg/mol of COMB LFL(double P,double T)24 double LFL(double P, double T) {sum=LFLo + 0.03139/Hro*(T-298); if(sum<EPS) return EPS; else return sum;} //in %vol UFL(double P,double T)25 double UFL(double P, double T) {sum=UFLo - 0.03139/Hro*(T-298) + 0.206*(log10(0.101325*P)+1); if(sum>1) return (1-EPS); else return sum;} //in %vol Hcomb(double T)26 double Hcomb(double T) {return (nCO2*CO2->dH(298,T,1)+ nH2O*H2O->dH(298,T,1)-nO2*O2->dH(298,T,1)-COMB->dH(298,T,1)+Hro);} //in kJ/mol ~combrx()27 ~combrx(){delete H2O; delete N2; delete O2; delete CO2; delete COMB;} 28 }; 29 #endif 30