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