Cantera
3.1.0a1
|
Delegate methods of the ReactionData class to external functions. More...
#include <ReactionRateDelegator.h>
Delegate methods of the ReactionData class to external functions.
Definition at line 19 of file ReactionRateDelegator.h.
Public Member Functions | |
bool | update (const ThermoPhase &phase, const Kinetics &kin) override |
Update data container based on thermodynamic phase state. More... | |
void | update (double T) override |
Update data container based on temperature T More... | |
void | setType (const string &name) |
Set the type of the ReactionData class. More... | |
shared_ptr< ExternalHandle > | getWrapper () const |
Get the external language wrapper for this ReactionData object. More... | |
void | setWrapper (shared_ptr< ExternalHandle > wrapper) |
Set the external language wrapper for this ReactionData object. More... | |
virtual void | update (double T) |
Update data container based on temperature T More... | |
virtual void | update (double T, double extra) |
Update data container based on temperature T and an extra parameter. More... | |
virtual void | update (double T, const vector< double > &extra) |
Update data container based on temperature T and a vector parameter extra More... | |
virtual bool | update (const ThermoPhase &phase, const Kinetics &kin)=0 |
Update data container based on thermodynamic phase state. More... | |
Public Member Functions inherited from Delegator | |
string | delegatorName () const |
Get the name of the user-defined class in the extension language. More... | |
void | setDelegatorName (const string &delegatorName) |
Set the name of the user-defined class in the extension language. More... | |
void | setDelegate (const string &name, const function< void()> &func, const string &when) |
Set delegates for member functions with the signature void() . More... | |
void | setDelegate (const string &name, const function< void(bool)> &func, const string &when) |
set delegates for member functions with the signature void(bool) More... | |
void | setDelegate (const string &name, const function< void(double)> &func, const string &when) |
set delegates for member functions with the signature void(double) More... | |
void | setDelegate (const string &name, const function< void(AnyMap &)> &func, const string &when) |
set delegates for member functions with the signature void(AnyMap&) More... | |
void | setDelegate (const string &name, const function< void(const AnyMap &, const UnitStack &)> &func, const string &when) |
set delegates for member functions with the signature void(AnyMap&, UnitStack&) More... | |
void | setDelegate (const string &name, const function< void(const string &, void *)> &func, const string &when) |
set delegates for member functions with the signature void(const string&, void*) More... | |
void | setDelegate (const string &name, const function< void(std::array< size_t, 1 >, double *)> &func, const string &when) |
Set delegates for member functions with the signature void(double*) More... | |
void | setDelegate (const string &name, const function< void(std::array< size_t, 1 >, double, double *)> &func, const string &when) |
Set delegates for member functions with the signature void(double, double*) More... | |
void | setDelegate (const string &name, const function< void(std::array< size_t, 2 >, double, double *, double *)> &func, const string &when) |
Set delegates for member functions with the signature void(double, double*, double*) More... | |
void | setDelegate (const string &name, const function< void(std::array< size_t, 3 >, double *, double *, double *)> &func, const string &when) |
Set delegates for member functions with the signature void(double*, double*, double*) More... | |
void | setDelegate (const string &name, const function< int(double &, void *)> &func, const string &when) |
set delegates for member functions with the signature double(void*) More... | |
void | setDelegate (const string &name, const function< int(string &, size_t)> &func, const string &when) |
Set delegates for member functions with the signature string(size_t) More... | |
void | setDelegate (const string &name, const function< int(size_t &, const string &)> &func, const string &when) |
Set delegates for member functions with the signature size_t(string) More... | |
void | holdExternalHandle (const string &name, const shared_ptr< ExternalHandle > &handle) |
Store a handle to a wrapper for the delegate from an external language interface. More... | |
shared_ptr< ExternalHandle > | getExternalHandle (const string &name) const |
Get the handle for a wrapper for the delegate from the external language interface specified by name. More... | |
Public Member Functions inherited from ReactionData | |
virtual void | update (double T, double extra) |
Update data container based on temperature T and an extra parameter. More... | |
virtual void | update (double T, const vector< double > &extra) |
Update data container based on temperature T and a vector parameter extra More... | |
void | perturbTemperature (double deltaT) |
Perturb temperature of data container. More... | |
virtual void | restore () |
Restore data container after a perturbation. More... | |
virtual void | resize (size_t nSpecies, size_t nReactions, size_t nPhases) |
Update number of species, reactions and phases. More... | |
virtual void | invalidateCache () |
Force shared data and reaction rates to be updated next time. More... | |
Protected Attributes | |
string | m_rateType |
The reaction rate type. More... | |
shared_ptr< ExternalHandle > | m_wrappedSolution |
An external language's wrapper for the Solution object where this ReactionData object is being used. More... | |
shared_ptr< ExternalHandle > | m_wrappedData |
An external language's wrapper for this ReactionData object. More... | |
function< double(void *)> | m_update |
Delegated update method taking the Solution wrapper as its argument. More... | |
Protected Attributes inherited from Delegator | |
map< string, shared_ptr< ExternalHandle > > | m_handles |
Handles to wrappers for the delegated object in external language interfaces. More... | |
string | m_delegatorName |
Name of the class in the extension language. More... | |
map< string, function< void()> * > | m_funcs_v |
map< string, function< void(bool)> * > | m_funcs_v_b |
map< string, function< void(double)> * > | m_funcs_v_d |
map< string, function< void(AnyMap &)> * > | m_funcs_v_AMr |
map< string, function< void(const AnyMap &, const UnitStack &)> * > | m_funcs_v_cAMr_cUSr |
map< string, function< void(const string &, void *)> * > | m_funcs_v_csr_vp |
map< string, function< void(std::array< size_t, 1 >, double *)> * > | m_funcs_v_dp |
map< string, function< void(std::array< size_t, 1 >, double, double *)> * > | m_funcs_v_d_dp |
map< string, function< void(std::array< size_t, 2 >, double, double *, double *)> * > | m_funcs_v_d_dp_dp |
map< string, function< void(std::array< size_t, 3 >, double *, double *, double *)> * > | m_funcs_v_dp_dp_dp |
map< string, function< double(void *)> > | m_base_d_vp |
map< string, function< double(void *)> * > | m_funcs_d_vp |
map< string, function< string(size_t)> > | m_base_s_sz |
map< string, function< string(size_t)> * > | m_funcs_s_sz |
map< string, function< size_t(const string &)> > | m_base_sz_csr |
map< string, function< size_t(const string &)> * > | m_funcs_sz_csr |
Protected Attributes inherited from ReactionData | |
double | m_temperature_buf = -1.0 |
buffered temperature More... | |
Additional Inherited Members | |
Public Attributes inherited from ReactionData | |
double | temperature = 1.0 |
temperature More... | |
double | logT = 0.0 |
logarithm of temperature More... | |
double | recipT = 1.0 |
inverse of temperature More... | |
Protected Member Functions inherited from Delegator | |
void | install (const string &name, function< void()> &target, const function< void()> &func) |
Install a function with the signature void() as being delegatable. More... | |
void | install (const string &name, function< void(bool)> &target, const function< void(bool)> &func) |
Install a function with the signature void(bool) as being delegatable. More... | |
void | install (const string &name, function< void(double)> &target, const function< void(double)> &func) |
Install a function with the signature void(double) as being delegatable. More... | |
void | install (const string &name, function< void(AnyMap &)> &target, const function< void(AnyMap &)> &func) |
Install a function with the signature void(AnyMap&) as being delegatable. More... | |
void | install (const string &name, function< void(const AnyMap &, const UnitStack &)> &target, const function< void(const AnyMap &, const UnitStack &)> &func) |
Install a function with the signature void(const AnyMap&, const UnitStack&) as being delegatable. More... | |
void | install (const string &name, function< void(const string &, void *)> &target, const function< void(const string &, void *)> &func) |
Install a function with the signature `void(const string&, void*) as being delegatable. More... | |
void | install (const string &name, function< void(std::array< size_t, 1 >, double *)> &target, const function< void(std::array< size_t, 1 >, double *)> &func) |
Install a function with the signature void(double*) as being delegatable. More... | |
void | install (const string &name, function< void(std::array< size_t, 1 >, double, double *)> &target, const function< void(std::array< size_t, 1 >, double, double *)> &func) |
Install a function with the signature void(double, double*) as being delegatable. More... | |
void | install (const string &name, function< void(std::array< size_t, 2 >, double, double *, double *)> &target, const function< void(std::array< size_t, 2 >, double, double *, double *)> &func) |
Install a function with the signature void(double, double*, double*) as being delegatable. More... | |
void | install (const string &name, function< void(std::array< size_t, 3 >, double *, double *, double *)> &target, const function< void(std::array< size_t, 3 >, double *, double *, double *)> &base) |
Install a function with the signature void(double*, double*, double*) as being delegatable. More... | |
void | install (const string &name, function< double(void *)> &target, const function< double(void *)> &func) |
Install a function with the signature double(void*) as being delegatable. More... | |
void | install (const string &name, function< string(size_t)> &target, const function< string(size_t)> &base) |
Install a function with the signature string(size_t) as being delegatable. More... | |
void | install (const string &name, function< size_t(const string &)> &target, const function< size_t(const string &)> &base) |
Install a function with the signature size_t(string) as being delegatable. More... | |
template<typename BaseFunc , class ... Args> | |
function< void(Args ...)> | makeDelegate (const function< void(Args ...)> &func, const string &when, BaseFunc base) |
Create a delegate for a function with no return value. More... | |
template<typename ReturnType , class ... Args> | |
function< ReturnType(Args ...)> | makeDelegate (const string &name, const function< int(ReturnType &, Args ...)> &func, const string &when, const function< ReturnType(Args ...)> &base) |
Create a delegate for a function with a return value. More... | |
|
overridevirtual |
Update data container based on thermodynamic phase state.
This update mechanism is used by Kinetics reaction rate evaluators.
evalFromStruct
method needs to be called (assuming previously-calculated values were cached) Implements ReactionData.
Definition at line 23 of file ReactionRateDelegator.cpp.
|
inlineoverridevirtual |
Update data container based on temperature T
Only used in conjunction with MultiRateBase::evalSingle / ReactionRate::eval. This method allows for testing of a reaction rate expression outside of Kinetics reaction rate evaluators.
Reimplemented from ReactionData.
Definition at line 26 of file ReactionRateDelegator.h.
|
inline |
Set the type of the ReactionData class.
This should match the corresponding ReactionRate class's type
Definition at line 35 of file ReactionRateDelegator.h.
|
inline |
Get the external language wrapper for this ReactionData object.
Definition at line 40 of file ReactionRateDelegator.h.
|
inline |
Set the external language wrapper for this ReactionData object.
Definition at line 45 of file ReactionRateDelegator.h.
|
inline |
Update data container based on temperature T
Only used in conjunction with MultiRateBase::evalSingle / ReactionRate::eval. This method allows for testing of a reaction rate expression outside of Kinetics reaction rate evaluators.
Definition at line 36 of file ReactionData.h.
|
inline |
Update data container based on temperature T and an extra parameter.
Only used in conjunction with MultiRateBase::evalSingle / ReactionRate::eval. This method allows for testing of a reaction rate expression outside of Kinetics reaction rate evaluators.
Definition at line 48 of file ReactionData.h.
|
inline |
Update data container based on temperature T and a vector parameter extra
Only used in conjunction with MultiRateBase::evalSingle / ReactionRate::eval. This method allows for testing of a reaction rate expression outside of Kinetics reaction rate evaluators.
Definition at line 62 of file ReactionData.h.
virtual bool update |
Update data container based on thermodynamic phase state.
This update mechanism is used by Kinetics reaction rate evaluators.
evalFromStruct
method needs to be called (assuming previously-calculated values were cached)
|
protected |
The reaction rate type.
Definition at line 51 of file ReactionRateDelegator.h.
|
protected |
An external language's wrapper for the Solution object where this ReactionData object is being used.
Definition at line 55 of file ReactionRateDelegator.h.
|
protected |
An external language's wrapper for this ReactionData object.
Definition at line 58 of file ReactionRateDelegator.h.
|
protected |
Delegated update
method taking the Solution wrapper as its argument.
Definition at line 61 of file ReactionRateDelegator.h.