Commit Graph

1495 Commits

Author SHA1 Message Date
Ray Speth
716e397c2e [Input] Refactor to reduce Python manipulations of AnyMap
Eliminates the 'mergeAnyMap' function, and introduces a 'parameters' method
for classes to return an AnyMap which can optionally contain the user-provided
input data, rather than needing to create the AnyMap in advance and add the
user-created fields separately.
2021-04-14 09:43:09 -05:00
Ray Speth
df262a0f92 [Input] Use full AnyMap sorting algorithm in all cases
The simpler sorting algorithm used in Python did not account for the
additional ordering rules allowed by the AnyMap class.
2021-04-14 09:43:09 -05:00
Ray Speth
8b8bf4b12b [Input] Fix key ordering when outputting to Python
Fixes an error in the AnyValue assignment operator introduced in dab4b7066.
2021-04-14 09:43:09 -05:00
Ray Speth
e6f5195b5d [Input/Python] Enable generation of YAML files from Python Solutions 2021-04-14 09:43:09 -05:00
Ray Speth
f6bd2c0954 [Input] Add option of setting units to YamlWriter 2021-04-14 09:43:09 -05:00
Ray Speth
73f779fb12 [Input] Enable conversion of added data to units of the parent AnyMap 2021-04-14 09:43:09 -05:00
Ray Speth
0f0a02056f [Python] Add access to input data for Reaction objects 2021-04-14 09:43:09 -05:00
Ray Speth
b8c04c27dd [Python] Add access to input data for Species objects 2021-04-14 09:43:09 -05:00
Ray Speth
b01c8b4e3f [Python] Add access to input data for Solution objects 2021-04-14 09:43:09 -05:00
Ray Speth
17497d0528 [Python] Add conversion of AnyMap to native Python types 2021-04-14 09:43:09 -05:00
band-a-prend
b3c69ac086 Fix python_minimal interface to install Cantera YAML tools
The python_minimal SConscript did't copy
cantera yaml tools to python_minimal directory
and therefore didn's install these scripts.

Signed-off-by: band-a-prend <torokhov-s-a@yandex.ru>
2021-04-10 11:16:58 -04:00
Lee Sharma
a4b9bb57a6 Fix documentation bug for YAML format
Makes the `Reaction.listFromFile` example valid by adding the required
Kinetics object as the second argument. Now the example will run as-is and
includes a sentence stating that the `Kinetics` object is required with YAML.

Fixes #1001
2021-03-27 12:35:52 -04:00
Ingmar Schoegl
908a2cceb5 [cti2yaml] fix conversion for transport='None' 2021-03-20 19:05:26 -04:00
Ingmar Schoegl
4809308b5a [Kinetics] simplify Reaction.wrap 2021-03-19 09:59:59 -04:00
Ingmar Schoegl
3cd7eee02b [Kinetics] implement review comments 2021-03-19 09:59:59 -04:00
Ingmar Schoegl
69820f3215 [Func1] roll back blocking method callbacks 2021-03-19 09:59:59 -04:00
Ingmar Schoegl
4de120d0a4 [Kinetics] add intermediate class Reaction2 as base for new framework
The intermediate class prevents naming clashes between derived classes
(e.g. 'rate' members).
2021-03-19 09:59:59 -04:00
Ingmar Schoegl
72e4acefba [Kinetics] introduce reaction-rate specific shared data types 2021-03-19 09:59:59 -04:00
Ingmar Schoegl
3d2cb640cd [Kinetics] address 'simple' review comments for new reaction framework
* streamline names:
  - RxnRate -> ReactionRate
  - CustomPyRate -> CustomFunc1Rate
  - CustomPyReaction -> CustomFunc1Reaction
* label some (potentially temporary) methods as @internal
* minor fixes in Python interface
2021-03-19 09:59:59 -04:00
Ingmar Schoegl
96e63e20c3 [kinetics] add signatures for analytical derivatives to RxnRates 2021-03-19 09:59:59 -04:00
Ingmar Schoegl
dfc4ea4520 [examples] switch custom_reactions.py to gri30.yaml 2021-03-19 09:59:59 -04:00
Ingmar Schoegl
9f9f883c46 [Kinetics] create State data container for RxnRate evaluations 2021-03-19 09:59:59 -04:00
Ingmar Schoegl
0d1f246d29 [Kinetics] make RxnRate thread-safe 2021-03-19 09:59:59 -04:00
Ingmar Schoegl
9f5e0f7ef7 [Kinetics] minor simplifications and edits 2021-03-19 09:59:59 -04:00
Ingmar Schoegl
5be2bf9d67 [samples] illustrate usage of Python CustomReaction 2021-03-19 09:59:59 -04:00
Ingmar Schoegl
c3518aadc2 [UnitTest] add tests for TestReaction 2021-03-19 09:59:59 -04:00
Ingmar Schoegl
132bbbed4a [Kinetics] expose TestReaction to Python interface 2021-03-19 09:59:59 -04:00
Ingmar Schoegl
da0cbf9771 [UnitTest] include new test in __init__ 2021-03-19 09:59:59 -04:00
Ingmar Schoegl
993d491207 [UnitTest] Create stand-alone file to test reactions 2021-03-19 09:59:59 -04:00
Ingmar Schoegl
f819e3c36c [Func1] prevent invalid callback functions. 2021-03-19 09:59:59 -04:00
Ingmar Schoegl
ba53274b21 [Kinetics] update state used for RxnRate calculations 2021-03-19 09:59:59 -04:00
Ingmar Schoegl
b2a65ae3b2 [Kinetics] generalize addition of RxnRate in GasKinetics 2021-03-19 09:59:59 -04:00
Ingmar Schoegl
5d10e47361 [Kinetics] enable calculation of rate constants for CustomReaction 2021-03-19 09:59:59 -04:00
Ingmar Schoegl
8bd866ca7d [Kinetics] Create C++ abstract base class RxnRate 2021-03-19 09:59:59 -04:00
Ingmar Schoegl
22a651cc6f [Kinetics] make CustomRate persistent withing CustomReaction 2021-03-19 09:59:59 -04:00
Ingmar Schoegl
0ce786a812 [Func1] make CxxFunc1 shareable 2021-03-19 09:59:59 -04:00
Ingmar Schoegl
478cbe8761 [Kinetics] deprecate functions referencing magic numbers 2021-03-19 09:59:59 -04:00
Ingmar Schoegl
f0868c7c6a [Kinetics] expose reaction_type_str to Python 2021-03-19 09:59:59 -04:00
Ingmar Schoegl
fe29554c94 [Kinetics] mark unused reaction type magic numbers 2021-03-19 09:59:59 -04:00
Ingmar Schoegl
20be280e52 [Kinetics] add default constructor for C++ Reaction 2021-03-19 09:59:59 -04:00
Ingmar Schoegl
8f2d1813f5 [Kinetics] simplify naming of CustomPyRate 2021-03-19 09:59:59 -04:00
Ingmar Schoegl
6d8a900a31 [Kinetics] add initial unit tests 2021-03-19 09:59:59 -04:00
Ingmar Schoegl
43bf899f12 [Kinetics] implement setup of CustomReaction 2021-03-19 09:59:59 -04:00
Ingmar Schoegl
6a39afa6be [Kinetics] implement Python constructor for CustomReaction 2021-03-19 09:59:59 -04:00
Ingmar Schoegl
291f4fc178 [Kinetics] expose CustomReaction to Python 2021-03-19 09:59:59 -04:00
Ingmar Schoegl
7403d6746d [Kinetics] initial draft for custom reaction rate defined in Python 2021-03-19 09:59:59 -04:00
Ingmar Schoegl
02d8c1b525 [Kinetics] buffer available Reaction class constructors in Cython 2021-03-19 09:59:59 -04:00
Ingmar Schoegl
0e4c6823b5 [Kinetics] remove magic numbers from Python interface
- replace 'wrapReaction' by 'Reaction.wrap' method
- eliminate hard-coded object instantiation
2021-03-19 09:59:59 -04:00
Ingmar Schoegl
859e91ebd2 [Kinetics] create ReactionFactory 2021-03-19 09:59:59 -04:00
Raymond Speth
c6ff662676 [Test] Use YAML input for reactor surface test 2021-03-18 22:33:26 -04:00