Ingmar Schoegl
ae792dde00
implemented limited advance step
2019-06-26 13:48:01 -04:00
Ray Speth
0fdbe24aaf
Provide error message after failure to create large Sundials matrix
...
If Sundials tries to create an excessively large matrix, it returns a null
pointer. To avoid a subsequent segfault, throw an exception which makes the
cause of the error clear.
WIP: Better error message for too-large Sundials matrix
TEMP: fixup for cvodes error messages
2019-02-25 11:06:12 -05:00
arghdos
e3230801c9
Expose getting/setting of max-steps to python interface & test
2019-01-07 22:33:03 -05:00
Bryan W. Weber
6b3c912ec3
Fix MemoryWriter is no longer available from fmtlib
...
In fmtlib 5.0.0, MemoryWriter was removed. The recommendation is to
replace it with memory_buffer
2018-05-30 14:16:27 -04:00
Ray Speth
9c50f7528c
Add support for Sundials 3.1.0 (also 3.0.0)
2018-02-14 22:22:42 -05:00
Ray Speth
50a3fecb23
Rename Sundials-related macros to avoid name conflicts
2018-02-14 22:22:42 -05:00
Ray Speth
ecb2868a18
[Reactor] Suppress recoverable errors in RHS function by default
...
Accumulate errors and show them if the integrator actually fails. In "verbose"
mode, the errors are shown as they occur.
2016-10-23 22:42:53 -04:00
Ray Speth
ecbfecd7fd
Replace existing copyright notices with uniform copyright/license info
2016-10-10 22:19:01 -04:00
Ray Speth
4582e724ee
Eliminate compiler warnings issued by Visual Studio 2015
2016-07-30 23:09:17 -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
cf13b318f4
[Reactor] Implement enthalpy of formation sensitivity analysis
2016-05-08 18:24:14 -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
56f49ef444
Miscellaneous jargon cleanup
2016-04-16 22:32:49 -04:00
Ray Speth
881fcbaf6f
Improve use of local variables in src/numerics
2016-03-27 22:52:49 -04:00
Ray Speth
b55c8fe813
Replace overly-specific exception types with CanteraError
...
Deprecate exception types which are now unused.
2016-02-04 19:34:26 -05:00
Ray Speth
f44b5fed57
Replace usage of int2str with cppformat and deprecate int2str
2016-02-04 19:11:49 -05:00
Ray Speth
484da253da
Use cppformat instead of stringstream in some places
2016-02-04 14:45:21 -05:00
Ray Speth
75d9ef93c5
Clean up Doxygen docs and comments for numerics classes
2015-11-12 11:41:34 -05:00
Ray Speth
70fe821c19
Deprecate FuncEval::getInitialConditions and related functions
2015-11-06 14:40:48 -05:00
Ray Speth
0647823ada
Replace DATA_PTR macro with calls to data()
2015-10-17 18:58:50 -04:00
Ray Speth
a03f370cfd
Make use of emplace and emplace_back methods
2015-10-14 18:45:23 -04:00
Ray Speth
fb4eece9f8
Use std::unique_ptr instead of raw pointers where appropriate
2015-10-14 18:45:23 -04:00
Ray Speth
acdf9cf0ed
Clean up interstitial whitespace
...
Remove extra space around operators, between words, etc.
2015-08-02 23:06:16 -04:00
Ray Speth
e4c45b6429
General whitespace cleanup
...
Remove unnecessary blank lines and trailing whitespace. Replace tabs with
spaces.
2015-08-02 23:06:15 -04:00
Ray Speth
6cc5652de6
Remove commented-out code
2015-07-20 17:20:46 -04:00
Ray Speth
d373e0751e
Remove unnecessary explicit specification of namespace Cantera
2015-06-24 14:45:55 -04:00
Ray Speth
1c878c16de
Fix issues indicated by compiler warnings
2015-05-26 11:42:20 -04:00
Ray Speth
341b137766
[Doc] Capitalize proper nouns and acronyms
2015-05-25 20:58:44 -04:00
Ray Speth
4049bb4bb2
Fix out-of-bounds memory access in CvodesIntegrator::getErrorInfo
...
Out-of-bounds memory was being accessed in cases where the system had fewer
state variables than the specified maximum number of error estimates to display.
2015-04-28 17:13:11 -04:00
Ray Speth
0886de8650
Include CVodes error text in resulting CanteraErrors
...
Failures in 'integrate' and 'advance' now include the error text provided by
CVodes directly, rather than just the numerical error code. This is especially
helpful in cases where the direct output from CVodes to stderr is lost
(e.g. when running from the Matlab GUI).
2014-08-28 16:55:41 +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
Ray Speth
789574ac80
Remove commented-out code
2014-05-27 02:52:21 +00:00
Bryan W. Weber
4badbd1fb3
[SCons/0D] Update to enable Sundials linked with external BLAS/LAPACK.
...
With help from Nick Curtis and Ray Speth.
2014-01-20 15:19:53 +00:00
Ray Speth
54d11a016a
Remove support for old Sundials versions
...
Supported Sundials versions are 2.4 and 2.5.
2013-12-14 00:18:17 +00:00
Ray Speth
cf0a418027
[Reactor] Fix segfault when requesting sensitivities at t = 0
2013-09-01 00:33:19 +00:00
Ray Speth
64bfdcc952
Deprecate support for Sundials 2.2 and 2.3.
2013-06-05 17:09:30 +00:00
Ray Speth
eadf4e3fdd
Cleaned up Doxygen documentation for Sundials wrapper classes
2013-05-29 00:11:32 +00:00
Ray Speth
9a1d6532ba
Fixed compilation error when using Sundials 2.3
2013-03-13 20:20:27 +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
Ray Speth
a5b1d1f7f6
[Reactor] Added ability to set the CVODES "MaxErrTestFails" variable
...
Increasing this value (from the default of 7) will sometimes allow CVODES to
find solutions to problems that previously caused it to fail.
2013-02-07 23:40:40 +00:00
Ray Speth
791c82b0c6
CVodesIntegrator now sets the minimum setp size when [re]initializing
2013-02-07 23:40:35 +00:00
Ray Speth
67a143f396
Refactored CVodesIntegrator to reduce redundancy when setting options
2013-02-07 23:40:31 +00:00
Harry Moffat
ea25de7fe7
Continuing transfering LiquidTransport changes, doing bugfixes, and
...
qualifying against our testsuite.
2012-12-15 00:49:14 +00:00
Ray Speth
8bcda61e4c
Changed type of CVodesIntegrator members to eliminate unnecessary casts
2012-10-24 15:42:05 +00:00
Ray Speth
7b76e762d2
Fixed sensitivity calculation when using CVodesIntegrator::step
...
Previously, the sensitivity coefficient matrix m_yS was being updated only when
the `integrate` method was used to advance the system. Now, the sensitivities
are updated when a coefficient is requested after taking a timestep, regardless
of the method used to advance the system.
2012-10-24 15:41:59 +00:00
Ray Speth
87062d115d
Integration failures with CVODES now generate a more informative exception
...
The exception message now lists the solution components and the corresponding
weighted error estimate which should indicate which variables are responsible
for the integration failure.
2012-08-11 23:58:37 +00:00
Ray Speth
e168634c72
Translate exceptions into appropriate error codes in cvodes_rhs
2012-08-11 23:58:33 +00:00
Ray Speth
f04ac23be9
Fixed a memory leak when re-initializing a CVodesIntegrator
2012-06-27 16:12:45 +00:00