User Guide
nmodl::codegen::naming Namespace Reference

different variable names used in code generation More...

Detailed Description

different variable names used in code generation

Variables

static constexpr char NMODL_VERSION [] = "7.7.0"
 nmodl language version More...
 
static constexpr char DERIVIMPLICIT_METHOD [] = "derivimplicit"
 derivimplicit method in nmodl More...
 
static constexpr char EULER_METHOD [] = "euler"
 euler method in nmodl More...
 
static constexpr char CNEXP_METHOD [] = "cnexp"
 cnexp method in nmodl More...
 
static constexpr char AFTER_CVODE_METHOD [] = "after_cvode"
 cvode method in nmodl More...
 
static constexpr char SPARSE_METHOD [] = "sparse"
 sparse method in nmodl More...
 
static constexpr char NET_EVENT_METHOD [] = "net_event"
 net_event function call in nmodl More...
 
static constexpr char NET_MOVE_METHOD [] = "net_move"
 net_move function call in nmodl More...
 
static constexpr char NET_SEND_METHOD [] = "net_send"
 net_send function call in nmodl More...
 
static constexpr char ARTIFICIAL_CELL [] = "ARTIFICIAL_CELL"
 artificial cell keyword in nmodl More...
 
static constexpr char POINT_PROCESS [] = "POINT_PROCESS"
 point process keyword in nmodl More...
 
static constexpr char DIAM_VARIABLE [] = "diam"
 inbuilt neuron variable for diameter of the compartment More...
 
static constexpr char NODE_AREA_VARIABLE [] = "node_area"
 inbuilt neuron variable for area of the compartment More...
 
static constexpr char AREA_VARIABLE [] = "area"
 similar to node_area but user can explicitly declare it as area More...
 
static constexpr char POINT_PROCESS_VARIABLE [] = "point_process"
 inbuilt neuron variable for point process More...
 
static constexpr char TQITEM_VARIABLE [] = "tqitem"
 inbuilt neuron variable for tqitem process More...
 
static constexpr char CONDUCTANCE_VARIABLE [] = "g"
 range variable for conductance More...
 
static constexpr char USE_TABLE_VARIABLE [] = "usetable"
 global variable to indicate if table is used More...
 
static constexpr char CONDUCTANCE_UNUSED_VARIABLE [] = "g_unused"
 range variable when conductance is not used (for vectorized model) More...
 
static constexpr char VOLTAGE_UNUSED_VARIABLE [] = "v_unused"
 range variable for voltage when unused (for vectorized model) More...
 
static constexpr char T_SAVE_VARIABLE [] = "tsave"
 variable t indicating last execution time of net receive block More...
 
static constexpr char NTHREAD_RHS_SHADOW [] = "_shadow_rhs"
 shadow rhs variable in neuron thread structure More...
 
static constexpr char NTHREAD_D_SHADOW [] = "_shadow_d"
 shadow d variable in neuron thread structure More...
 
static constexpr char CELSIUS_VARIABLE [] = "celsius"
 global temperature variable More...
 
static constexpr char INST_GLOBAL_MEMBER [] = "global"
 instance struct member pointing to the global variable structure More...
 
static constexpr char NTHREAD_T_VARIABLE [] = "t"
 t variable in neuron thread structure More...
 
static constexpr char NTHREAD_DT_VARIABLE [] = "dt"
 dt variable in neuron thread structure More...
 
static constexpr char DEFAULT_FLOAT_TYPE [] = "double"
 default float variable type More...
 
static constexpr char DEFAULT_LOCAL_VAR_TYPE [] = "double"
 default local variable type More...
 
static constexpr char DEFAULT_INTEGER_TYPE [] = "int"
 default integer variable type More...
 
static constexpr char AREA_SEMANTIC [] = "area"
 semantic type for area variable More...
 
static constexpr char POINT_PROCESS_SEMANTIC [] = "pntproc"
 semantic type for point process variable More...
 
static constexpr char POINTER_SEMANTIC [] = "pointer"
 semantic type for pointer variable More...
 
static constexpr char CORE_POINTER_SEMANTIC [] = "bbcorepointer"
 semantic type for core pointer variable More...
 
static constexpr char RANDOM_SEMANTIC [] = "random"
 semantic type for RANDOM variable More...
 
static constexpr char NET_SEND_SEMANTIC [] = "netsend"
 semantic type for net send call More...
 
static constexpr char WATCH_SEMANTIC [] = "watch"
 semantic type for watch statement More...
 
static constexpr char FOR_NETCON_SEMANTIC [] = "fornetcon"
 semantic type for for_netcon statement More...
 
static constexpr char NRN_INIT_METHOD [] = "nrn_init"
 nrn_init method in generated code More...
 
static constexpr char NRN_CONSTRUCTOR_METHOD [] = "nrn_constructor"
 nrn_constructor method in generated code More...
 
static constexpr char NRN_DESTRUCTOR_METHOD [] = "nrn_destructor"
 nrn_destructor method in generated code More...
 
constexpr char NRN_PRIVATE_CONSTRUCTOR_METHOD [] = "nrn_private_constructor"
 nrn_private_constructor method in generated code More...
 
constexpr char NRN_PRIVATE_DESTRUCTOR_METHOD [] = "nrn_private_destructor"
 nrn_private_destructor method in generated code More...
 
static constexpr char NRN_ALLOC_METHOD [] = "nrn_alloc"
 nrn_alloc method in generated code More...
 
static constexpr char NRN_STATE_METHOD [] = "nrn_state"
 nrn_state method in generated code More...
 
static constexpr char NRN_CUR_METHOD [] = "nrn_cur"
 nrn_cur method in generated code More...
 
static constexpr char NRN_JACOB_METHOD [] = "nrn_jacob"
 nrn_jacob method in generated code More...
 
static constexpr char NRN_WATCH_CHECK_METHOD [] = "nrn_watch_check"
 nrn_watch_check method in generated c++ file More...
 
static constexpr char THREAD_ARGS [] = "_threadargs_"
 verbatim name of the variable for nrn thread arguments More...
 
static constexpr char THREAD_ARGS_PROTO [] = "_threadargsproto_"
 verbatim name of the variable for nrn thread arguments in prototype More...
 
static constexpr char ION_VARNAME_PREFIX [] = "ion_"
 prefix for ion variable More...
 
static constexpr char NRN_POINTERINDEX [] = "hoc_nrnpointerindex"
 hoc_nrnpointerindex name More...
 
static const std::unordered_map< std::string, std::string > 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 > RANDOM_FUNCTIONS_MAPPING
 

Variable Documentation

◆ AFTER_CVODE_METHOD

constexpr char nmodl::codegen::naming::AFTER_CVODE_METHOD[] = "after_cvode"
staticconstexpr

cvode method in nmodl

Definition at line 33 of file codegen_naming.hpp.

◆ AREA_SEMANTIC

constexpr char nmodl::codegen::naming::AREA_SEMANTIC[] = "area"
staticconstexpr

semantic type for area variable

Definition at line 111 of file codegen_naming.hpp.

◆ AREA_VARIABLE

constexpr char nmodl::codegen::naming::AREA_VARIABLE[] = "area"
staticconstexpr

similar to node_area but user can explicitly declare it as area

Definition at line 60 of file codegen_naming.hpp.

◆ ARTIFICIAL_CELL

constexpr char nmodl::codegen::naming::ARTIFICIAL_CELL[] = "ARTIFICIAL_CELL"
staticconstexpr

artificial cell keyword in nmodl

Definition at line 48 of file codegen_naming.hpp.

◆ CELSIUS_VARIABLE

constexpr char nmodl::codegen::naming::CELSIUS_VARIABLE[] = "celsius"
staticconstexpr

global temperature variable

Definition at line 90 of file codegen_naming.hpp.

◆ CNEXP_METHOD

constexpr char nmodl::codegen::naming::CNEXP_METHOD[] = "cnexp"
staticconstexpr

cnexp method in nmodl

Definition at line 30 of file codegen_naming.hpp.

◆ CONDUCTANCE_UNUSED_VARIABLE

constexpr char nmodl::codegen::naming::CONDUCTANCE_UNUSED_VARIABLE[] = "g_unused"
staticconstexpr

range variable when conductance is not used (for vectorized model)

Definition at line 75 of file codegen_naming.hpp.

◆ CONDUCTANCE_VARIABLE

constexpr char nmodl::codegen::naming::CONDUCTANCE_VARIABLE[] = "g"
staticconstexpr

range variable for conductance

Definition at line 69 of file codegen_naming.hpp.

◆ CORE_POINTER_SEMANTIC

constexpr char nmodl::codegen::naming::CORE_POINTER_SEMANTIC[] = "bbcorepointer"
staticconstexpr

semantic type for core pointer variable

Definition at line 120 of file codegen_naming.hpp.

◆ DEFAULT_FLOAT_TYPE

constexpr char nmodl::codegen::naming::DEFAULT_FLOAT_TYPE[] = "double"
staticconstexpr

default float variable type

Definition at line 102 of file codegen_naming.hpp.

◆ DEFAULT_INTEGER_TYPE

constexpr char nmodl::codegen::naming::DEFAULT_INTEGER_TYPE[] = "int"
staticconstexpr

default integer variable type

Definition at line 108 of file codegen_naming.hpp.

◆ DEFAULT_LOCAL_VAR_TYPE

constexpr char nmodl::codegen::naming::DEFAULT_LOCAL_VAR_TYPE[] = "double"
staticconstexpr

default local variable type

Definition at line 105 of file codegen_naming.hpp.

◆ DERIVIMPLICIT_METHOD

constexpr char nmodl::codegen::naming::DERIVIMPLICIT_METHOD[] = "derivimplicit"
staticconstexpr

derivimplicit method in nmodl

Definition at line 24 of file codegen_naming.hpp.

◆ DIAM_VARIABLE

constexpr char nmodl::codegen::naming::DIAM_VARIABLE[] = "diam"
staticconstexpr

inbuilt neuron variable for diameter of the compartment

Definition at line 54 of file codegen_naming.hpp.

◆ EULER_METHOD

constexpr char nmodl::codegen::naming::EULER_METHOD[] = "euler"
staticconstexpr

euler method in nmodl

Definition at line 27 of file codegen_naming.hpp.

◆ FOR_NETCON_SEMANTIC

constexpr char nmodl::codegen::naming::FOR_NETCON_SEMANTIC[] = "fornetcon"
staticconstexpr

semantic type for for_netcon statement

Definition at line 132 of file codegen_naming.hpp.

◆ INST_GLOBAL_MEMBER

constexpr char nmodl::codegen::naming::INST_GLOBAL_MEMBER[] = "global"
staticconstexpr

instance struct member pointing to the global variable structure

Definition at line 93 of file codegen_naming.hpp.

◆ ION_VARNAME_PREFIX

constexpr char nmodl::codegen::naming::ION_VARNAME_PREFIX[] = "ion_"
staticconstexpr

prefix for ion variable

Definition at line 171 of file codegen_naming.hpp.

◆ NET_EVENT_METHOD

constexpr char nmodl::codegen::naming::NET_EVENT_METHOD[] = "net_event"
staticconstexpr

net_event function call in nmodl

Definition at line 39 of file codegen_naming.hpp.

◆ NET_MOVE_METHOD

constexpr char nmodl::codegen::naming::NET_MOVE_METHOD[] = "net_move"
staticconstexpr

net_move function call in nmodl

Definition at line 42 of file codegen_naming.hpp.

◆ NET_SEND_METHOD

constexpr char nmodl::codegen::naming::NET_SEND_METHOD[] = "net_send"
staticconstexpr

net_send function call in nmodl

Definition at line 45 of file codegen_naming.hpp.

◆ NET_SEND_SEMANTIC

constexpr char nmodl::codegen::naming::NET_SEND_SEMANTIC[] = "netsend"
staticconstexpr

semantic type for net send call

Definition at line 126 of file codegen_naming.hpp.

◆ NMODL_VERSION

constexpr char nmodl::codegen::naming::NMODL_VERSION[] = "7.7.0"
staticconstexpr

nmodl language version

Todo:
: should be moved from codegen to global scope

Definition at line 21 of file codegen_naming.hpp.

◆ NODE_AREA_VARIABLE

constexpr char nmodl::codegen::naming::NODE_AREA_VARIABLE[] = "node_area"
staticconstexpr

inbuilt neuron variable for area of the compartment

Definition at line 57 of file codegen_naming.hpp.

◆ NRN_ALLOC_METHOD

constexpr char nmodl::codegen::naming::NRN_ALLOC_METHOD[] = "nrn_alloc"
staticconstexpr

nrn_alloc method in generated code

Definition at line 150 of file codegen_naming.hpp.

◆ NRN_CONSTRUCTOR_METHOD

constexpr char nmodl::codegen::naming::NRN_CONSTRUCTOR_METHOD[] = "nrn_constructor"
staticconstexpr

nrn_constructor method in generated code

Definition at line 138 of file codegen_naming.hpp.

◆ NRN_CUR_METHOD

constexpr char nmodl::codegen::naming::NRN_CUR_METHOD[] = "nrn_cur"
staticconstexpr

nrn_cur method in generated code

Definition at line 156 of file codegen_naming.hpp.

◆ NRN_DESTRUCTOR_METHOD

constexpr char nmodl::codegen::naming::NRN_DESTRUCTOR_METHOD[] = "nrn_destructor"
staticconstexpr

nrn_destructor method in generated code

Definition at line 141 of file codegen_naming.hpp.

◆ NRN_INIT_METHOD

constexpr char nmodl::codegen::naming::NRN_INIT_METHOD[] = "nrn_init"
staticconstexpr

nrn_init method in generated code

Definition at line 135 of file codegen_naming.hpp.

◆ NRN_JACOB_METHOD

constexpr char nmodl::codegen::naming::NRN_JACOB_METHOD[] = "nrn_jacob"
staticconstexpr

nrn_jacob method in generated code

Definition at line 159 of file codegen_naming.hpp.

◆ NRN_POINTERINDEX

constexpr char nmodl::codegen::naming::NRN_POINTERINDEX[] = "hoc_nrnpointerindex"
staticconstexpr

hoc_nrnpointerindex name

Definition at line 174 of file codegen_naming.hpp.

◆ NRN_PRIVATE_CONSTRUCTOR_METHOD

constexpr char nmodl::codegen::naming::NRN_PRIVATE_CONSTRUCTOR_METHOD[] = "nrn_private_constructor"
inlineconstexpr

nrn_private_constructor method in generated code

Definition at line 144 of file codegen_naming.hpp.

◆ NRN_PRIVATE_DESTRUCTOR_METHOD

constexpr char nmodl::codegen::naming::NRN_PRIVATE_DESTRUCTOR_METHOD[] = "nrn_private_destructor"
inlineconstexpr

nrn_private_destructor method in generated code

Definition at line 147 of file codegen_naming.hpp.

◆ NRN_STATE_METHOD

constexpr char nmodl::codegen::naming::NRN_STATE_METHOD[] = "nrn_state"
staticconstexpr

nrn_state method in generated code

Definition at line 153 of file codegen_naming.hpp.

◆ NRN_WATCH_CHECK_METHOD

constexpr char nmodl::codegen::naming::NRN_WATCH_CHECK_METHOD[] = "nrn_watch_check"
staticconstexpr

nrn_watch_check method in generated c++ file

Definition at line 162 of file codegen_naming.hpp.

◆ NTHREAD_D_SHADOW

constexpr char nmodl::codegen::naming::NTHREAD_D_SHADOW[] = "_shadow_d"
staticconstexpr

shadow d variable in neuron thread structure

Definition at line 87 of file codegen_naming.hpp.

◆ NTHREAD_DT_VARIABLE

constexpr char nmodl::codegen::naming::NTHREAD_DT_VARIABLE[] = "dt"
staticconstexpr

dt variable in neuron thread structure

Definition at line 99 of file codegen_naming.hpp.

◆ NTHREAD_RHS_SHADOW

constexpr char nmodl::codegen::naming::NTHREAD_RHS_SHADOW[] = "_shadow_rhs"
staticconstexpr

shadow rhs variable in neuron thread structure

Definition at line 84 of file codegen_naming.hpp.

◆ NTHREAD_T_VARIABLE

constexpr char nmodl::codegen::naming::NTHREAD_T_VARIABLE[] = "t"
staticconstexpr

t variable in neuron thread structure

Definition at line 96 of file codegen_naming.hpp.

◆ POINT_PROCESS

constexpr char nmodl::codegen::naming::POINT_PROCESS[] = "POINT_PROCESS"
staticconstexpr

point process keyword in nmodl

Definition at line 51 of file codegen_naming.hpp.

◆ POINT_PROCESS_SEMANTIC

constexpr char nmodl::codegen::naming::POINT_PROCESS_SEMANTIC[] = "pntproc"
staticconstexpr

semantic type for point process variable

Definition at line 114 of file codegen_naming.hpp.

◆ POINT_PROCESS_VARIABLE

constexpr char nmodl::codegen::naming::POINT_PROCESS_VARIABLE[] = "point_process"
staticconstexpr

inbuilt neuron variable for point process

Definition at line 63 of file codegen_naming.hpp.

◆ POINTER_SEMANTIC

constexpr char nmodl::codegen::naming::POINTER_SEMANTIC[] = "pointer"
staticconstexpr

semantic type for pointer variable

Definition at line 117 of file codegen_naming.hpp.

◆ RANDOM_FUNCTIONS_MAPPING

std::unordered_map<std::string, std::string> nmodl::codegen::naming::RANDOM_FUNCTIONS_MAPPING
static
Initial value:
{
{"random_setseq", "nrnran123_setseq"},
{"random_setids", "nrnran123_setids"},
{"random_uniform", "nrnran123_uniform"},
{"random_negexp", "nrnran123_negexp"},
{"random_normal", "nrnran123_normal"},
{"random_ipick", "nrnran123_ipick"},
{"random_dpick", "nrnran123_dblpick"}}

Definition at line 192 of file codegen_naming.hpp.

◆ RANDOM_SEMANTIC

constexpr char nmodl::codegen::naming::RANDOM_SEMANTIC[] = "random"
staticconstexpr

semantic type for RANDOM variable

Definition at line 123 of file codegen_naming.hpp.

◆ SPARSE_METHOD

constexpr char nmodl::codegen::naming::SPARSE_METHOD[] = "sparse"
staticconstexpr

sparse method in nmodl

Definition at line 36 of file codegen_naming.hpp.

◆ T_SAVE_VARIABLE

constexpr char nmodl::codegen::naming::T_SAVE_VARIABLE[] = "tsave"
staticconstexpr

variable t indicating last execution time of net receive block

Definition at line 81 of file codegen_naming.hpp.

◆ THREAD_ARGS

constexpr char nmodl::codegen::naming::THREAD_ARGS[] = "_threadargs_"
staticconstexpr

verbatim name of the variable for nrn thread arguments

Definition at line 165 of file codegen_naming.hpp.

◆ THREAD_ARGS_PROTO

constexpr char nmodl::codegen::naming::THREAD_ARGS_PROTO[] = "_threadargsproto_"
staticconstexpr

verbatim name of the variable for nrn thread arguments in prototype

Definition at line 168 of file codegen_naming.hpp.

◆ TQITEM_VARIABLE

constexpr char nmodl::codegen::naming::TQITEM_VARIABLE[] = "tqitem"
staticconstexpr

inbuilt neuron variable for tqitem process

Definition at line 66 of file codegen_naming.hpp.

◆ USE_TABLE_VARIABLE

constexpr char nmodl::codegen::naming::USE_TABLE_VARIABLE[] = "usetable"
staticconstexpr

global variable to indicate if table is used

Definition at line 72 of file codegen_naming.hpp.

◆ VERBATIM_VARIABLES_MAPPING

const std::unordered_map<std::string, std::string> nmodl::codegen::naming::VERBATIM_VARIABLES_MAPPING
static
Initial value:
{
{"_nt", "nt"},
{"_p", "data"},
{"_ppvar", "indexes"},
{"_thread", "thread"},
{"_iml", "id"},
{"_cntml_padded", "pnodecount"},
{"_cntml", "nodecount"},
{"_tqitem", "tqitem"}}

commonly used variables in verbatim block and how they should be mapped to new code generation backends

Definition at line 180 of file codegen_naming.hpp.

◆ VOLTAGE_UNUSED_VARIABLE

constexpr char nmodl::codegen::naming::VOLTAGE_UNUSED_VARIABLE[] = "v_unused"
staticconstexpr

range variable for voltage when unused (for vectorized model)

Definition at line 78 of file codegen_naming.hpp.

◆ WATCH_SEMANTIC

constexpr char nmodl::codegen::naming::WATCH_SEMANTIC[] = "watch"
staticconstexpr

semantic type for watch statement

Definition at line 129 of file codegen_naming.hpp.