Commit Graph
7804 Commits
Author SHA1 Message Date
Raymond Speth b475012911 [SCons] Print installation location of minimal Python package 2021-02-08 13:28:55 -05:00
Raymond Speth b165daf075 [SCons] Sundials versions up to 5.7 have been tested 2021-02-08 13:28:55 -05:00
Raymond Speth 8ea37ee0fb [Python] Update shebang lines to specify Python 3 2021-02-08 13:28:55 -05:00
Raymond Speth 2ed1d27485 Bump version to 2.5.0rc1 v2.5.0rc1 2021-02-05 11:29:55 -05:00
Raymond Speth 0edaf316ac [SCons] Fix compilation of f77 sample with clang+gfortran
Compiling demo_ftnlib.cpp as a shared object (with -fPIC) fixes an
error about being unable to relocate some pthread-related symbol.
2021-02-05 11:29:55 -05:00
Raymond Speth c9811e8e0a [SCons] Suppress deprecation warnings caused by Cython
The deprecation warnings previously observed only on macOS are also
emitted when using Clang 10.0 on Linux. Also, despite supposedly being
resolved in Cython 0.29.14, I still get these warnings in Cython
0.29.21.
2021-02-05 11:29:55 -05:00
Ray Speth 2d6030853b Fix MinGW warning about CreateFile arguments 2021-02-05 11:29:55 -05:00
Ray Speth 072cb815ea [SCons] Don't compile Sundials Fortran interface
Cantera doesn't use this part of Sundials, and bundling all of these
files into the cantera library leads to linker errors when compiling
with MinGW and on macOS, due to redefinition of symbols like
'F2C_CVODE_matrix'.
2021-02-05 11:29:55 -05:00
Ray Speth f2e127eec2 Fix MinGW warning about NOMINMAX redefinition 2021-02-05 11:29:55 -05:00
Bryan W. Weber 185aa977af [Cython] Fix deprecation warning in NumPy 1.20
NumPy 1.20 deprecates numpy namespace aliases to built-in types, such as
int, float, and object. Explicit specification of the precision with
float64 is still supported and does not need to be changed. See:
https://github.com/numpy/numpy/releases/tag/v1.20.0 and
https://github.com/numpy/numpy/pull/14882
2021-02-03 11:55:42 -05:00
Raymond Speth dceb911dd2 [Test/Reactor] Adjust tolerance for species sensitivity test
Previous tightening of integration tolerances in 9832c88 seems to
generate integrator failures for some configurations.

Resolves #937
2021-02-02 14:08:15 -05:00
Raymond Speth b3f36860f1 [Input] Include species T-min and T-max in conversions to YAML 2021-01-29 21:35:40 -05:00
Raymond Speth 272398e6e1 [Test] Fix badly-formated floats in XML input files 2021-01-29 21:35:40 -05:00
Raymond Speth 8c0da723a2 [Input] Add T-min and T-max fields to YAML species thermo 2021-01-29 21:35:40 -05:00
Raymond Speth 692d8fadf4 [Thermo] Make default T_max for species infinity
For the constant-cp (ConstCpPoly) and piecewise-gibbs (Mu0Poly)
species thermo models, the default min and max temperature were both
zero. Because Cantera rarely checks these temperature bounds, use of
these defaults is fine in most cases, but causes confusing errors on
the rare occasions where the bounds are accessed, as in the "gibbs"
(MultiPhase) equilibrium solver.

Setting the default max temperature to infinity avoids these confusing
errors without introducing an arbitrary default value or the
requirement to always specify temperature limits.
2021-01-29 21:35:40 -05:00
Raymond Speth 81aa2c2938 Deprecate nasa.yaml
Prefer the more specific files nasa_gas.yaml and nasa_condensed.yaml
2021-01-29 21:35:40 -05:00
Raymond Speth ea9b2699ee [Thermo] Fix argument name for IdealGasPhase::setToEquilState
Completes update started in f5f12caa8
2021-01-29 21:35:40 -05:00
Raymond Speth 918368ea0a [Kinetics/Doc] Add missing minus signs in Plog docs
Corresponds to fix applied in Cantera/cantera-website#116
2021-01-29 21:35:40 -05:00
Ingmar Schoegl 85b8f23c35 Mark _allowGasPhase override as not intended for general use 2021-01-29 13:39:28 -05:00
Ingmar Schoegl f092244bec [thermo] Avoid spurious WaterPropsIAPWS::density failures
Some initial guesses fail (see GitHUb issue #577, or starting with an initial
density guess equl to the critical density); running an alternative initial
guess prevents spurious failures (fix is a band-aid).
2021-01-29 13:39:28 -05:00
Ingmar Schoegl ac1274fa0a [thermo] Finalize liquid-water-IAPWS95 updates 2021-01-29 13:39:28 -05:00
Ingmar Schoegl 25dc38e997 [thermo] Clarify WaterSSTP::type 2021-01-29 13:39:28 -05:00
Ingmar Schoegl 4ba894df55 [thermo] Add IAPWS as alternative backend to existing Water wrapper
While the current 'liquid-water-IAPWS95' thermo model only implements liquid
(and supercritical) states, the underlying IAPWS formulation can be extended
beyond in future revisions.

- avoid 'liquid' as part of the nomenclature
- YAML phase name is updated to `water-iapws95`
- Instead of creating a new wrapper, `iapws95` is added as an alternative
  backend to the existing `Water` class
2021-01-29 13:39:28 -05:00
Ingmar Schoegl 1880e2402c [thermo] Implement phaseOfMatter for WaterSSTP class 2021-01-29 13:39:28 -05:00
Ingmar Schoegl fe7bd2101f [unittests] Add/update tests for LiquidWater object 2021-01-29 13:39:28 -05:00
Ingmar Schoegl f3e2a940fb [thermo] Implement allowGasPhase override for WaterSSTP 2021-01-29 13:39:28 -05:00
Ingmar Schoegl 7783e31447 [thermo] Ensure that WaterPropsIAPWS::density works for critical point 2021-01-29 13:39:28 -05:00
Ingmar Schoegl 9ae29ab796 [thermo] Ensure that WaterSSTP satisfies model assumptions 2021-01-29 13:39:28 -05:00
Ingmar Schoegl 4244fa8ea4 [thermo] Improve documentation of WaterSSTP helper classes
Co-authored by: Shekhar Shukla <47356149+24sharkS@users.noreply.github.com>
2021-01-29 13:39:28 -05:00
Ingmar Schoegl c7c16fa2f3 Minor formatting changes 2021-01-29 13:39:28 -05:00
Ingmar Schoegl ec5d0f5932 [thermo] Update docstrings for PureFluid convenience wrapper classes
- Docstrings are updated to include information already available
  in MATLAB (or C++ base classes)
2021-01-29 13:39:28 -05:00
Ingmar Schoegl 2c5eae019b [thermo] Add convenience class for liquid-water-IAPWS95 2021-01-29 13:39:28 -05:00
Raymond Speth 7f9a5897a1 [Equil] Fix indexing error in VCS_SOLVE::vcs_prep
Partially resolves #901

When counting the total number of moles using the MultiPhase, its
count of elements must be used instead of the count in the VCS_SOLVE
object, because the latter sometimes has additional fictitious
elements used for handling charge neutrality constraints.
2021-01-26 14:00:33 -05:00
Raymond Speth ff6a2bf0d9 [1D] Fix Domain1D::save when compiling with GLIBCXX_ASSERTIONS
Partially resolves #901
2021-01-26 14:00:33 -05:00
Raymond Speth e8194afeb6 [1D] Fix error when compiling with GLIBCXX_ASSERTIONS enabled
If the rightmost domain has no solution components of its own, calling
functions which need a pointer to the "local" portion of the solution
vector by taking &m_x[domain(n).loc()] gives a pointer just past the
end of m_x, but this pointer is not used in the function called.

Adding a special case for this to OneDim::start avoids having this be
reported as an error when using bounds checking features like those
enabled by the _GLIBCXX_ASSERTIONS preprocessor macro.

Partially resolves #901
2021-01-26 14:00:33 -05:00
Raymond Speth 68d85229d4 Add N2 to h2o2.yaml
This makes it possible to use the h2o2 mechanism with air as the oxidizer.
2021-01-24 22:07:55 -05:00
Raymond Speth 735c40bdef [SCons] Update check for Apple clang to work with Xcode 12 2021-01-24 22:07:02 -05:00
Raymond Speth a4635b79f2 [SCons] Skip OpenMP test/sample when omp.h is not available 2021-01-24 22:07:02 -05:00
Raymond Speth 0a1ad9b2c8 [1D/Test] Improve IonBurnerFlame test case
For the burner-stabilized flame, directly solving the "stage 2" case
with drift fluxes for ionized species seems to converge more quickly.

Tighter grid refinement tolerances are needed to accurately resolve
the peak in the electrif field strength.

Added another check for the peak in the electron mole fraction.

Fixes #935.
2021-01-24 22:05:30 -05:00
Raymond Speth e49d62bf4a [CI] Disable macOS 11.0 builds because of capacity limitations 2021-01-21 12:06:09 -05:00
Raymond Speth 777e099f7e [SCons] Use version-parsing function from pkg_resources
The old distutils.version.StrictVersion function doesn't understand
some modern version strings.
2021-01-21 12:06:09 -05:00
Raymond Speth 72f1e2ac0a [YAML] Fix handling of coverage dependencies in ck2yaml
An indentation error meant that coverage dependencies weren't being
written in the (simpler) case where we don't have to modify the units
for the activation energy.

Fixes #956
2021-01-21 12:06:09 -05:00
Raymond Speth 2501451986 [YAML] Fix numbering of surface reactions by ck2yaml 2021-01-21 12:06:09 -05:00
Ingmar Schoegl 0a69c0a6ca Mark @TODO items 2021-01-19 11:45:54 -05:00
Ingmar Schoegl 6c34681782 [purefluid] Update PQ triple point checks 2021-01-19 11:45:54 -05:00
Ingmar Schoegl b3c8fc86fb [purefluid] Make pure saturated liquid/vapor part of TwoPhase region
Saturated liquid and saturated vapor form the boundary of the vapor dome and
are included in the phase-of-matter labeled 'liquid-vapor-mix'. At the same
time, properties that are based on finite difference calculations of a pure
liquid or pure vapor can be calculated. This approach corresponds to the
implementation of the CoolProp package (http://www.coolprop.org).
2021-01-19 11:45:54 -05:00
Ingmar Schoegl 13825297cb [purefluid] Disable low pressure check for Substance::Tsat
The calculation of Substance::Tsat should check for pressures below the
triple point and raise a corresponding exception. A bug causing low
temperature TP setting of heptane (GitHub issue #605) to fail prevents an
implementation of this check at the moment.
2021-01-19 11:45:54 -05:00
Ingmar Schoegl 1c95a60d4d [unittests] Update tests for fd properties at saturated conditions 2021-01-19 11:45:54 -05:00
Ingmar Schoegl 5f462b7711 [purefluid] Disable calculation of cv for two-phase region 2021-01-19 11:45:54 -05:00
Ingmar Schoegl 931a0a068b [purefluid] Fix calculation of fd properties at saturation lines
- TP setters cannot be used at saturated conditions
- Update logic for saturated properties that are based on finite differences
2021-01-19 11:45:54 -05:00