[Test/Equil] Update tests to sometimes use VCS 'estimate_equil' option

This commit is contained in:
Ray Speth 2016-04-14 21:51:53 -04:00
parent ef441e4182
commit 70824559ce
4 changed files with 82 additions and 79 deletions

View file

@ -169,7 +169,7 @@ class TestEquil_GasCarbon(utilities.CanteraTest):
0.25*cls.gas.n_atoms(cls.fuel,'H'))
cls.n_species = cls.gas.n_species + cls.carbon.n_species
def solve(self, solver):
def solve(self, solver, **kwargs):
n_points = 12
T = 300
P = 101325
@ -184,7 +184,7 @@ class TestEquil_GasCarbon(utilities.CanteraTest):
mix.P = P
# equilibrate the mixture adiabatically at constant P
mix.equilibrate('HP', solver=solver, max_steps=1000)
mix.equilibrate('HP', solver=solver, max_steps=1000, **kwargs)
data[i,:2] = (phi[i], mix.T)
data[i,2:] = mix.species_moles
@ -195,3 +195,6 @@ class TestEquil_GasCarbon(utilities.CanteraTest):
def test_vcs(self):
self.solve('vcs')
def test_vcs_est(self):
self.solve('vcs', estimate_equil=-1)

View file

@ -161,7 +161,7 @@ class TestMixture(utilities.CanteraTest):
self.mix.P = 2 * ct.one_atm
E1 = [self.mix.element_moles(m) for m in range(self.mix.n_elements)]
self.mix.equilibrate('TP')
self.mix.equilibrate('TP', solver='vcs', estimate_equil=-1)
E2 = [self.mix.element_moles(m) for m in range(self.mix.n_elements)]
self.assertArrayNear(E1, E2)

View file

@ -74,26 +74,26 @@ NaCl_electrolyte 0 0 0 UnkType: -1 5 0.000000e+00
Phase IDs of species
species phaseID phaseName Initial_Estimated_Moles Species_Type
H2O(L) 0 NaCl_electrolyte 2 Mol_Num
Cl- 0 NaCl_electrolyte 0 Mol_Num
H+ 0 NaCl_electrolyte 0 Mol_Num
Na+ 0 NaCl_electrolyte 0 Mol_Num
OH- 0 NaCl_electrolyte 0 Mol_Num
O2 1 air 0 Mol_Num
H2 1 air 0 Mol_Num
CO2 1 air 0 Mol_Num
H2O 1 air 0 Mol_Num
NaCl 1 air 0 Mol_Num
N2 1 air 4 Mol_Num
OH 1 air 0 Mol_Num
NaCl(S) 2 NaCl(S) 5 Mol_Num
H2O(L) 0 NaCl_electrolyte N/A Mol_Num
Cl- 0 NaCl_electrolyte N/A Mol_Num
H+ 0 NaCl_electrolyte N/A Mol_Num
Na+ 0 NaCl_electrolyte N/A Mol_Num
OH- 0 NaCl_electrolyte N/A Mol_Num
O2 1 air N/A Mol_Num
H2 1 air N/A Mol_Num
CO2 1 air N/A Mol_Num
H2O 1 air N/A Mol_Num
NaCl 1 air N/A Mol_Num
N2 1 air N/A Mol_Num
OH 1 air N/A Mol_Num
NaCl(S) 2 NaCl(S) N/A Mol_Num
--------------------------------------------------------------------------------
Information about phases
PhaseName PhaseNum SingSpec GasPhase EqnState NumSpec TMolesInert TKmoles
NaCl_electrolyte 0 0 0 UnkType: -1 5 0.000000e+00 2.000000e+00
air 1 0 1 Ideal Gas 7 0.000000e+00 4.000000e+00
NaCl(S) 2 1 0 Stoich Sub 1 0.000000e+00 5.000000e+00
NaCl_electrolyte 0 0 0 UnkType: -1 5 0.000000e+00 N/A
air 1 0 1 Ideal Gas 7 0.000000e+00 N/A
NaCl(S) 2 1 0 Stoich Sub 1 0.000000e+00 N/A
Elemental Abundances: Target_kmol ElemType ElActive
O 2.000000000000E+00 0 1
@ -156,25 +156,25 @@ VCS CALCULATION METHOD
Si 0.000000000000E+00 0.000000000000E+00 0
Ca 0.000000000000E+00 0.000000000000E+00 0
USER ESTIMATE OF EQUILIBRIUM
MODIFIED LINEAR PROGRAMMING ESTIMATE OF EQUILIBRIUM - forced
Stan. Chem. Pot. in J/kmol
SPECIES FORMULA VECTOR STAN_CHEM_POT EQUILIBRIUM_EST. Species_Type
O H C N Na Cl cn_N Fe E Si Ca PhaseID
NaCl(S) 0 0 0 0 1 1 0 0 0 0 0 2 -4.32620E+08 5.00000E+00 Mol_Num
Na+ 0 0 0 0 1 0 1 0 -1 0 0 0 -2.57752E+08 5.00000E+00 Mol_Num
Cl- 0 0 0 0 0 1 -1 0 1 0 0 0 -1.83974E+08 5.00000E+00 Mol_Num
N2 0 0 0 2 0 0 0 0 0 0 0 1 -5.71281E+07 4.00000E+00 Mol_Num
H2O(L) 1 2 0 0 0 0 0 0 -0 0 0 0 -3.06686E+08 2.00000E+00 Mol_Num
H+ 0 1 0 0 0 0 1 0 -1 0 0 0 0.00000E+00 0.00000E+00 Mol_Num
Na+ 0 0 0 0 1 0 1 0 -1 0 0 0 -2.57752E+08 0.00000E+00 Mol_Num
OH 1 1 0 0 0 0 0 0 0 0 0 1 -2.26792E+08 0.00000E+00 Mol_Num
H2O(L) 1 2 0 0 0 0 0 0 -0 0 0 0 -3.06686E+08 1.84000E+00 Mol_Num
OH- 1 1 0 0 0 0 -1 0 1 0 0 0 -2.26784E+08 1.60000E-01 Mol_Num
CO2 2 0 1 0 0 0 0 0 0 0 0 1 -4.57248E+08 0.00000E+00 Mol_Num
H2 0 2 0 0 0 0 0 0 0 0 0 1 -3.89623E+07 0.00000E+00 Mol_Num
H2O 1 2 0 0 0 0 0 0 0 0 0 1 -2.98124E+08 0.00000E+00 Mol_Num
NaCl 0 0 0 0 1 1 0 0 0 0 0 1 -2.49904E+08 0.00000E+00 Mol_Num
Cl- 0 0 0 0 0 1 -1 0 1 0 0 0 -1.83974E+08 0.00000E+00 Mol_Num
O2 2 0 0 0 0 0 0 0 0 0 0 1 -6.11650E+07 0.00000E+00 Mol_Num
OH- 1 1 0 0 0 0 -1 0 1 0 0 0 -2.26784E+08 0.00000E+00 Mol_Num
H2 0 2 0 0 0 0 0 0 0 0 0 1 -3.89623E+07 2.51762E-14 Mol_Num
H+ 0 1 0 0 0 0 1 0 -1 0 0 0 0.00000E+00 1.60000E-01 Mol_Num
H2O 1 2 0 0 0 0 0 0 0 0 0 1 -2.98124E+08 2.99919E-20 Mol_Num
NaCl 0 0 0 0 1 1 0 0 0 0 0 1 -2.49904E+08 4.71534E-44 Mol_Num
O2 2 0 0 0 0 0 0 0 0 0 0 1 -6.11650E+07 2.05299E-41 Mol_Num
NaCl(S) 0 0 0 0 1 1 0 0 0 0 0 2 -4.32620E+08 0.00000E+00 Mol_Num
OH 1 1 0 0 0 0 0 0 0 0 0 1 -2.26792E+08 4.94642E-14 Mol_Num
@ -195,30 +195,30 @@ VCS CALCULATION METHOD
NaCl(S) 4.7876961E+00 1.0000000E+00 -1.7452E+02 0
N2 4.0000000E+00 9.7628453E-01 -2.3069E+01 0
H2O(L) 1.9028340E+00 8.1756460E-01 -1.2400E+02 0
Na+ 2.1230388E-01 9.1217698E-02 -1.0214E+02 0
OH- 1.8416159E-09 7.9126189E-10 -1.0883E+02 0
Cl- 2.1230388E-01 9.1217698E-02 -7.2378E+01 0
OH- 1.8416159E-09 7.9126188E-10 -1.0883E+02 0
OH 3.7470071E-07 9.1453628E-08 -1.0769E+02 0
CO2 0.0000000E+00 0.0000000E+00 -5.0822E+02 0
Cl- 2.1230388E-01 9.1217698E-02 -7.2378E+01 KMolNum
Na+ 2.1230388E-01 9.1217698E-02 -1.0214E+02 KMolNum
H2O 9.7165652E-02 2.3715331E-02 -1.2400E+02 KMolNum
H2 1.8735036E-07 4.5726814E-08 -3.2618E+01 KMolNum
H+ 1.8416159E-09 7.9126189E-10 -1.5174E+01 KMolNum
H+ 1.8416159E-09 7.9126188E-10 -1.5174E+01 KMolNum
NaCl 3.9992758E-32 9.7610778E-33 -1.7452E+02 KMolNum
O2 8.9458127E-69 2.1834146E-69 -1.8277E+02 KMolNum
O2 8.9458124E-69 2.1834146E-69 -1.8277E+02 KMolNum
--------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------------
|ComponentID| 0 1 2 3 4 5 6 | |
| Components| NaCl(S) N2 H2O(L) Na+ OH- OH CO2 | |
| Components| NaCl(S) N2 H2O(L) Cl- OH- OH CO2 | |
NonComponent | Moles | 4.79 4 1.9 0.212 1.84e-09 3.75e-07 0 | DG/RT Rxn |
-------------------------------------------------------------------------------------------------------------------
7 H+ | 1.84e-09 | 0.00 0.00 -1.00 0.00 1.00 0.00 0.00 | 3.09e-09 |
8 H2O | 0.0972 | 0.00 0.00 -1.00 0.00 0.00 0.00 0.00 | 8.53e-10 |
9 NaCl | 4e-32 | -1.00 0.00 0.00 0.00 0.00 0.00 0.00 | 2.52e-10 |
10 Cl- | 0.212 | -1.00 0.00 0.00 1.00 0.00 0.00 0.00 | -1.97e-09 |
11 H2 | 1.87e-07 | 0.00 0.00 -2.00 0.00 0.00 2.00 0.00 | 2.02e-09 |
12 O2 | 8.95e-69 | 0.00 0.00 2.00 0.00 0.00 -4.00 0.00 | 2.79e-08 |
7 H+ | 1.84e-09 | 0.00 0.00 -1.00 0.00 1.00 0.00 0.00 | -6.4e-10 |
8 H2O | 0.0972 | 0.00 0.00 -1.00 0.00 0.00 0.00 0.00 | -1.27e-10 |
9 NaCl | 4e-32 | -1.00 0.00 0.00 0.00 0.00 0.00 0.00 | -2e-11 |
10 O2 | 8.95e-69 | 0.00 0.00 2.00 0.00 0.00 -4.00 0.00 | -2.2e-09 |
11 Na+ | 0.212 | -1.00 0.00 0.00 1.00 0.00 0.00 0.00 | 1.56e-10 |
12 H2 | 1.87e-07 | 0.00 0.00 -2.00 0.00 0.00 2.00 0.00 | -2.8e-10 |
-------------------------------------------------------------------------------------------------------------------
@ -229,9 +229,9 @@ VCS CALCULATION METHOD
| Element | O H C N Na Cl cn_NaCl_el Fe E Si Ca | |
PhaseName |KMolTarget | 2 4 0 8 5 5 0 0 0 0 0 | Gibbs Total |
------------------------------------------------------------------------------------------------------------------------------------------------------------------------
0 NaCl_electro | 2.327e+00 | 1.9 3.81 0 0 0.212 0.212 0 0 0 0 0 | -2.73008478317E+02 |
1 air | 4.097e+00 | 0.0972 0.194 0 8 4e-32 4e-32 0 0 0 0 0 | -1.04325817410E+02 |
2 NaCl(S) | 4.788e+00 | 0 0 0 0 4.79 4.79 0 0 0 0 0 | -8.35534332099E+02 |
0 NaCl_electro | 2.327e+00 | 1.9 3.81 0 0 0.212 0.212 0 0 0 0 0 | -2.73008478356E+02 |
1 air | 4.097e+00 | 0.0972 0.194 0 8 4e-32 4e-32 0 0 0 0 0 | -1.04325817395E+02 |
2 NaCl(S) | 4.788e+00 | 0 0 0 0 4.79 4.79 0 0 0 0 0 | -8.35534332075E+02 |
------------------------------------------------------------------------------------------------------------------------------------------------------------------------
TOTAL | 1.121e+01 | 2 4 0 8 5 5 0 0 0 0 0 | -1.21286862783E+03 |
------------------------------------------------------------------------------------------------------------------------------------------------------------------------
@ -261,30 +261,30 @@ Chemical Potentials of the Species: (dimensionless)
NaCl(S) 4.7876961E+00 -1.7451699E+02 0.0000000E+00 0.0000000E+00 | 0.0000000E+00 | -1.7452E+02 | | -8.355343321E+02 |
N2 4.0000000E+00 -2.3045224E+01 0.0000000E+00 -2.4001206E-02 | 0.0000000E+00 | -2.3069E+01 | | -9.227690170E+01 |
H2O(L) 1.9028340E+00 -1.2371564E+02 -8.6317845E-02 -2.0142535E-01 | 0.0000000E+00 | -1.2400E+02 | | -2.359578440E+02 |
Na+ 2.1230388E-01 -1.0397603E+02 2.1455995E-01 -2.3945063E+00 | 0.0000000E+00 | -1.0214E+02 |(4.01653E+00)| -2.168459951E+01 |
OH- 1.8416159E-09 -9.1483592E+01 -4.0506503E-01 -2.0957392E+01 |-0.0000000E+00 | -1.0883E+02 |(4.01653E+00)| -2.004221674E-07 |
OH 3.7470071E-07 -9.1487044E+01 0.0000000E+00 -1.6207434E+01 | 0.0000000E+00 | -1.0769E+02 | | -4.035319769E-05 |
Cl- 2.1230388E-01 -7.4214139E+01 2.1455995E-01 -2.3945063E+00 |-0.0000000E+00 | -7.2378E+01 |(4.01653E+00)| -1.536603460E+01 |
OH- 1.8416159E-09 -9.1483592E+01 -4.0506503E-01 -2.0957392E+01 |-0.0000000E+00 | -1.0883E+02 |(4.01653E+00)| -2.004221669E-07 |
OH 3.7470071E-07 -9.1487044E+01 0.0000000E+00 -1.6207434E+01 | 0.0000000E+00 | -1.0769E+02 | | -4.035319762E-05 |
CO2 0.0000000E+00 -1.8445182E+02 0.0000000E+00 -3.2377221E+02 | 0.0000000E+00 | -5.0822E+02 | | -0.000000000E+00 |
Cl- 2.1230388E-01 -7.4214139E+01 2.1455995E-01 -2.3945063E+00 |-0.0000000E+00 | -7.2378E+01 |(4.01653E+00)| -1.536603459E+01 |
H2O 9.7165652E-02 -1.2026175E+02 0.0000000E+00 -3.7416336E+00 | 0.0000000E+00 | -1.2400E+02 | | -1.204886924E+01 |
H2 1.8735036E-07 -1.5717224E+01 0.0000000E+00 -1.6900581E+01 | 0.0000000E+00 | -3.2618E+01 | | -6.110957376E-06 |
H+ 1.8416159E-09 0.0000000E+00 1.7669917E+00 -2.0957392E+01 | 0.0000000E+00 | -1.5174E+01 |(4.01653E+00)| -2.794443228E-08 |
NaCl 3.9992758E-32 -1.0081009E+02 0.0000000E+00 -7.3706905E+01 | 0.0000000E+00 | -1.7452E+02 | | -6.979415884E-30 |
O2 8.9458127E-69 -2.4673669E+01 0.0000000E+00 -1.5809748E+02 | 0.0000000E+00 | -1.8277E+02 | | -1.635036478E-66 |
Na+ 2.1230388E-01 -1.0397603E+02 2.1455995E-01 -2.3945063E+00 | 0.0000000E+00 | -1.0214E+02 |(4.01653E+00)| -2.168459953E+01 |
H2O 9.7165652E-02 -1.2026175E+02 0.0000000E+00 -3.7416336E+00 | 0.0000000E+00 | -1.2400E+02 | | -1.204886923E+01 |
H2 1.8735036E-07 -1.5717224E+01 0.0000000E+00 -1.6900581E+01 | 0.0000000E+00 | -3.2618E+01 | | -6.110957380E-06 |
H+ 1.8416159E-09 0.0000000E+00 1.7669917E+00 -2.0957392E+01 | 0.0000000E+00 | -1.5174E+01 |(4.01653E+00)| -2.794443221E-08 |
NaCl 3.9992758E-32 -1.0081009E+02 0.0000000E+00 -7.3706905E+01 | 0.0000000E+00 | -1.7452E+02 | | -6.979415882E-30 |
O2 8.9458124E-69 -2.4673669E+01 0.0000000E+00 -1.5809748E+02 | 0.0000000E+00 | -1.8277E+02 | | -1.635036418E-66 |
-1.212868628E+03
---------------------------------------------------------------------------------------------------------------------------------------------------
Counters: Iterations Time (seconds)
vcs_basopt: 3 NA
vcs_TP: 30 NA
vcs_basopt: 2 NA
vcs_TP: 18 NA
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
TCounters: Num_Calls Total_Its Total_Time (seconds)
vcs_basopt: 3 3 NA
vcs_TP: 1 30 NA
vcs_inest: 0 NA
vcs_basopt: 2 2 NA
vcs_TP: 1 18 NA
vcs_inest: 1 NA
vcs_TotalTime: NA
Results from vcs:
@ -312,16 +312,16 @@ NaCl(S) 4.788e+00 1.000e+00 -4.326e+08
VCS solver succeeded
*************** NaCl_electrolyte *****************
Moles: 2.32744
NaCl_electrolyte:
temperature 298.15 K
pressure 101325 Pa
density 1216.41 kg/m^3
mean mol. weight 20.0596 amu
potential 0 V
pH 6.59
pH 6.59
1 kg 1 kmol
----------- ------------
enthalpy -1.35106e+07 -2.71e+08 J
@ -329,10 +329,10 @@ Moles: 2.32744
entropy 3304.6 6.629e+04 J/K
Gibbs function -1.44958e+07 -2.908e+08 J
heat capacity c_p 3053.16 6.125e+04 J/K
heat capacity c_v <not implemented>
heat capacity c_v <not implemented>
X Molalities Chem.Pot. ChemPotSS ActCoeffMolal
(J/kmol) (J/kmol)
(J/kmol) (J/kmol)
------------- ------------ ------------ ------------ ------------
H2O(L) 0.817565 55.5084 -3.07399e+08 -3.06686e+08 0.917303
Cl- 0.0912177 6.19321 -1.79421e+08 -1.83974e+08 1.01322
@ -342,14 +342,14 @@ Moles: 2.32744
*************** air *****************
Moles: 4.09717
air:
temperature 298.15 K
pressure 101325 Pa
density 1.13533 kg/m^3
mean mol. weight 27.7764 amu
1 kg 1 kmol
----------- ------------
enthalpy -2.0647e+05 -5.735e+06 J
@ -358,12 +358,12 @@ Moles: 4.09717
Gibbs function -2.2725e+06 -6.312e+07 J
heat capacity c_p 1052.3 2.923e+04 J/K
heat capacity c_v 753 2.092e+04 J/K
X Y Chem. Pot. / RT
X Y Chem. Pot. / RT
------------- ------------ ------------
O2 2.18341e-69 2.51533e-69 -182.771
H2 4.57268e-08 3.31864e-09 -32.6178
CO2 0 0
CO2 0 0
H2O 0.0237153 0.0153814 -124.003
NaCl 9.76108e-33 2.05377e-32 -174.517
N2 0.976285 0.984619 -23.0692
@ -371,14 +371,14 @@ Moles: 4.09717
*************** NaCl(S) *****************
Moles: 4.7877
NaCl(S):
temperature 298.15 K
pressure 101325 Pa
density 2165 kg/m^3
mean mol. weight 58.4425 amu
1 kg 1 kmol
----------- ------------
enthalpy -7.0346e+06 -4.111e+08 J
@ -387,8 +387,8 @@ Moles: 4.7877
Gibbs function -7.4025e+06 -4.326e+08 J
heat capacity c_p 864.12 5.05e+04 J/K
heat capacity c_v 864.12 5.05e+04 J/K
X Y Chem. Pot. / RT
X Y Chem. Pot. / RT
------------- ------------ ------------
NaCl(S) 1 1 -174.517

View file

@ -80,7 +80,7 @@ int main(int argc, char** argv)
try {
int estimateEquil = 0;
int estimateEquil = -1;
double T = 298.15;
double pres = OneAtm;