9 #ifndef VCS_MULTIPHASEEQUIL_H 10 #define VCS_MULTIPHASEEQUIL_H 134 int printLvl= 0, doublereal err = 1.0e-6,
158 int printLvl= 0, doublereal err = 1.0e-6,
194 int equilibrate_HP(doublereal Htarget,
int XY,
double Tlow,
double Thigh,
195 int estimateEquil = 0,
196 int printLvl = 0, doublereal err = 1.0E-6,
230 int estimateEquil = 0,
231 int printLvl = 0, doublereal err = 1.0E-6,
263 int estimateEquil = 0,
264 int printLvl = 0, doublereal err = 1.0E-6,
290 void reportCSV(
const std::string& reportFile);
vector_int m_order
Vector that takes into account of the current sorting of the species.
int equilibrate_TP(int estimateEquil=0, int printLvl=0, doublereal err=1.0e-6, int maxsteps=VCS_MAXSTEPS, int loglevel=-99)
Equilibrate the solution using the current element abundances stored in the MultiPhase object using c...
MultiPhase * m_mix
Pointer to the MultiPhase mixture that will be equilibrated.
int iterations() const
return the number of iterations
size_t numComponents() const
reports the number of components in the equilibration problem
int equilibrate_HP(doublereal Htarget, int XY, double Tlow, double Thigh, int estimateEquil=0, int printLvl=0, doublereal err=1.0E-6, int maxsteps=VCS_MAXSTEPS, int loglevel=-99)
Equilibrate the solution using the current element abundances stored in the MultiPhase object using e...
size_t component(size_t m) const
Return the index of the ith component.
#define VCS_MAXSTEPS
Maximum steps in the inner loop.
friend int vcs_Cantera_update_vprob(MultiPhase *mphase, VCS_PROB *vprob)
Translate a MultiPhase information into a VCS_PROB problem definition object.
int m_printLvl
Print level from the VCSnonlinear package.
int vcs_timing_print_lvl
Global hook for turning on and off time printing.
Headers for the MultiPhase object that is used to set up multiphase equilibrium problems (see Equilfu...
void reportCSV(const std::string &reportFile)
Report the equilibrium answer in a comma separated table format.
int vcs_Cantera_update_vprob(MultiPhase *mphase, VCS_PROB *vprob)
Translate a MultiPhase information into a VCS_PROB problem definition object.
int vcs_Cantera_to_vprob(MultiPhase *mphase, VCS_PROB *vprob)
Translate a MultiPhase object into a VCS_PROB problem definition object.
std::vector< int > vector_int
Vector of ints.
Header file for the internal object that holds the vcs equilibrium problem (see Class VCS_SOLVE and E...
size_t numElemConstraints() const
Reports the number of element constraints in the equilibration problem.
Cantera's Interface to the Multiphase chemical equilibrium solver.
A class for multiphase mixtures.
int equilibrate_SP(doublereal Starget, double Tlow, double Thigh, int estimateEquil=0, int printLvl=0, doublereal err=1.0E-6, int maxsteps=VCS_MAXSTEPS, int loglevel=-99)
Equilibrate the solution using the current element abundances stored in the MultiPhase object using c...
Header for the Interface class for the vcs thermo equilibrium solver package,.
int m_iter
Iteration Count.
int equilibrate(int XY, int estimateEquil=0, int printLvl=0, doublereal err=1.0e-6, int maxsteps=VCS_MAXSTEPS, int loglevel=-99)
Equilibrate the solution using the current element abundances stored in the MultiPhase object...
void getStoichVector(size_t rxn, vector_fp &nu)
Get the stoichiometric reaction coefficients for a single reaction index.
int determine_PhaseStability(int iph, double &funcStab, int printLvl=0, int logLevel=-99)
Determine the phase stability of a phase at the current conditions.
VCS_SOLVE m_vsolve
The object that does all of the equilibration work.
std::vector< double > vector_fp
Turn on the use of stl vectors for the basic array type within cantera Vector of doubles.
VCS_PROB m_vprob
Object which contains the problem statement.
friend int vcs_Cantera_to_vprob(MultiPhase *mphase, VCS_PROB *vprob)
Translate a MultiPhase object into a VCS_PROB problem definition object.
DenseMatrix m_N
Stoichiometric matrix.
Namespace for the Cantera kernel.
vector_int m_species
Vector of indices for species that are included in the calculation.
Interface class for the vcs thermo equilibrium solver package, which generally describes the problem ...
int equilibrate_TV(int XY, doublereal xtarget, int estimateEquil=0, int printLvl=0, doublereal err=1.0E-6, int maxsteps=VCS_MAXSTEPS, int logLevel=-99)
Equilibrate the solution using the current element abundances stored in the MultiPhase object using c...
A class for full (non-sparse) matrices with Fortran-compatible data storage, which adds matrix operat...
This is the main structure used to hold the internal data used in vcs_solve_TP(), and to solve TP sys...