LILAC
|
This class defines the integration base class. More...
#include <integrator.h>
Public Member Functions | |
virtual void | initial_condition (ptr_passer in, size_t len) |
void | initial_condition (ptr_passer in) |
virtual void | postprocess (input &inval) |
Initiates the integrator from input values. | |
virtual std::vector< std::string > | dependencies () const =0 |
virtual std::string | type () const =0 |
Returns the name of the integrator. | |
virtual int | integrate (ptr_passer u, double t0, double tf)=0 |
Integrates the function rh. | |
virtual | ~integrator () |
Blank destructor for integrator. | |
![]() | |
size_t | get_dimension () const |
![]() | |
item () | |
virtual | ~item () |
virtual void | print () const |
Standard print function. | |
virtual void | update () |
void | setname (const std::string n) |
void | set_write_name (std::string wname) |
const std::string & | name () const |
const std::string & | write_name () const |
![]() | |
virtual const std::type_info & | vtype () const =0 |
bool | compare (const vartype *in) const |
bool | compare (const vartype &in) const |
bool | compare (const std::type_info &tinf) |
template<typename T > | |
bool | compare () const |
template<typename T > | |
bool | compare (const T &in) const |
std::string | vname () const |
virtual const std::type_info & | vtype_internal () const |
bool | compare_internal (const vartype *in) const |
bool | compare_internal (const vartype &in) const |
bool | compare_internal (const std::type_info &tinf) |
template<typename T > | |
bool | compare_internal () const |
template<typename T > | |
bool | compare_internal (const T &in) const |
std::string | vname_internal () const |
virtual | ~vartype () |
Protected Attributes | |
rhs * | rh_val |
![]() | |
mempool | memp |
std::set< item_dim * > | children |
item_dim * | parent |
size_t | dimension |
![]() | |
std::string | _name |
std::string | _write_name |
char | has_write_name |
Additional Inherited Members | |
![]() | |
static std::shared_ptr< item > | create (std::string name, engineimp *rval) |
![]() | |
engineimp * | holder |
![]() | |
void | print_upstream () |
virtual void | _do_mem_update (size_t dim_old) |
void | add_as_parent (item_dim *p) |
void | add_as_parent (std::shared_ptr< item_dim > p) |
void | update_dim (size_t dim_new) |
This class defines the integration base class.
This class defines the base integration class, the interface that is used by the engine to integrate differential equations
Definition at line 29 of file integrator.h.
|
inlinevirtual |
Blank destructor for integrator.
Definition at line 51 of file integrator.h.
|
pure virtual |
This function returns the dependencies of the integrator class
Implements item_dim.
Implemented in example_integrator, rk45, euler_sde, and rk4.
Definition at line 28 of file integrator.cpp.
|
virtual |
Definition at line 45 of file integrator.cpp.
|
inline |
|
pure virtual |
Integrates the function rh.
This function integrates the equation du/dt=rh->dxdt(u) from t0 to tf
rh | The function being integrated |
u | A pointer to the initial condition, also stores the final condition |
t0 | The initial time |
tf | The ending time |
Implemented in example_integrator_tmpl< T >, rk45_tmpl< T >, euler_sde_tmpl< T >, rk45, euler_sde, rk4, rk4_tmpl< T >, and example_integrator.
|
virtual |
Initiates the integrator from input values.
This function initializes the internal memory and variables in the initiator class When called, all parameters returned by dependencies are promised to have been processed at the appropriate level of detail
Reimplemented from item_dim.
Reimplemented in example_integrator_tmpl< T >, example_integrator, rk45_tmpl< T >, euler_sde_tmpl< T >, rk45, rk4_tmpl< T >, euler_sde, and rk4.
Definition at line 40 of file integrator.cpp.
|
pure virtual |
Returns the name of the integrator.
Implements item.
Implemented in example_integrator_tmpl< T >, rk45_tmpl< T >, euler_sde_tmpl< T >, example_integrator, rk45, euler_sde, rk4, and rk4_tmpl< T >.
|
protected |
Definition at line 31 of file integrator.h.