Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove unnecessary use of m_spthermo in VPStandardStateTP #588

Merged
merged 4 commits into from
Jan 23, 2019

Conversation

speth
Copy link
Member

@speth speth commented Jan 11, 2019

VPStandardStateTP and its derived classes use a method for handling individual species thermo properties which does not involve the use of the m_spthermo object inherited from class ThermoPhase. By eliminating the few instances where the m_spthermo object was being used in VPStandardStateTP, we are able to simplify things quite a bit. The main advantages are:

  • Making the weird STITbyPDSS wrapper class unnecessary
  • Making it unnecessary to supply placeholder thermo data for models that don't need this data

Eliminate several member variables which shadow variables of the
VPStandardState class, and actually contained the same information
calculated a different way.
In some models, SpeciesThermoInterpType objects on individual species are not
used. Instead of requiring the specification of placeholder thermo data, this
allows the base SpeciesThermoInterpType class to be used, which will throw an
exception if it is inadvertently used.
Since VPStandardStateTP and derived classes do not use the reference state
thermodynamic properties in the m_spthermo object, we can just install
placeholder objects there, and eliminate the wrapper clas STITbyPDSS.
PDSS objects do not interact with the MultiSpeciesThermo object for a phase,
but at most a single SpeciesThermoInterpType object.
@speth speth merged commit 4b3bb8f into Cantera:master Jan 23, 2019
@speth speth deleted the fix-spthermo branch January 8, 2020 21:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant