-
-
Notifications
You must be signed in to change notification settings - Fork 409
Closed
Description
Problem description
There are numerous thermodynamic consistency issues with MaskellSolidSolnPhase. In addition, it does not even implement many methods that are implemented in most other models that would be needed to assess thermodynamic consistency, such as cp_mole, cv_mole, partial_molar_enthalpies, etc.
In this case, I think the state of this model is poor enough that we should consider simply deprecating it and removing it.
Steps to reproduce
>>> p = ct.Solution('test/data/thermo-models.yaml', 'MaskellSolidSoln')
>>> p.TPX = 300, ct.one_atm, (0.3, 0.7)
# Under all conditions, this identity is not satisfied
>>> p.gibbs_mole, sum(p.X * p.chemical_potentials)
(-3434437.826907263, 2009969.7439611293)
# At P != 1 atm, most of the "standard state" properties are inconsistent.
>>> p.TPX = 300, 10*ct.one_atm, (0.3, 0.7)
>>> RT = ct.gas_constant * p.T
>>> p.standard_enthalpies_RT * RT, p.standard_int_energies_RT * RT + p.P * p.volume_mole
(array([ 4559.625, 10119.25 ]), array([354.6375, 848.0125]))
# For limiting compositions, many properties are non-finite:
>>> p.TPX = 300, 10*ct.one_atm, (1.0, 0.0)
>>> p.activity_coefficients
array([inf, nan])
>>> p.gibbs_mole, p.entropy_mole
(nan, nan)System information
- Cantera version: 2.6.0 or
mainat 1ab81ac
Additional context
This was discovered as part of #1299, which implements Cantera/enhancements#114.
Reactions are currently unavailable