|
| IonIfBase (const IonType &type, Target target, int num_node, const std::vector< std::reference_wrapper< IonType >> &plugins) |
| Constructor for IonIfBase. More...
|
|
virtual | ~IonIfBase () |
| Virtual destructor declaration. More...
|
|
const IonType & | get_type () const |
| Gets this IMP's model type. More...
|
|
int | get_num_node () const |
| Gets the number of nodes handled by this IMP. More...
|
|
std::size_t | get_num_threads () const |
| Gets the number of threads used for running this IMP. More...
|
|
IonIfBase * | parent () const |
| Gets the parent IMP. More...
|
|
void | set_parent (IonIfBase *parent) |
|
std::vector< IonIfBase * > & | plugins () |
| Returns a vector containing the plugins of this IMP. More...
|
|
uint32_t | get_reqdat () const |
| Gets the data flags for this IMP's required data. More...
|
|
uint32_t | get_moddat () const |
| Gets the data flags for this IMP's modified data. More...
|
|
void | set_moddat (uint32_t data) |
| Set the data flag for this IMP's modified data. More...
|
|
cell_geom & | cgeom () |
| Gets the cell geometry data. More...
|
|
float | get_dt () const |
| Gets the basic integration time step. More...
|
|
void | set_dt (float dt) |
| Sets the basic integration time step. More...
|
|
ts & | get_tstp () |
| Gets the time stepper. More...
|
|
virtual void * | get_sv_address ()=0 |
| Gets the raw address of the state variables for this IMP. More...
|
|
virtual std::size_t | get_sv_size () const =0 |
| Gets the size of the structure this IMP uses for state variables. More...
|
|
std::vector< LUT > & | tables () |
| Gets the array of state variables. More...
|
|
LUT * | tables_d () const |
| Gets an array of LUTs. More...
|
|
size_t | get_n_tables_d () const |
| Gets the size of the array returned by IonIf::tables_d. More...
|
|
Target | get_target () const |
|
virtual void | set_target (Target target) |
|
void | initialize_params () |
| Initializes user modifiable parameters with default values defined in the respective ionic models. More...
|
|
virtual void | initialize (double dt, GlobalData_t **impdat) |
| Initializes lookup table and state variable tables. More...
|
|
void | compute (int start, int end, GlobalData_t **data) |
| Perform ionic model computation for 1 time step. More...
|
|
char * | fill_buf (char *buf, int *n, opencarp::Salt_list *l) const |
| Appends the state variables to a buffer. More...
|
|
int | restore (opencarp::FILE_SPEC in, int n, const int *pos, IIF_Mask_t *mask, size_t *offset, IMPinfo *impinfo, const int *loc2canon) |
| Reads in the state variables for an IMP. More...
|
|
int | dump_luts (bool zipped) |
| Dumps array of LUTs to file. More...
|
|
void | destroy_luts () |
| Destroys array of LUTs. More...
|
|
void | tune (const char *im_par, const char *plugs, const char *plug_par) |
| Tunes specific IMP parameters from files. More...
|
|
int | read_svs (FILE *file) |
| Reads state variable values for one cell from a file. More...
|
|
int | write_svs (FILE *file, int node) |
|
virtual void | copy_SVs_from (IonIfBase &other, bool alloc)=0 |
| Copies the state variables of an IMP. More...
|
|
void | copy_plugins_from (IonIfBase &other) |
| Copies the plugins of an IMP. More...
|
|
void | for_each (const std::function< void(IonIfBase &)> &consumer) |
| Executes the consumer functions on this IMP and each of its plugins. More...
|
|
Represents the ionic model and plug-in (IMP) data structure.
Definition at line 138 of file ION_IF.h.
void limpet::IonIfBase::tune |
( |
const char * |
im_par, |
|
|
const char * |
plugs, |
|
|
const char * |
plug_par |
|
) |
| |
Tunes specific IMP parameters from files.
For each IMP, a comma separated list of expressions is specified. Each expression is of the form
parameter[+|-|=|/|*][-]###[.[###][e|E[-|+]###][%]
which specifies a float optionally preceded by * or + or - or / or = and optionally followed by a % (float is expressed as a percent of the default value). The meanings of the flags are
- =
- assign this value to the parameter
- *
- multiply the default parameter value by this
- /
- divide the default parameter value by this
- +
- add this to the default value
- -
- subtract this from the default value
- %
- treat the float as this percentage of the default
Plugins and their respective parameters must be specified in the same order
- Parameters
-
im_par | comma separated list of IM specific parameters |
plugs | plugins specified in colon separated list |
plug_par | colon separated list of comma separated lists specifiying parameters for each plugin |
Definition at line 348 of file ION_IF.cc.