Utopia 2
Framework for studying models of complex & adaptive systems.
|
The environment model provides a collection of parameter functions designed for coupling to other models. More...
Typedefs | |
using | Utopia::Models::Environment::ModelTypes = Utopia::ModelTypes<> |
Type helper to define types used by the model. | |
Enumerations | |
enum class | Utopia::Models::Environment::ValMode { Utopia::Models::Environment::ValMode::Set , Utopia::Models::Environment::ValMode::Add } |
Value calculation mode. More... | |
Functions | |
template<typename EnvModel , class EnvParamFunc = typename EnvModel::EnvParamFunc> | |
EnvParamFunc | Utopia::Models::Environment::ParameterFunctionCollection::epf_increment (const EnvModel &model, const std::string param_name, const Config &cfg) |
Creates a rule function for incrementing parameter values. | |
template<typename EnvModel , class EnvParamFunc = typename EnvModel::EnvParamFunc> | |
EnvParamFunc | Utopia::Models::Environment::ParameterFunctionCollection::epf_random (const EnvModel &model, const std::string ¶m_name, const Config &cfg) |
Creates a rule function for random parameter values. | |
template<typename EnvModel , class EnvParamFunc = typename EnvModel::EnvParamFunc> | |
EnvParamFunc | Utopia::Models::Environment::ParameterFunctionCollection::epf_rectangular (const EnvModel &model, const Config &cfg) |
Creates a rule function for rectangular function like parameter values. | |
template<typename EnvModel , class EnvParamFunc = typename EnvModel::EnvParamFunc> | |
EnvParamFunc | Utopia::Models::Environment::ParameterFunctionCollection::epf_set (const EnvModel &, const Config &cfg) |
Creates a rule function for setting a parameter value. | |
template<typename EnvModel , class EnvParamFunc = typename EnvModel::EnvParamFunc> | |
EnvParamFunc | Utopia::Models::Environment::ParameterFunctionCollection::epf_sinusoidal (const EnvModel &model, const Config &cfg) |
Creates a rule function for sinusoidal parameter values. | |
template<typename EnvModel , class EnvStateFunc = typename EnvModel::EnvStateFunc> | |
std::pair< EnvStateFunc, Update > | Utopia::Models::Environment::StateFunctionCollection::esf_noise (const EnvModel &model, const std::string ¶m_name, const Config &cfg) |
Creates a rule function for noisy parameter values. | |
template<typename EnvModel , typename Extent , class EnvStateFunc = typename EnvModel::EnvStateFunc> | |
std::pair< EnvStateFunc, Update > | Utopia::Models::Environment::StateFunctionCollection::esf_slope (const EnvModel &, const std::string ¶m_name, const Config &cfg, const Extent &extent) |
Creates a rule function for spatially linearly parameter values. | |
template<typename EnvModel , class EnvStateFunc = typename EnvModel::EnvStateFunc> | |
std::pair< EnvStateFunc, Update > | Utopia::Models::Environment::StateFunctionCollection::esf_steps (const EnvModel &, const std::string ¶m_name, const Config &cfg) |
Creates a rule function for spatial steps in the parameter values. | |
template<typename EnvModel , class EnvStateFunc = typename EnvModel::EnvStateFunc> | |
std::pair< EnvStateFunc, Update > | Utopia::Models::Environment::StateFunctionCollection::esf_uniform (const EnvModel &, const std::string ¶m_name, const Config &cfg) |
Creates a rule function for spatially uniform parameter values. | |
ValMode | Utopia::Models::Environment::extract_val_mode (const DataIO::Config &cfg, const std::string &context) |
Given a configuration node, extract the value mode. | |
template<typename Time > | |
std::pair< bool, std::set< Time > > | Utopia::Models::Environment::extract_times (const DataIO::Config &cfg) |
template<typename Time > | |
std::tuple< bool, bool, std::set< Time > > | Utopia::Models::Environment::extract_times_and_initialization (const DataIO::Config &cfg) |
template<typename Time > | |
Time | Utopia::Models::Environment::extract_time_start (const DataIO::Config &cfg) |
Given a configuration, extracts the time of first function invocation. | |
The environment model provides a collection of parameter functions designed for coupling to other models.
For details on how this is to be used, consult the actual model documentation. The doxygen documentation here provides merely the API reference and information on the available parameters for each of the environment functions.
Type helper to define types used by the model.
EnvParamFunc Utopia::Models::Environment::ParameterFunctionCollection::epf_increment | ( | const EnvModel & | model, |
const std::string | param_name, | ||
const Config & | cfg | ||
) |
Creates a rule function for incrementing parameter values.
param_name | The parameter to attach this environment function to |
cfg | Configuration for this environment function. Allows the following arguments:
|
EnvParamFunc Utopia::Models::Environment::ParameterFunctionCollection::epf_random | ( | const EnvModel & | model, |
const std::string & | param_name, | ||
const Config & | cfg | ||
) |
Creates a rule function for random parameter values.
param_name | The parameter to attach this environment function to |
cfg | Configuration for this environment function. Allows the following arguments:
|
EnvParamFunc Utopia::Models::Environment::ParameterFunctionCollection::epf_rectangular | ( | const EnvModel & | model, |
const Config & | cfg | ||
) |
Creates a rule function for rectangular function like parameter values.
Rectangular shaped parameters.
param_name | The parameter to attach this environment function to |
cfg | Configuration for this environment function. Allows the following arguments:
|
EnvParamFunc Utopia::Models::Environment::ParameterFunctionCollection::epf_set | ( | const EnvModel & | , |
const Config & | cfg | ||
) |
Creates a rule function for setting a parameter value.
param_name | The parameter to attach this environment function to |
cfg | Configuration for this environment function. Allows the following arguments:
|
EnvParamFunc Utopia::Models::Environment::ParameterFunctionCollection::epf_sinusoidal | ( | const EnvModel & | model, |
const Config & | cfg | ||
) |
Creates a rule function for sinusoidal parameter values.
param_name | The parameter to attach this environment function to |
cfg | Configuration for this environment function. Allows the following arguments:
|
std::pair< EnvStateFunc, Update > Utopia::Models::Environment::StateFunctionCollection::esf_noise | ( | const EnvModel & | model, |
const std::string & | param_name, | ||
const Config & | cfg | ||
) |
Creates a rule function for noisy parameter values.
param_name | The parameter to attach this environment function to |
cfg | Configuration for this environment function. Allows the following arguments:
|
std::pair< EnvStateFunc, Update > Utopia::Models::Environment::StateFunctionCollection::esf_slope | ( | const EnvModel & | , |
const std::string & | param_name, | ||
const Config & | cfg, | ||
const Extent & | extent | ||
) |
Creates a rule function for spatially linearly parameter values.
param_name | The parameter to attach this environment function to |
cfg | Configuration for this environment function. Allows the following arguments:
|
extent | The extent of space |
std::pair< EnvStateFunc, Update > Utopia::Models::Environment::StateFunctionCollection::esf_steps | ( | const EnvModel & | , |
const std::string & | param_name, | ||
const Config & | cfg | ||
) |
Creates a rule function for spatial steps in the parameter values.
param_name | The parameter to attach this environment function to |
cfg | Configuration for this environment function. Allows the following arguments:
|
std::pair< EnvStateFunc, Update > Utopia::Models::Environment::StateFunctionCollection::esf_uniform | ( | const EnvModel & | , |
const std::string & | param_name, | ||
const Config & | cfg | ||
) |
Creates a rule function for spatially uniform parameter values.
param_name | The parameter to attach this environment function to |
cfg | Configuration for this environment function. Allows the following arguments:
|
Time Utopia::Models::Environment::extract_time_start | ( | const DataIO::Config & | cfg | ) |
Given a configuration, extracts the time of first function invocation.
std::pair< bool, std::set< Time > > Utopia::Models::Environment::extract_times | ( | const DataIO::Config & | cfg | ) |
Given a configuration, extracts the set of times at which to invoke environment functions
std::tuple< bool, bool, std::set< Time > > Utopia::Models::Environment::extract_times_and_initialization | ( | const DataIO::Config & | cfg | ) |
Given a configuration, extracts the set of times at which to invoke environment functions and whether to invoke them at initialization
ValMode Utopia::Models::Environment::extract_val_mode | ( | const DataIO::Config & | cfg, |
const std::string & | context | ||
) |
Given a configuration node, extract the value mode.