Commit graph

43 commits

Author SHA1 Message Date
Ray Speth
5bc4a12e2e Add options for handling Species containing undefined elements 2014-10-17 23:44:37 +00:00
Ray Speth
26b6f190f3 Introduce class Species 2014-10-17 23:44:31 +00:00
Ray Speth
5b1b08849c Additional uses for getValue with default value 2014-10-03 01:45:54 +00:00
Ray Speth
4baccc732c [Thermo] Simplify interface for adding elements to a Phase
Phase::addElements(string name, ...) is the single entry point for adding
elements. It always perform the uniqueness check, and can do the extra
additional work required to add elements to a phase that already has species,
removing the need for "freezing" the phase's elements. Parsing the XML tree for
elements is now handled in "installElements". The variant element-adding methods
are deprecated.
2014-09-27 00:09:05 +00:00
Ray Speth
09db5a498a [Thermo] Add getMass/MoleFractionsByName functions with thresholds
This makes it easier to set the composition of a phase based on the composition
of another phase with a different set of species. The threshold argument allows
species with negligible concentrations to be skipped.

Deprecate the unused getMoleFractionsByName function that didn't return a
value.
2014-09-18 22:58:59 +00:00
Ray Speth
002c158761 Cleanup include statements
Move includes from header to implementation files where possible, and remove
unnecessary includes.
2014-08-28 16:54:13 +00:00
Harry Moffat
e129d02d93 Added in real number overflow exception control.
There are a series of activity coefficients for published battery models
 which actually overflows. Cantera was treating this as a nonerror and changing
the return results without comment. This is not correct. Made the behavior a
user controlled capability.
2014-08-05 23:42:24 +00:00
Ray Speth
45f6e84ebf Improved error messages that just reported 'confused' 2014-07-10 22:36:43 +00:00
Ray Speth
789574ac80 Remove commented-out code 2014-05-27 02:52:21 +00:00
Harry Moffat
675df76b1c Fixed a long standing problem with the combination of storred XML files and duplicator functions.
Now the complete XML file is storred within the ThermPhase object starting with the root node.
This is needed for later processing of kinetics and transport mechanisms when the ThermoPhase
file is duplicated and the original file is deleted.

xml() is now a const function, and still returns the same pointer.
setXMLdata() is a new function will stores the xml data.
2014-05-20 19:02:20 +00:00
Ray Speth
14ea7e64c6 [Thermo] make compositonMap a const argument 2014-04-08 16:26:20 +00:00
Victor Brunini
a704df09d8 Convert recent changes to new caching method. 2014-03-18 18:52:29 +00:00
Victor Brunini
b0ecf96cb6 Trying out a cleaner way knowing when expensive state functions need to be recomputed. 2014-03-13 23:50:31 +00:00
Ray Speth
d516d46f33 Remove unnecessary use of static_cast<int> 2014-01-31 23:15:09 +00:00
Ray Speth
607955b9f2 Remove unnecessary conditional surrounding 'delete' statements 2014-01-06 18:45:19 +00:00
Ray Speth
5fff5ce99f [Thermo] Slightly simplify adding species
Eliminate the freezeSpecies and init methods of class Phase, instead adjusting
array sizes as new species are added.
2013-10-04 16:22:35 +00:00
Ray Speth
ee74c80afc Fixed a number of "shadowed variable" compiler warnings 2013-04-18 22:08:36 +00:00
Ray Speth
7b7d3ac0d4 Fixed locale-dependent processing of XML files
Floating point values are read using a std::stringstream imbued with the "C"
locale to avoid problems with using std::atof when the user's locale uses a
character other than "." as the decimal separator.

Patch provided by Phillip Berndt.

Fixes Issue 153.
2013-04-03 23:10:18 +00:00
Ray Speth
e04e59cdd3 Removed extraneous parentheses around arguments to 'return'
'return' is a keyword, not a function, so these parens are unnecessary.
2013-02-14 01:03:48 +00:00
Ray Speth
4e3a79394b Eliminated some shadowing of member variables by function arguments 2013-02-14 01:03:19 +00:00
Ray Speth
8a17523715 Use the "charge" member function consistently to access species charges
Eliminated local alias to array of charges in some functions. Inlined the
"charge" function to mitigate any performance impact. Fixes a number of shadowed
variable warnings.
2013-02-14 01:03:09 +00:00
Ray Speth
ffd4a7418d Cleaned up Doxygen docs for the Phase and ThermoPhase classes 2013-02-14 01:02:14 +00:00
Ray Speth
7da738d238 Re-applied consistent formatting to trunk
Applied using: astyle -n --style=kr --add-brackets --indent=spaces=4
--indent-col1-comments --unpad-paren --pad-header --align-pointer=type
--lineend=linux
2013-02-07 23:40:59 +00:00
Victor Brunini
4770bdd9d6 Small performance improvement, transform seems to be slightly slower
than just looping over the array.
2012-12-13 22:16:16 +00:00
Ray Speth
1d19803885 Pass "const std::string&" instead of "std::string" when possible 2012-10-24 15:42:51 +00:00
Ray Speth
49dbb605ab Changed parseCompString to simplify its typical usage pattern 2012-08-17 16:44:34 +00:00
Ray Speth
1becffecb0 Disallow setting negative temperature or density 2012-08-11 23:58:29 +00:00
Ray Speth
3ce3da1fa2 Fixed code formatting 2012-07-18 18:32:29 +00:00
Ray Speth
e77990ab24 Fixed indexing errors in Phase::addUniqueSpecies
Also simplified to eliminate unnecessary iterator usage and fixed a comment that
indicated exactly the opposite of what the function actually does.
2012-07-18 18:32:17 +00:00
Ray Speth
cfe5824a7d Removed some deprecated code 2012-07-16 22:18:35 +00:00
Harry Moffat
232b861284 Moved Tortuosity.h to include file structure so that 1Delectrode code can work.
It works and produces almost the same results as before.

Added DAE_solvers.cpp back in. There was a missing factory function.

Fixed bandsolver indexing calculations in NonlinearSolver and Bandmatrix due
   to int to size_t conversion. numerics test programs now work.
2012-04-07 00:06:00 +00:00
Ray Speth
bf1f14c178 Ignore negative values when setting composition (mass fractions etc.)
This should resolve a number of problems when integrating reactor networks,
as well as some other unexpected behavior.
2012-03-25 23:25:41 +00:00
Ray Speth
4506ee2f8a Fixed some compiler warning issues 2012-03-15 19:55:18 +00:00
Ray Speth
d8edde0264 Expanded array bounds checking in C interface functions 2012-03-15 19:51:37 +00:00
Ray Speth
c440373aba Folded class Elements into class Phase 2012-03-09 22:57:18 +00:00
Ray Speth
7e39e91b5b Cleaned up documentation and comments for class Phase 2012-03-09 22:57:05 +00:00
Ray Speth
78a093b485 Folded class Constituents into class Phase 2012-03-09 22:56:11 +00:00
Ray Speth
e41f43300f Folded class State into class Phase 2012-03-09 22:55:34 +00:00
Ray Speth
8f4f72369e Use the associated Cabinet to look up an item's index
This allowed removal the m_index member and associated methods
of the ThermoPhase, Kinetics, and Transport classes.
2012-02-27 18:12:13 +00:00
Ray Speth
437294ae00 Removed previously-deprecated array_fp typedef 2012-02-22 00:16:22 +00:00
Ray Speth
9bc4a261c7 Fixed a bunch of GCC warnings 2012-02-15 20:28:08 +00:00
Ray Speth
a310345b9e Updated #includes to reflect new header file locations 2012-02-12 02:44:14 +00:00
Ray Speth
2528df0f75 Reorganized source tree structure
These changes make it unnecessary to copy header files around during
the build process, which tends to confuse IDEs and debuggers. The
headers which comprise Cantera's external C++ interface are now in
the 'include' directory.

All of the samples and demos are now in the 'samples' subdirectory.
2012-02-12 02:27:14 +00:00
Renamed from Cantera/src/thermo/Phase.cpp (Browse further)