![]() |
User Guide
|
#include <string>
#include <unordered_map>
Go to the source code of this file.
Namespaces | |
nmodl | |
encapsulates code generation backend implementations | |
nmodl::codegen | |
nmodl::codegen::naming | |
different variable names used in code generation | |
Variables | |
static constexpr char | nmodl::codegen::naming::NMODL_VERSION [] = "7.7.0" |
nmodl language version More... | |
static constexpr char | nmodl::codegen::naming::DERIVIMPLICIT_METHOD [] = "derivimplicit" |
derivimplicit method in nmodl More... | |
static constexpr char | nmodl::codegen::naming::EULER_METHOD [] = "euler" |
euler method in nmodl More... | |
static constexpr char | nmodl::codegen::naming::CNEXP_METHOD [] = "cnexp" |
cnexp method in nmodl More... | |
static constexpr char | nmodl::codegen::naming::AFTER_CVODE_METHOD [] = "after_cvode" |
cvode method in nmodl More... | |
static constexpr char | nmodl::codegen::naming::CVODE_T_METHOD [] = "cvode_t" |
cvode_t method in nmodl More... | |
static constexpr char | nmodl::codegen::naming::CVODE_T_V_METHOD [] = "cvode_t_v" |
cvode_t_v method in nmodl More... | |
static constexpr char | nmodl::codegen::naming::SPARSE_METHOD [] = "sparse" |
sparse method in nmodl More... | |
static constexpr char | nmodl::codegen::naming::NET_EVENT_METHOD [] = "net_event" |
net_event function call in nmodl More... | |
static constexpr char | nmodl::codegen::naming::NET_MOVE_METHOD [] = "net_move" |
net_move function call in nmodl More... | |
static constexpr char | nmodl::codegen::naming::NET_SEND_METHOD [] = "net_send" |
net_send function call in nmodl More... | |
static constexpr char | nmodl::codegen::naming::NRN_POINTING_METHOD [] = "nrn_pointing" |
nrn_pointing function in nmodl More... | |
static constexpr char | nmodl::codegen::naming::ARTIFICIAL_CELL [] = "ARTIFICIAL_CELL" |
artificial cell keyword in nmodl More... | |
static constexpr char | nmodl::codegen::naming::POINT_PROCESS [] = "POINT_PROCESS" |
point process keyword in nmodl More... | |
static constexpr char | nmodl::codegen::naming::DIAM_VARIABLE [] = "diam" |
inbuilt neuron variable for diameter of the compartment More... | |
static constexpr char | nmodl::codegen::naming::NODE_AREA_VARIABLE [] = "node_area" |
inbuilt neuron variable for area of the compartment More... | |
static constexpr char | nmodl::codegen::naming::AREA_VARIABLE [] = "area" |
similar to node_area but user can explicitly declare it as area More... | |
static constexpr char | nmodl::codegen::naming::POINT_PROCESS_VARIABLE [] = "point_process" |
inbuilt neuron variable for point process More... | |
static constexpr char | nmodl::codegen::naming::TQITEM_VARIABLE [] = "tqitem" |
inbuilt neuron variable for tqitem process More... | |
static constexpr char | nmodl::codegen::naming::CONDUCTANCE_VARIABLE [] = "g" |
range variable for conductance More... | |
static constexpr char | nmodl::codegen::naming::USE_TABLE_VARIABLE [] = "usetable" |
global variable to indicate if table is used More... | |
static constexpr char | nmodl::codegen::naming::CONDUCTANCE_UNUSED_VARIABLE [] = "g_unused" |
range variable when conductance is not used (for vectorized model) More... | |
static constexpr char | nmodl::codegen::naming::VOLTAGE_UNUSED_VARIABLE [] = "v_unused" |
range variable for voltage when unused (for vectorized model) More... | |
static constexpr char | nmodl::codegen::naming::T_SAVE_VARIABLE [] = "tsave" |
variable t indicating last execution time of net receive block More... | |
static constexpr char | nmodl::codegen::naming::NTHREAD_RHS_SHADOW [] = "_shadow_rhs" |
shadow rhs variable in neuron thread structure More... | |
static constexpr char | nmodl::codegen::naming::NTHREAD_D_SHADOW [] = "_shadow_d" |
shadow d variable in neuron thread structure More... | |
static constexpr char | nmodl::codegen::naming::CELSIUS_VARIABLE [] = "celsius" |
global temperature variable More... | |
static constexpr char | nmodl::codegen::naming::INST_GLOBAL_MEMBER [] = "global" |
instance struct member pointing to the global variable structure More... | |
static constexpr char | nmodl::codegen::naming::NTHREAD_T_VARIABLE [] = "t" |
t variable in neuron thread structure More... | |
static constexpr char | nmodl::codegen::naming::NTHREAD_DT_VARIABLE [] = "dt" |
dt variable in neuron thread structure More... | |
static constexpr char | nmodl::codegen::naming::DEFAULT_FLOAT_TYPE [] = "double" |
default float variable type More... | |
static constexpr char | nmodl::codegen::naming::DEFAULT_LOCAL_VAR_TYPE [] = "double" |
default local variable type More... | |
static constexpr char | nmodl::codegen::naming::DEFAULT_INTEGER_TYPE [] = "int" |
default integer variable type More... | |
static constexpr char | nmodl::codegen::naming::AREA_SEMANTIC [] = "area" |
semantic type for area variable More... | |
static constexpr char | nmodl::codegen::naming::POINT_PROCESS_SEMANTIC [] = "pntproc" |
semantic type for point process variable More... | |
static constexpr char | nmodl::codegen::naming::POINTER_SEMANTIC [] = "pointer" |
semantic type for pointer variable More... | |
static constexpr char | nmodl::codegen::naming::CORE_POINTER_SEMANTIC [] = "bbcorepointer" |
semantic type for core pointer variable More... | |
static constexpr char | nmodl::codegen::naming::RANDOM_SEMANTIC [] = "random" |
semantic type for RANDOM variable More... | |
static constexpr char | nmodl::codegen::naming::NET_SEND_SEMANTIC [] = "netsend" |
semantic type for net send call More... | |
static constexpr char | nmodl::codegen::naming::WATCH_SEMANTIC [] = "watch" |
semantic type for watch statement More... | |
static constexpr char | nmodl::codegen::naming::FOR_NETCON_SEMANTIC [] = "fornetcon" |
semantic type for for_netcon statement More... | |
static constexpr char | nmodl::codegen::naming::FOR_NETCON_VARIABLE [] = "fornetcon_data" |
name of the integer variabe to store FOR_NETCON info. More... | |
static constexpr char | nmodl::codegen::naming::NRN_INIT_METHOD [] = "nrn_init" |
nrn_init method in generated code More... | |
static constexpr char | nmodl::codegen::naming::NRN_CONSTRUCTOR_METHOD [] = "nrn_constructor" |
nrn_constructor method in generated code More... | |
static constexpr char | nmodl::codegen::naming::NRN_DESTRUCTOR_METHOD [] = "nrn_destructor" |
nrn_destructor method in generated code More... | |
constexpr char | nmodl::codegen::naming::NRN_PRIVATE_CONSTRUCTOR_METHOD [] = "nrn_private_constructor" |
nrn_private_constructor method in generated code More... | |
constexpr char | nmodl::codegen::naming::NRN_PRIVATE_DESTRUCTOR_METHOD [] = "nrn_private_destructor" |
nrn_private_destructor method in generated code More... | |
static constexpr char | nmodl::codegen::naming::NRN_ALLOC_METHOD [] = "nrn_alloc" |
nrn_alloc method in generated code More... | |
static constexpr char | nmodl::codegen::naming::NRN_STATE_METHOD [] = "nrn_state" |
nrn_state method in generated code More... | |
static constexpr char | nmodl::codegen::naming::NRN_CUR_METHOD [] = "nrn_cur" |
nrn_cur method in generated code More... | |
static constexpr char | nmodl::codegen::naming::NRN_JACOB_METHOD [] = "nrn_jacob" |
nrn_jacob method in generated code More... | |
static constexpr char | nmodl::codegen::naming::NRN_WATCH_CHECK_METHOD [] = "nrn_watch_check" |
nrn_watch_check method in generated c++ file More... | |
static constexpr char | nmodl::codegen::naming::THREAD_ARGS [] = "_threadargs_" |
verbatim name of the variable for nrn thread arguments More... | |
static constexpr char | nmodl::codegen::naming::THREAD_ARGS_COMMA [] = "_threadargscomma_" |
verbatim name of the variable for nrn thread arguments, sometimes with trailing comma More... | |
static constexpr char | nmodl::codegen::naming::THREAD_ARGS_PROTO [] = "_threadargsproto_" |
verbatim name of the variable for nrn thread arguments in prototype More... | |
static constexpr char | nmodl::codegen::naming::THREAD_ARGS_PROTO_COMMA [] = "_threadargsprotocomma_" |
verbatim name of the variable for nrn thread arguments in prototype and a comma More... | |
static constexpr char | nmodl::codegen::naming::INTERNAL_THREAD_ARGS [] = "_internalthreadargs_" |
variation of _threadargs_ for "internal" functions. More... | |
static constexpr char | nmodl::codegen::naming::INTERNAL_THREAD_ARGS_COMMA [] = "_internalthreadargscomma_" |
variation of _threadargs_ for "internal" functions, with comma (maybe). More... | |
static constexpr char | nmodl::codegen::naming::INTERNAL_THREAD_ARGS_PROTO [] = "_internalthreadargsproto_" |
variation of _threadargsproto_ for "internal" functions. More... | |
static constexpr char | nmodl::codegen::naming::INTERNAL_THREAD_ARGS_PROTO_COMMA [] = "_internalthreadargsprotocomma_" |
variation of _threadargsproto_ for "internal" functions, possibly with comma. More... | |
static constexpr char | nmodl::codegen::naming::ION_VARNAME_PREFIX [] = "ion_" |
prefix for ion variable More... | |
static constexpr char | nmodl::codegen::naming::CVODE_COUNT_NAME [] = "ode_count" |
name of CVODE method for counting # of ODEs More... | |
static constexpr char | nmodl::codegen::naming::CVODE_UPDATE_NON_STIFF_NAME [] = "ode_update_nonstiff" |
name of CVODE method for updating non-stiff systems More... | |
static constexpr char | nmodl::codegen::naming::CVODE_UPDATE_STIFF_NAME [] = "ode_update_stiff" |
name of CVODE method for updating stiff systems More... | |
static constexpr char | nmodl::codegen::naming::CVODE_SETUP_NON_STIFF_NAME [] = "ode_setup_nonstiff" |
name of CVODE method for setting up non-stiff systems More... | |
static constexpr char | nmodl::codegen::naming::CVODE_SETUP_STIFF_NAME [] = "ode_setup_stiff" |
name of CVODE method for setting up stiff systems More... | |
static constexpr char | nmodl::codegen::naming::CVODE_SETUP_TOLERANCES_NAME [] = "ode_setup_tolerances" |
name of CVODE method for setting up tolerances More... | |
static constexpr char | nmodl::codegen::naming::CVODE_VARIABLE_NAME [] = "cvode_ieq" |
name of the CVODE variable (can be arbitrary) More... | |
static const std::unordered_map< std::string, std::string > | nmodl::codegen::naming::VERBATIM_VARIABLES_MAPPING |
commonly used variables in verbatim block and how they should be mapped to new code generation backends More... | |
static std::unordered_map< std::string, std::string > | nmodl::codegen::naming::RANDOM_FUNCTIONS_MAPPING |