Commit graph

1493 commits

Author SHA1 Message Date
Ray Speth
4b5af64050 [Transport] Allow construction of LTPSpecies without XML 2017-08-15 15:24:29 -04:00
Ray Speth
d035557531 [Thermo] Make adding undefined elements the default behavior
(except when importing a phase from a CTI or XML input file)
2017-08-13 23:59:49 -04:00
Ray Speth
a520f782db [Thermo] Make PDSS_SSVol contstructible wihout XML 2017-08-13 23:59:49 -04:00
Ray Speth
286217d1d3 [Thermo] Fix invalid memory usage in PDSS_SSVol 2017-08-13 23:59:49 -04:00
Ray Speth
822cdc7d38 [Thermo] Always use PDSS_ConstVol for constant volume standard state
Remove the redundant (and questionable) implementation of this from the
PDSS_SSVol class. Also fix some values in PDSS_SSVol that were not updated
except in the constant volume case.
2017-08-13 23:59:49 -04:00
Ray Speth
4c630fc592 [Thermo] Make PDSS_HKFT constructible without XML
Also fixes PDSS_HKFT to actually make use of the units specified for each input
constant.
2017-08-13 23:59:49 -04:00
Ray Speth
0ca788bd69 [Thermo] Look up standard entropy when adding undefined elements 2017-08-13 23:59:49 -04:00
Bryan W. Weber
bce4210e1b [1D] Adds getRefineCriteria function 2017-08-09 18:46:47 -04:00
Ray Speth
572af616e7 [Thermo] Remove optional debug printing from HMWSoln 2017-08-07 21:47:10 -04:00
Ray Speth
e9f08fc58e [Thermo] Move implementation of HMWSoln into a single file 2017-08-07 21:33:02 -04:00
Ray Speth
3790115b99 [Thermo] Make HMWSolution constructible without XML 2017-08-07 21:32:15 -04:00
Ray Speth
4b69c7f265 [Thermo] Remove unused ionic radius from HMWSoln 2017-08-07 20:58:18 -04:00
Ray Speth
d07908f9c9 [Thermo] Clean up HMWSoln variables used in cutoff calculation 2017-08-07 20:58:18 -04:00
Ray Speth
1bd950fef5 [XML] Make searches for child nodes case insensitive 2017-08-07 20:58:17 -04:00
Ray Speth
6ca782030d [Thermo] Remove unused data from HMWSoln
The model implemented does not use the weak acid / "electrolyte species type"
concept, so there is no reason to read data about this from the input file.
2017-08-07 20:57:34 -04:00
Ray Speth
cfc3b728f5 [Thermo] Remove m_formGC and m_formPitzer switches from HMWSoln
These switches only had one possible value, so were not actually useful.
2017-08-07 20:57:34 -04:00
Ray Speth
e33fe6904d [Thermo] Solvent is always the first species
No useful capabilities are provided by allowing the solvent species to vary, and
there are many places where the solvent was already implicitly assumed to be the
first species.
2017-08-07 20:57:34 -04:00
Ray Speth
e3afaf5e61 [Thermo] Make IonsFromNeutral constructible without XML 2017-08-07 20:57:34 -04:00
Ray Speth
c85ba586d2 [Thermo] Remove unused variable MolarityIonicVPSSTP::indexSpecialSpecies_ 2017-08-07 20:57:34 -04:00
Ray Speth
4856d1328b [Thermo] Make IonsFromNeutralVPSSTP::neutralMoleculePhase_ a shared_ptr
Also make it non-public and add getters and setters
2017-08-07 20:57:34 -04:00
Ray Speth
aa02d24235 [Thermo] Allow instantiation of IdealSolidSolnPhase without XML 2017-08-07 20:57:34 -04:00
Ray Speth
4c489c175d [Kinetics] Fix duplicate reaction check to handle unchanged species 2017-08-02 16:46:24 -04:00
Ray Speth
513b43200c [Kinetics] Fix indexing error in Kinetics::checkDuplicates 2017-08-02 16:46:24 -04:00
Ray Speth
d4338249fb [Thermo] Remove debug exception from Phase::entropyElement298
Returning the special value ENTROPY298_UNKNOWN is (apparently) the expected
behavior if no actual value was provided, and should not result in an exception.
2017-07-30 14:28:18 -04:00
Ray Speth
3676672eec [Thermo] Allow instantiation of LatticeSolidPhase without XML 2017-07-17 23:41:44 -04:00
Ray Speth
04f10972c8 [Thermo] Store sub-lattices as shared_ptr in LatticeSolidPhase
Also eliminates undefined behavior associated with unchecked cast to
LatticePhase*, since, at least in the Li7Si3_ls.xml example file, the
sub-lattices can be represented as other ThermoPhase types,
e.g. StoichSubstance.
2017-07-17 23:41:44 -04:00
Ray Speth
d744bd9fb8 [Thermo] Allow instantiation of LatticePhase without XML 2017-07-17 23:41:44 -04:00
Ray Speth
6bfd82e0be [Thermo] Remove unused "vacancy species" from LatticePhase 2017-07-17 23:41:44 -04:00
Ray Speth
f3ba29f0bc [Thermo] Fix default molar volume in LatticePhase
Molar volume is the inverse of molar "site" density
2017-07-17 23:41:44 -04:00
Ray Speth
90d18dd337 Remove some unused, inaccessible variables 2017-07-17 23:41:44 -04:00
Ray Speth
9c084d5c84 Fix compiler warnings associated with AnyMap 2017-07-17 23:41:44 -04:00
Ray Speth
f69ef44600 [Thermo] Allow instantiation of MargulesVPSSTP without XML 2017-07-17 23:41:44 -04:00
Ray Speth
4818c87344 [Thermo] Remove unused members of MargulesVPSSTP 2017-07-17 23:41:44 -04:00
Tilman Bremer
b41038f84b stylevalue 'setlinewidth' is deprecated, replaced it together with the whole style argument by 'penwidth' 2017-07-11 18:59:03 -04:00
Steven DeCaluwe
04be9888ed Update importKinetics to identify unspecified electrochemical reactions
Add test coverage for beta default value for electrochem reactions
2017-07-06 18:14:09 -04:00
Ray Speth
94a4439bd4 [1D] Impose upper temperature bound based on thermo data
This fixes some platform-specific test failures when compiling in debug mode,
where estimated temperatures during the Newton iterations were too high,
resulting in non-finite reaction rates.
2017-05-16 13:55:40 -04:00
Ray Speth
22ecade329 [1D] Use named offsets for solution components 2017-05-16 13:55:40 -04:00
bangshiuh
6b6d758f23 [1D] Use named offset constants instead of raw numbers 2017-05-16 13:55:40 -04:00
bangshiuh
9dd0134e31 [1D] Add function for importing transport of electron 2017-05-16 13:55:40 -04:00
bangshiuh
e2f718c65b [1D/Python] Add IonFlow to Python interface, with example and test 2017-05-16 13:55:40 -04:00
bangshiuh
3b12c6d662 [1D] Introduction of IonFlow flame class
tested successfully with gri30
2017-05-16 13:55:40 -04:00
Ray Speth
52dbe8c007 [1D] Correct handling of boundary conditions when energy equation is disabled 2017-03-29 18:46:30 -04:00
Ray Speth
bfdc2b9e1d [Thermo] Allow instantiation of DebyeHuckel without XML 2017-03-25 23:42:46 -04:00
Ray Speth
974bbc7da4 Add electron to the built-in elements as an "isotope" 2017-03-25 23:42:46 -04:00
Ray Speth
56022e8989 Introduce class AnyMap 2017-03-25 23:42:46 -04:00
Ray Speth
2c3512c22a [Thermo] Fix PDSS_HKFT initialization when one property is not given
Calculating one of G0, H0, or S0 requires the parent ThermoPhase object, so this
calculation has to be delayed until m_tp has been set.
2017-03-02 19:53:23 -05:00
Steven DeCaluwe
51f419fbad Enabling charge-transfer/electrochemical surface reactions
The previous formulation will only consider a rection as electrochemical
if a beta value is supplied for that reaction *and* the reaction is an
'edge_reaction.'  This is problematic for two reasons: (1) many/most
charge-transfer reactions of interest occur at two-phase boundaries (see,
for example, Li-ion batteries and PEM fuel cells), not the three-phase-
boundary-like edges (which are most relevant for SOFCs).  (2) determining
whether a reaction is electrochemical or not should not rely at all upon
user input - the program itself should check to see whether charge is
transferred between phases, and the appropriate steps should be taken
during rate-of-progress calcuations.

This commit addresses the former issue.  Currently, if a charge-transfer
reaction is written as a surface_reaction, the code does not apply the
voltage correction to the forward rate.  By default, then, the entire
voltage correction is applied to the reverse reaction, which is the same
as setting beta = 0; not a good 'default' behavior (beta = 0.5 is a more
appropriate default).  With this change, surface reactions can now be
supplied with a beta value in cti or xml formats, and will be recognized
as a charge transfer reaction.

Longer term, it would be better to change the constructor routines such
that charge transfer is automatically detected and handled, rather than
relying upon user-specified flags.
2017-02-25 19:13:38 -05:00
Ray Speth
afafa34c06 [Thermo] Remove unimplemented options for m_formGC from DebyeHuckel 2017-02-22 22:18:40 -05:00
Ray Speth
a6ac446021 [Thermo] Allow instantiation of IdealMolalSoln without XML 2017-02-22 22:18:40 -05:00
Ray Speth
f8ef4a8b2b [Thermo] Allow instantiation of RedlichKisterVPSSTP without XML 2017-02-22 22:18:40 -05:00