Commit graph

585 commits

Author SHA1 Message Date
Ray Speth
cd572403df Fix issues with pure fluids near temperature limits
Fixes Issue 186.
2013-11-12 23:44:51 +00:00
Ray Speth
3a0c370550 [Matlab] Fix 'thermalConductivity' method 2013-11-03 20:46:38 +00:00
Ray Speth
c885a88817 Use fully qualified names for isnan, isinf, and finite
Specify the versions in the global namespace, to avoid ambiguity
between these and the versions in namespace std that are available in
C++11.
2013-10-21 22:12:57 +00:00
Ray Speth
584392d856 [SCons] Fix linking boost_thread in more places 2013-09-30 16:02:39 +00:00
Ray Speth
c028f4cc5c [SCons] Link boost_thread when building cti2ctml
Fixes compilation errors with some versions of Boost.
2013-09-30 01:54:18 +00:00
Ray Speth
f95bc8fb43 [Equil] Avoid floating point overflow from pressure term
Since computing the residual norm effectively requires p**2, the
correct limit to avoid an overflow is sqrt(DBL_MAX), or roughly
exp(300).

This change fixes crashes due to SIGFPE in cases where floating point
exceptions have been enabled, and also fixes a few cases where the
solver did not previously converge.
2013-09-30 01:53:54 +00:00
Ray Speth
2ac98393bd [Equil] Remove a calculation with an unused result 2013-09-30 01:53:48 +00:00
Ray Speth
55ece82319 [clib] Fix bounds check on getMolecularWeights
The incorrect bounds check here caused problems with phases where
there were more elements than species.

Fixes Issue 173.
2013-09-19 14:49:09 +00:00
Ray Speth
dab827d763 [ck2cti] Make permissive mode default when run from Matlab or C++ 2013-09-12 16:04:13 +00:00
Ray Speth
8a58b12698 [ck2cti] Fix to work with Cython module when called from Matlab or C++ 2013-09-12 16:04:04 +00:00
Ray Speth
721f0266be [SCons] Fix some dependency issues for building "ctpath.m" 2013-09-06 20:34:18 +00:00
Ray Speth
cf0a418027 [Reactor] Fix segfault when requesting sensitivities at t = 0 2013-09-01 00:33:19 +00:00
Ray Speth
7447c5957d [Thermo] Fix deleting objects that have manually-added species 2013-09-01 00:33:06 +00:00
Ray Speth
717a2367b1 [Transport] Add electricalConductivity method to all language interfaces
Thanks to user 'hencken' for the patch.

Resolves Issue 171.
2013-08-23 17:43:55 +00:00
Ray Speth
f61cbeafcb [Equil] Fix infinite loop in VCS equilibrium solver
The threshold being removed here was introduced in r714, which was merged into
trunk in r1115.

Fixes Issue 113.
2013-08-23 17:43:44 +00:00
Ray Speth
a22ceda566 [Scons] Fix build order dependencies for python modules 2013-08-14 17:55:51 +00:00
Ray Speth
dfe5945cd6 [Matlab] Add access to class FlowReactor 2013-08-02 23:17:54 +00:00
Ray Speth
957ddc97ae Fix calls to ck2cti that pass through the C++ interface 2013-08-02 23:17:40 +00:00
Ray Speth
10aa8ba060 [Kinetics] Allow negative Troe parameters 2013-08-01 18:57:33 +00:00
Ray Speth
03786fd07b [Python] Add support for IdealGasReactor and IdealGasConstPressureReactor 2013-07-31 18:14:45 +00:00
Ray Speth
9b6354b0c0 [SCons] Fix generation of ctpath.m
Was failing because of dependency on dynamically-generated 'python_module_loc'
variable.
2013-07-31 18:14:42 +00:00
Ray Speth
615c3124fb [Reactor] Fix sensitivity parameter order for constant pressure reactors
This matches the behavior of Reactor, where the parameter order is
determined by the order of the reactions in the mechanism.
2013-07-30 15:57:37 +00:00
Ray Speth
f320290c51 [SCons] Fix Python module path in setup_cantera and post-install message
In particular, this fixes paths for Linux distros that put Python modules in
'lib64/pythonX.Y/site-packages'.

Also fixes the reported installation path for the Python module on Windows.
2013-07-29 01:37:57 +00:00
Ray Speth
9a8dbf75f8 CTI to XML conversion works with either new or old Python module 2013-07-29 01:37:54 +00:00
Ray Speth
b7d4fbbe54 [clib] Fix error handling for MultiPhase objects 2013-07-26 21:33:59 +00:00
Ray Speth
35aed42fbd [Equil] Raise exceptions instead of aborting execution 2013-07-26 21:33:57 +00:00
Ray Speth
c76ddefa5f Fix spelling errors 2013-07-26 21:33:50 +00:00
Ray Speth
d129d74289 [Thermo] Move shared methods to SpeciesThermoInterpType base class
Almost every class derived from SpeciesThermoInterpType used the same
implementation of the minTemp, maxTemp, refPressure, and speciesIndex,
so it makes more sense to just implement these in the base class.
2013-07-23 15:30:56 +00:00
Ray Speth
0fddd6a129 [Thermo] Fix errors in setState_SPorSV
This corrects the behavior in cases where the correct temperature is below the
nominal minimum temperature for the phase.

Add test cases for this and analogous cases for the maximum temperature and
setState_HPorUV.

Fixes Issue 151.
2013-07-18 19:07:14 +00:00
Ray Speth
a20fd58000 [1D] Fix save/restore when mechanism size differs
The failures were caused when attempting to restore the tolerance vectors, which
have a value for each species. Since these tolerances are usually the same for
all species, the last value in the array can be used to extend the array to the
required length.

Also add some tests for this feature.
2013-07-18 00:04:13 +00:00
Ray Speth
8a232abc71 [Reactor] Add optimized IdealGasConstPressureReactor class
Like IdealGasReactor, this formulation uses the temperature as a state variable
to improve performance for the common use case of reactors containing ideal gas
mixtures.
2013-07-16 22:09:46 +00:00
Ray Speth
9709dd859e [Reactor] Change ConstPressureReactor to support non-ideal phases
Similar to the change for Reactor, using the total enthalpy as the state
variable works for non-ideal phases, although it is less efficient.
2013-07-16 22:09:43 +00:00
Ray Speth
785d4f058e [Reactor] Add optimized IdealGasReactor class
This formulation of the reactor governing equations, with temperature as a state
variable, works better for ideal gas mixtures. This way, most of the Jacobian
components are derivatives at constant temperature, eliminating the need to
recompute the temperature-dependent part of the rate expressions when computing
these entries.
2013-07-16 22:09:40 +00:00
Ray Speth
c89b7f1c93 [Reactor] Change formulation of Reactor to support non-ideal phases
Expanding the time derivative of the total internal energy only works for ideal
phases, so for the more general case it is necessary to keep the internal energy
as the state variable and use an iterative method for setting the state.
2013-07-16 22:09:37 +00:00
Steven DeCaluwe
878abceb6a Removed 'const' declaration from satPressure function for remaining ThermoPhase class members. 2013-07-15 17:44:01 +00:00
Steven DeCaluwe
23b725d3a8 Removed 'const' declaration for function satPressure in members of the ThermoPhase class 2013-07-15 17:43:54 +00:00
Steven DeCaluwe
6321cf4c8e Removed calculatePsat from matlab toolbox, and overwrote 'satPressure' for MixtureFugacityTP
class to point to the calculatePsat function.  Removed 'const' declaration from satPressure
within the ThermoPhase class.
2013-07-15 17:43:45 +00:00
Ray Speth
77ccab92bd [Kinetics] Implement evaluation of "chemically activated" reaction rates 2013-07-06 21:44:02 +00:00
Ray Speth
8b87087e41 [Kinetics] Populate m_rxntype 2013-07-06 21:43:56 +00:00
Ray Speth
ef6479f58d Eliminate special case for default falloff function 2013-07-06 21:43:53 +00:00
Ray Speth
eb82cbc998 Remove undeclared function getNamedFloatArray
This function has no declaration in any header file, so it is clearly not used
anywhere.
2013-07-06 21:43:48 +00:00
Steven DeCaluwe
06d239a40a Enabled use of the 'calculatePsat' function for MixtureFugacityTP thermo class
in the Matlab toolbox.
2013-07-03 15:44:52 +00:00
Ray Speth
ebd4df76ab Fix some Doxygen warnings 2013-06-28 21:24:49 +00:00
Ray Speth
19662496c3 Deprecate VPSSMgr::standardVolumes 2013-06-28 21:24:46 +00:00
Ray Speth
8ded648bf4 Speed up duplicate reaction check in installReactions
This version of the "participants" key is more likely to have collisions, but
having the key be a simple scalar speeds things up quite a bit.
2013-06-28 21:24:44 +00:00
Ray Speth
ee9b153efb Improve performance of reading species info from XML
Avoid an O(N) lookup for the thermo info for each species. Using an
unordered_map would be even better, but there's no portable way to do that
without Boost.
2013-06-28 21:24:42 +00:00
Ray Speth
65a97d9b62 [1D] Restore domains based on sequence rather than name
Instead of searching the XML tree for nodes where the "id" attribute matches,
require that the domains occur in order from left to right (corresponding to how
they are saved).

Fixes Issue 164.
2013-06-26 00:23:07 +00:00
Ray Speth
e7754fbcf2 [1D] Deprecate vector version of Domain1D::setBounds
The scalar version is actually easier to use in most cases.
2013-06-24 15:22:45 +00:00
Ray Speth
3e4c944416 [1D] Simplify interface for setting tolerances 2013-06-24 15:22:38 +00:00
Ray Speth
9d2f7e0220 Deprecate report/modifyParameters methods of SpeciesThermoInterpType 2013-06-24 15:22:25 +00:00