User Guide
nmodl::parser::diffeq::Term Class Reference

Represent a term in differential equation and it's "current" solution. More...

Detailed Description

Represent a term in differential equation and it's "current" solution.

When differential equation is parsed, each variable/term is represented by this class. As expressions are formed, like a+b, the solution gets updated

Definition at line 26 of file diffeq_context.hpp.

#include <diffeq_context.hpp>

Public Member Functions

 Term ()=default
 
 Term (const std::string &expr, const std::string &state)
 
 Term (std::string expr, std::string deriv, std::string a, std::string b)
 
bool deriv_nonzero () const
 helper routines used in parser More...
 
bool a_nonzero () const
 
bool b_nonzero () const
 
void print () const
 

Public Attributes

std::string expr
 expression being solved More...
 
std::string deriv = "0.0"
 derivative of the expression More...
 
std::string a = "0.0"
 
std::string b = "0.0"
 

Constructor & Destructor Documentation

◆ Term() [1/3]

nmodl::parser::diffeq::Term::Term ( )
default

◆ Term() [2/3]

nmodl::parser::diffeq::Term::Term ( const std::string &  expr,
const std::string &  state 
)

Definition at line 18 of file diffeq_context.cpp.

◆ Term() [3/3]

nmodl::parser::diffeq::Term::Term ( std::string  expr,
std::string  deriv,
std::string  a,
std::string  b 
)
inline

Definition at line 41 of file diffeq_context.hpp.

Member Function Documentation

◆ a_nonzero()

bool nmodl::parser::diffeq::Term::a_nonzero ( ) const
inline

Definition at line 53 of file diffeq_context.hpp.

◆ b_nonzero()

bool nmodl::parser::diffeq::Term::b_nonzero ( ) const
inline

Definition at line 57 of file diffeq_context.hpp.

◆ deriv_nonzero()

bool nmodl::parser::diffeq::Term::deriv_nonzero ( ) const
inline

helper routines used in parser

Definition at line 49 of file diffeq_context.hpp.

◆ print()

void nmodl::parser::diffeq::Term::print ( ) const

Definition at line 29 of file diffeq_context.cpp.

Member Data Documentation

◆ a

std::string nmodl::parser::diffeq::Term::a = "0.0"
Todo:
Need to check in neuron implementation?

Definition at line 34 of file diffeq_context.hpp.

◆ b

std::string nmodl::parser::diffeq::Term::b = "0.0"

Definition at line 35 of file diffeq_context.hpp.

◆ deriv

std::string nmodl::parser::diffeq::Term::deriv = "0.0"

derivative of the expression

Definition at line 31 of file diffeq_context.hpp.

◆ expr

std::string nmodl::parser::diffeq::Term::expr

expression being solved

Definition at line 28 of file diffeq_context.hpp.


The documentation for this class was generated from the following files: