• Main Page
  • Classes
  • Files
  • File List

DMWvapor.h

00001 /* DMWvapor header file
00002  * $Id: DMWvapor.h,v 1.7 2007/07/23 19:55:50 ghiorso Exp $
00003  * by Victor Kress
00004  */
00005 
00006 #ifndef DMWVAPOR_H
00007 #define DMWVAPOR_H
00008 
00009 
00010 #include "Phase.h"
00011 #include "SpecSolNID.h"
00012 
00026 class DMWvapor: public SpecSolNID {
00027 
00028 public:
00029   // public variables ////////////////////////////////
00031   const int NCOMP;
00033   const int NSPEC;
00035   const int H2DEX;
00037   const int N2DEX;
00039   const int O2DEX;
00041   const int S2DEX;
00043   const int CL2DEX;
00045   const int CODEX;
00047   const int H2SDEX;
00049   const int CH4DEX;
00051   const int CO2DEX;
00053   const int H2ODEX;
00055   const int SO2DEX;
00056 
00057   // creation/destruction ////////////////////////////////
00059   DMWvapor();
00061   virtual ~DMWvapor();
00062 
00063   // setting methods ////////////////////////////////////
00065   virtual void setTk(double ltk);
00067   virtual void setPa(double lpq);
00069   virtual double getGibbs();
00071   virtual double getEnthalpy();
00073   virtual double getEntropy();
00075   virtual void getVolume();
00076 
00077  protected:
00079   double pb
00081   double Z;
00083   double B,C,D,E;
00085   double dZdVm,dZdTm;
00087   double Tm;
00089   double Pm;
00091   double Vm;
00093   double sigma;
00095   double epsilon;
00097   virtual void init();
00099   double sigmavec[11];
00101   double epsilonvec[11];
00103   static double a[15];
00105   static double **k[2];
00107   static double allstoich[11][6];
00111   virtual double mufunc(int p,double *x);    //implements speciateNID form
00116   virtual double dmufunc(int m,int p,double *x);//implements speciateNID form
00120   virtual double muxs(int ispec,double *x);
00125   virtual double dmuxs(int m,int p,double *x);
00127   virtual void update() {
00128     if (!updated) {
00129       updateMvars();
00130       SpecSolution::update(); //updated variable reset here, so keep this last
00131     }
00132     return;
00133   }
00135   virtual void updateMvars()  throw(PhaseError *);
00136 };
00137 
00138 #endif
00139 
00140 
00141 
00142 
00143 
00144 
00145 
00146 
00147 
00148 
00149 
00150 
00151 
00152 
00153 

Generated on Fri Aug 6 2010 13:30:28 for phases by  doxygen 1.7.1