LILAC
|
#include <simulation.h>
Public Member Functions | |
virtual double | simulate ()=0 |
This function simulates the system and returns the resulting score. | |
virtual double | score () |
This function returns the score of the system in its current state. | |
virtual void | postprocess (input &inval)=0 |
virtual std::vector< std::string > | dependencies () const =0 |
![]() | |
size_t | get_dimension () const |
![]() | |
item () | |
virtual | ~item () |
virtual void | print () const |
Standard print function. | |
virtual void | update () |
virtual std::string | type () const =0 |
void | setname (const std::string n) |
void | set_write_name (std::string wname) |
const std::string & | name () const |
const std::string & | write_name () const |
Public Attributes | |
std::string | out_f_name |
Protected Attributes | |
controller * | cont |
The controller. | |
objective * | obj |
The objective function. | |
writer * | cur_writer |
![]() | |
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) |
![]() | |
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 system being simulated. It simulates a run of the system and returns a score for the current simulation run.
Every run of LILAC will have a simulation class that determines what is computed
For example, the jones_optical simulation class is used for the mode-locked laser simulations. This class holds an integrator object, which then in turns holds a certain rhs function. This function normally is of the type rhs_CNLS.
Definition at line 32 of file simulation.h.
|
pure virtual |
This returns the dependencies for the simulation class. The simulation class has the same dependencies as item_dim, as well as:
- controller controller: This object is the controller that controls the variables in the current simulation class - objective objective: This object is the objective function for the
Implements item_dim.
Implemented in stable_ode, jones_optical, stable_spectral_pde_1d_tmpl< T >, stable_spectral_pde_1d_tmpl< comp >, stable, and ode.
Definition at line 35 of file simulation.cpp.
|
pure virtual |
Reimplemented from item_dim.
Implemented in stable_ode, jones_optical, stable_spectral_pde_1d_tmpl< T >, stable_spectral_pde_1d_tmpl< comp >, ode_tmpl< T >, stable_ode_tmpl< T >, stable_ode_tmpl< comp >, stable, and ode.
Definition at line 19 of file simulation.cpp.
|
virtual |
This function returns the score of the system in its current state.
Reimplemented in stable_ode, jones_optical, stable_ode_tmpl< T >, and stable_ode_tmpl< comp >.
Definition at line 40 of file simulation.cpp.
|
pure virtual |
This function simulates the system and returns the resulting score.
Implemented in ode_tmpl< T >, stable, and ode.
|
protected |
The controller.
Definition at line 35 of file simulation.h.
|
protected |
Definition at line 38 of file simulation.h.
|
protected |
The objective function.
Definition at line 37 of file simulation.h.
std::string simulation::out_f_name |
Definition at line 40 of file simulation.h.