89 template <
typename Identifier>
92 using base_type::base_type;
97 return this->
template get<field::AboveDiagonal>();
104 return this->
template get<field::AboveDiagonal>();
110 return this->
template get<field::Area>();
116 return this->
template get<field::Area>();
138 return this->
template get_handle<field::Area>();
145 return this->
template get<field::BelowDiagonal>();
152 return this->
template get<field::BelowDiagonal>();
159 return this->
template get<field::Diagonal>();
166 return this->
template get<field::Diagonal>();
173 return this->
template get<field::Voltage>();
180 return this->
template get<field::Voltage>();
187 return this->
template get_handle<field::Voltage>();
210 return this->
template get<field::RHS>();
217 return this->
template get<field::RHS>();
224 return this->
template get_handle<field::RHS>();
228 return this->
template get<field::FastIMemSavD>();
232 return this->
template get<field::FastIMemSavD>();
236 return this->
template get<field::FastIMemSavRHS>();
240 return this->
template get<field::FastIMemSavRHS>();
243 return this->
template get_handle<field::FastIMemSavRHS>();
252 return os <<
"Node{null}";
Above-diagonal element in node equation.
Area in um^2 but see treeset.cpp.
constexpr type default_value() const
Below-diagonal element in node equation.
Diagonal element in node equation.
Field for fast_imem calculation.
static constexpr bool optional
Field for fast_imem calculation.
static constexpr bool optional
constexpr type default_value() const
Base class defining the public API of Node handles.
field::Diagonal::type & d()
Return the diagonal element.
data_handle< field::RHS::type > rhs_handle()
Return a handle to the right hand side of the Hines solver.
field::Voltage::type const & v_hack() const
This is a workaround for v sometimes being a macro.
field::Diagonal::type const & d() const
Return the diagonal element.
field::RHS::type & rhs()
Return the right hand side of the Hines solver.
field::RHS::type const & rhs() const
Return the right hand side of the Hines solver.
field::BelowDiagonal::type & b()
Return the below-diagonal element.
field::FastIMemSavRHS::type const & sav_rhs() const
friend std::ostream & operator<<(std::ostream &os, handle_interface const &handle)
field::Area::type const & area() const
Return the area.
field::Voltage::type & v_hack()
This is a workaround for v sometimes being a macro.
data_handle< field::FastIMemSavRHS::type > sav_rhs_handle()
field::AboveDiagonal::type & a()
Return the above-diagonal element.
field::Area::type & area()
Return the area.
field::FastIMemSavRHS::type & sav_rhs()
field::Area::type & area_hack()
This is a workaround for area sometimes being a macro.
field::FastIMemSavRHS::type & sav_d()
field::Area::type const & area_hack() const
This is a workaround for area sometimes being a macro.
field::AboveDiagonal::type const & a() const
Return the above-diagonal element.
field::FastIMemSavRHS::type const & sav_d() const
data_handle< field::Voltage::type > v_handle()
Return a handle to the membrane potential.
field::Voltage::type const & v() const
Return the membrane potential.
field::Voltage::type & v()
Return the membrane potential.
data_handle< field::Area::type > area_handle()
Return a data_handle to the area.
field::BelowDiagonal::type const & b() const
Return the below-diagonal element.
Stable handle to a generic value.
Base class for neuron::container::soa<...> handles.
auto & underlying_storage()
Obtain a reference to the storage this handle refers to.
non_owning_identifier_without_container id() const
Obtain a lightweight identifier of the current entry.