Dune::Copasi 2.1.0-git79717215+dune.gitlab.629933
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages Concepts
Public Types | Public Member Functions | List of all members
Dune::Copasi::SymEngineParser Class Referencefinal

#include <symengine.hh>

Inheritance diagram for Dune::Copasi::SymEngineParser:
Dune::Copasi::Parser

Public Types

enum class  Type { Native , SBML }
 
using RangeField = typename Parser::RangeField
 
using Function0D = typename Parser::Function0D
 
using Function1D = typename Parser::Function1D
 
using Function2D = typename Parser::Function2D
 
using Function3D = typename Parser::Function3D
 
using Function4D = typename Parser::Function4D
 
- Public Types inherited from Dune::Copasi::Parser
using RangeField = double
 
using Function0D = fu2::unique_function< RangeField() const >
 
using Function1D = fu2::unique_function< RangeField(RangeField) const >
 
using Function2D = fu2::unique_function< RangeField(RangeField, RangeField) const >
 
using Function3D = fu2::unique_function< RangeField(RangeField, RangeField, RangeField) const >
 
using Function4D = fu2::unique_function< RangeField(RangeField, RangeField, RangeField, RangeField) const >
 

Public Member Functions

 SymEngineParser (Type parser_type=Type::Native)
 
 SymEngineParser (const SymEngineParser &)=delete
 
 SymEngineParser (SymEngineParser &&)=default
 
SymEngineParseroperator= (const SymEngineParser &)=delete
 
SymEngineParseroperator= (SymEngineParser &&)=default
 
 ~SymEngineParser () override final=default
 
void set_expression (const std::string &expression) override final
 
void define_constant (const std::string &symbol, const RangeField &value) override final
 
std::vector< std::shared_ptr< std::size_t > > setup_function_symbol (const std::string &symbol)
 
void define_function (const std::string &symbol, Function0D &&function) override final
 
void define_function (const std::string &symbol, Function1D &&function) override final
 
void define_function (const std::string &symbol, Function2D &&function) override final
 
void define_function (const std::string &symbol, Function3D &&function) override final
 
void define_function (const std::string &symbol, Function4D &&function) override final
 
void compile () override final
 
RangeField operator() () const noexcept override final
 
- Public Member Functions inherited from Dune::Copasi::Parser
 Parser ()=default
 
 Parser (const Parser &)=delete
 
 Parser (Parser &&)=default
 
Parseroperator= (const Parser &)=delete
 
Parseroperator= (Parser &&)=default
 
virtual ~Parser ()=default
 
virtual void set_expression (const std::string &expression)
 
std::string expression () const
 
virtual void define_variable (const std::string &symbol, RangeField const *value)
 
virtual void define_constant (const std::string &symbol, const RangeField &value)=0
 
virtual void define_function (const std::string &symbol, Function0D &&function)=0
 
virtual void define_function (const std::string &symbol, Function1D &&function)=0
 
virtual void define_function (const std::string &symbol, Function2D &&function)=0
 
virtual void define_function (const std::string &symbol, Function3D &&function)=0
 
virtual void define_function (const std::string &symbol, Function4D &&function)=0
 
bool compiled () const
 
virtual void compile ()=0
 
virtual RangeField operator() () const noexcept=0
 

Additional Inherited Members

- Protected Attributes inherited from Dune::Copasi::Parser
bool _compiled = false
 
std::string _expression
 
std::vector< std::string > _symbols
 
std::vector< RangeField const * > _variables
 

Member Typedef Documentation

◆ Function0D

◆ Function1D

◆ Function2D

◆ Function3D

◆ Function4D

◆ RangeField

Member Enumeration Documentation

◆ Type

Enumerator
Native 
SBML 

Constructor & Destructor Documentation

◆ SymEngineParser() [1/3]

Dune::Copasi::SymEngineParser::SymEngineParser ( Type  parser_type = Type::Native)

◆ SymEngineParser() [2/3]

Dune::Copasi::SymEngineParser::SymEngineParser ( const SymEngineParser )
delete

◆ SymEngineParser() [3/3]

Dune::Copasi::SymEngineParser::SymEngineParser ( SymEngineParser &&  )
default

◆ ~SymEngineParser()

Dune::Copasi::SymEngineParser::~SymEngineParser ( )
finaloverridedefault

Member Function Documentation

◆ compile()

void Dune::Copasi::SymEngineParser::compile ( )
finaloverridevirtual

Implements Dune::Copasi::Parser.

◆ define_constant()

void Dune::Copasi::SymEngineParser::define_constant ( const std::string &  symbol,
const RangeField value 
)
finaloverridevirtual

Implements Dune::Copasi::Parser.

◆ define_function() [1/5]

void Dune::Copasi::SymEngineParser::define_function ( const std::string &  symbol,
Function0D &&  function 
)
finaloverridevirtual

Implements Dune::Copasi::Parser.

◆ define_function() [2/5]

void Dune::Copasi::SymEngineParser::define_function ( const std::string &  symbol,
Function1D &&  function 
)
finaloverridevirtual

Implements Dune::Copasi::Parser.

◆ define_function() [3/5]

void Dune::Copasi::SymEngineParser::define_function ( const std::string &  symbol,
Function2D &&  function 
)
finaloverridevirtual

Implements Dune::Copasi::Parser.

◆ define_function() [4/5]

void Dune::Copasi::SymEngineParser::define_function ( const std::string &  symbol,
Function3D &&  function 
)
finaloverridevirtual

Implements Dune::Copasi::Parser.

◆ define_function() [5/5]

void Dune::Copasi::SymEngineParser::define_function ( const std::string &  symbol,
Function4D &&  function 
)
finaloverridevirtual

Implements Dune::Copasi::Parser.

◆ operator()()

RangeField Dune::Copasi::SymEngineParser::operator() ( ) const
finaloverridevirtualnoexcept

Implements Dune::Copasi::Parser.

◆ operator=() [1/2]

SymEngineParser & Dune::Copasi::SymEngineParser::operator= ( const SymEngineParser )
delete

◆ operator=() [2/2]

SymEngineParser & Dune::Copasi::SymEngineParser::operator= ( SymEngineParser &&  )
default

◆ set_expression()

void Dune::Copasi::SymEngineParser::set_expression ( const std::string &  expression)
finaloverridevirtual

Reimplemented from Dune::Copasi::Parser.

◆ setup_function_symbol()

std::vector< std::shared_ptr< std::size_t > > Dune::Copasi::SymEngineParser::setup_function_symbol ( const std::string &  symbol)

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