Commit graph

1744 commits

Author SHA1 Message Date
Ray Speth
62524e8820 [Equil/Test] Fix failures involving use of global variables
Direct use of "global" variables defined in the shared library results in
inconsistent behavior.
2016-07-05 17:12:13 -04:00
Ray Speth
d4ddabc76c Use system-installed version of fmt library if available
Resolves #348.
2016-07-05 14:17:01 -04:00
Ray Speth
f985169e93 Introduce basic registration capabilities for factories 2016-07-04 16:01:31 -04:00
Ray Speth
64bb049647 [Numerics] Handle zero-size timestep in CVodesIntegrator::advance
This permits simpler integration loops starting from t=0
2016-07-04 16:01:31 -04:00
Ray Speth
cd958a343b [1D] Make better use of local variables 2016-06-28 17:35:40 -04:00
Ray Speth
ce9a17fb76 [Reactor] Make better use of local variables 2016-06-28 16:58:51 -04:00
Ray Speth
4b8f8b692a [Reactor] Deprecate Wall-based method for adding surface chemistry
The new method using class ReactorSurface should be used instead.
2016-06-28 14:37:59 -04:00
Ray Speth
a7aec575a9 [Matlab] Make ReactorSurface available in Matlab 2016-06-28 14:37:59 -04:00
Ray Speth
3f766370b9 [Reactor] Add ReactorSurface to simplify use of surface reactions
This separates the handling of interactions between reactors (mediated by
Wall objects) and surfaces on which surface reactions occur (handled by
ReactorSurface). This simplifies the implementation within reactor, and
reduces the complexity of user code involving surface reactions by
eliminating the need to set up a Reservoir object for the opposite side
of a Wall object that is only being used for surface reactions.
2016-06-28 14:16:18 -04:00
Ray Speth
a8c6fe09d9 [Transport] Make better use of local variables 2016-06-27 17:11:00 -04:00
Ray Speth
fd4cbb8718 [Doc] Fix spelling errors 2016-06-27 14:30:49 -04:00
Ray Speth
668634c969 [Thermo] Deprecate classes tpx::leekesler and tpx::RedlichKwong
These are implementations of tpx::Substance which cannot actually be
instantiated from within the PureFluidPhase wrapper class.

The broken implementation of a CTML class for redlich_kwong is removed here.

A functional implementation of the Redlich-Kwong equation of state remains in
class RedlichKwongMFTP.

Resolves #263
2016-06-26 20:31:48 -04:00
Ray Speth
e41a667dba Remove unused scripts from build system 2016-06-23 17:18:49 -04:00
Ray Speth
2c005759b7 [Thermo] Combine SpeciesThermo and GeneralSpeciesThermo
The new class is named MultiSpeciesThermo, so that (eventually) the name
SpeciesThermo can be used for the single-species class SpeciesThermoInterpType.

Currently, trivial wrappers for classes named SpeciesThermo and
GeneralSpeciesThermo to maintain backwards compatibiity for Cantera 2.3.
2016-06-23 17:00:15 -04:00
Ray Speth
3d6368b70a [Thermo] Deprecate unused SpeciesThermoInterpType methods
Deprecate modifyParameters and the default constructor for all classes
derived from SpeciesThermoInterpType.
2016-06-23 13:45:51 -04:00
Ray Speth
b7e1a5f0bd [Transport] Use correct scaling factor when fitting conductivity
Fixes #345
2016-06-20 19:07:56 -04:00
Ray Speth
df43a474cd [SCons] Modify build system to exclude unused Fortran and f2c code
Cantera no longer requires BLAS / LAPACK (but can use them if available), so it
is never necessary to compile any of the external Fortran or f2c-converted code.
2016-05-14 22:00:22 -04:00
Ray Speth
efb068e319 [Numerics] Modify polyfit to use Eigen instead of fortran/f2c code 2016-05-14 22:00:22 -04:00
Ray Speth
799695f0de Disable SquareMatrix LAPACK operations when LAPACK is not available
Because SquareMatrix is unused within Cantera and deprecated, it is not
necessary to implement alternatives for these functions.
2016-05-14 22:00:22 -04:00
Ray Speth
01d3679664 [Numerics] Deprecate matrix-type argument to GeneralMatrix 2016-05-14 22:00:22 -04:00
Ray Speth
f260e858c0 [Numerics] Deprecate class SquareMatrix 2016-05-14 22:00:22 -04:00
Ray Speth
a7d854f3b9 [Equil] Eliminate direct calls to LAPACK functions 2016-05-14 21:59:27 -04:00
Ray Speth
961ca06cd5 Eliminate the use of SquareMatrix in favor of DenseMatrix 2016-05-14 21:59:27 -04:00
Ray Speth
b49c2e4c2d [Numerics] Use Eigen instead of internal LAPACK for DenseMatrix operations 2016-05-14 21:56:17 -04:00
Ray Speth
41ae065a6e Use Sundials to solve BandMatrix instead of using internal LAPACK 2016-05-14 21:56:17 -04:00
Ray Speth
efe43b389e [1D] Add callback hooks to make debugging 1D solver easier
This allows one to define functions in Python which will be called after each
successful time step or steady state solve, from which the state of the solver
can be inspected.
2016-05-14 17:24:16 -04:00
Ray Speth
920ff1d897 [Kinetics] Make better use of local variables 2016-05-12 16:33:33 -04:00
Ray Speth
fc33778451 Use correct value for gas constant
Even if it's just for part of an initial guess
2016-05-10 22:16:46 -04:00
Ray Speth
46684646ee [Thermo] DebyeHuckel::_nonpolarActCoeff is a static method
Definition now corresponds to documentation
2016-05-10 22:13:43 -04:00
Ray Speth
94be25ae97 Remove duplicate definitions of LTPerror and LTPmodelError 2016-05-10 22:10:49 -04:00
Ray Speth
812290dc37 [Thermo] Deprecate ThermoPhase::installSlavePhases
For the only class in which this is used (LatticeSolidPhase), all initialization
can be performed in the initThermo method.
2016-05-10 20:20:35 -04:00
Ray Speth
491816f706 [Thermo] Remove overload IdealSolidSolnPhase::logStandardConc 2016-05-10 18:33:41 -04:00
Ray Speth
8ff82c06ce [Reactor] Add componentName function to ReactorNet and Reactor classes 2016-05-09 22:42:45 -04:00
Ray Speth
cf13b318f4 [Reactor] Implement enthalpy of formation sensitivity analysis 2016-05-08 18:24:14 -04:00
Ray Speth
2561ab82e3 [Equil] Check index bounds for known problems in VCS_SOLVE
See #187
2016-05-03 15:03:52 -04:00
Ray Speth
aa5f26bda6 [Thermo] Check dynamic_cast to PDSS_Water
Resolves #6
2016-05-03 15:03:52 -04:00
Ray Speth
ca2a330d5f [XML] Include file name in XML-related errors
Resolves #40
2016-05-03 15:03:51 -04:00
Ray Speth
26b937651b [XML] Improve error message generated by XML_NoChild 2016-05-03 15:03:51 -04:00
Ray Speth
6003af01a3 [XML] Add version of XML_Node::build that takes file name directly 2016-05-03 15:03:51 -04:00
Ray Speth
c7a1a57fbd [Reactor] Eliminate re-ordering of sensitivity parameters
Passing the full parameter vector to evalEqs for each reactor and wall
eliminates the need to re-order the parameter vector. Instead, each reactor and
wall just needs to know the indices of its sensitivity parameters, which are now
returned by ReactorNet::registerSensitivityReaction.
2016-05-01 20:35:34 -04:00
Ray Speth
e13faa1071 [Base] Fix vec2str to actually use provided format string 2016-04-30 16:47:55 -04:00
Ray Speth
0e2ea0964b [Thermo] Add function 'resetHf298'
Using this instead of modifyHf298 to reset the thermo data to its original
state avoids round-off errors that otherwise make modifications to the
species thermo data irreversible.
2016-04-30 16:43:37 -04:00
Ray Speth
0f669153fb [Thermo] Remove unnecessary overrides of modifyOneHf298SS 2016-04-30 16:43:37 -04:00
Ray Speth
e454c51925 [Numerics] Show messages from std::exception in CVODES residual function 2016-04-28 22:01:26 -04:00
Ray Speth
cd77a94588 [Numerics] Fix memory leak in CVodesIntegrator
Memory allocated in CVodesIntegrator::sensInit was not being released.
2016-04-20 14:35:57 -04:00
Ray Speth
032bb9c363 [Reactor] Move sensitivity parameter vector into FuncEval
This eliminates the need for class FuncData, and makes it possible to
introduce sensitivity parameters which have a nominal values other than 1.0.
2016-04-19 16:08:52 -04:00
Ray Speth
51b0e46277 [Thermo] ThermoPhase::modifyOneHf298SS always invalidates cached data 2016-04-18 22:20:06 -04:00
Ray Speth
3566542c0b [Equil] Replace PropertyCalculator with simple lambdas 2016-04-18 20:29:02 -04:00
Ray Speth
f4ad150905 [1D] Sim1D::setProfile checks range of position array 2016-04-18 20:00:15 -04:00
Ray Speth
6a928b57f9 Replace getValue with std::map.at where possible
Deprecate the two-argument version of getValue, since the C++11 at method does
the same thing.
2016-04-18 19:34:40 -04:00