irafhy
Interval arithmetic based Reachability Analysis Framework for Hybrid Automaton
irafhy::System Class Reference

#include <system.h>

Collaboration diagram for irafhy::System:
Collaboration graph

Public Member Functions

 System ()=default
 constructor More...
 
 System (const std::vector< Formula > &formulas)
 constructor with given formulas More...
 
 ~System ()=default
 destructor More...
 
std::function< void(capd::autodiff::Node, capd::autodiff::Node[], int, capd::autodiff::Node[], int, capd::autodiff::Node[], int)> odeSystem () const
 get the arithmetic function of the current vector field More...
 
bool empty () const
 check if the system is empty or not More...
 
void reverse () const
 reverse the direction of the vector field More...
 

Static Private Member Functions

static std::function< void(capd::autodiff::Node, capd::autodiff::Node[], int, capd::autodiff::Node[], int, capd::autodiff::Node[], int)> assign (const std::function< capd::autodiff::Node(capd::autodiff::Node, capd::autodiff::Node[], int, capd::autodiff::Node[], int)> &f, int index)
 construct an assign formula More...
 
static std::function< void(capd::autodiff::Node, capd::autodiff::Node[], int, capd::autodiff::Node[], int, capd::autodiff::Node[], int)> group (const std::function< void(capd::autodiff::Node, capd::autodiff::Node[], int, capd::autodiff::Node[], int, capd::autodiff::Node[], int)> &lhs, const std::function< void(capd::autodiff::Node, capd::autodiff::Node[], int, capd::autodiff::Node[], int, capd::autodiff::Node[], int)> &rhs)
 group two functions More...
 

Private Attributes

std::vector< Formulaformulas_
 formulas of the system whihc indicate the vector field More...
 

Friends

std::ostream & operator<< (std::ostream &out, const System &rhs)
 out the given system to standard out stream More...
 

Constructor & Destructor Documentation

◆ System() [1/2]

irafhy::System::System ( )
default

constructor

◆ System() [2/2]

irafhy::System::System ( const std::vector< Formula > &  formulas)
explicit

constructor with given formulas

Parameters
formulasgiven formulas

References formulas_.

◆ ~System()

irafhy::System::~System ( )
default

destructor

Member Function Documentation

◆ assign()

std::function< void(capd::autodiff::Node, capd::autodiff::Node[], int, capd::autodiff::Node[], int, capd::autodiff::Node[], int)> irafhy::System::assign ( const std::function< capd::autodiff::Node(capd::autodiff::Node, capd::autodiff::Node[], int, capd::autodiff::Node[], int)> &  f,
int  index 
)
staticprivate

construct an assign formula

Parameters
fgiven right hand side function
indexgiven left hand side index of the variable which will be assigned the value derived from the right hand side expression
Returns

Referenced by odeSystem().

◆ empty()

bool irafhy::System::empty ( ) const

check if the system is empty or not

Returns
TRUE if the vector of formulas is empty

References formulas_.

◆ group()

std::function< void(capd::autodiff::Node, capd::autodiff::Node[], int, capd::autodiff::Node[], int, capd::autodiff::Node[], int)> irafhy::System::group ( const std::function< void(capd::autodiff::Node, capd::autodiff::Node[], int, capd::autodiff::Node[], int, capd::autodiff::Node[], int)> &  lhs,
const std::function< void(capd::autodiff::Node, capd::autodiff::Node[], int, capd::autodiff::Node[], int, capd::autodiff::Node[], int)> &  rhs 
)
staticprivate

group two functions

Parameters
lhsgiven left hand side function
rhsgiven right hand side function
Returns
the resulting functions' group

Referenced by odeSystem().

◆ odeSystem()

std::function< void(capd::autodiff::Node, capd::autodiff::Node[], int, capd::autodiff::Node[], int, capd::autodiff::Node[], int)> irafhy::System::odeSystem ( ) const

get the arithmetic function of the current vector field

Returns
the arithmetic function

References assign(), formulas_, and group().

Referenced by irafhy::ODESolver::solve().

Here is the call graph for this function:

◆ reverse()

void irafhy::System::reverse ( ) const

reverse the direction of the vector field

References formulas_.

Friends And Related Function Documentation

◆ operator<<

std::ostream& operator<< ( std::ostream &  out,
const System rhs 
)
friend

out the given system to standard out stream

Parameters
outgiven out stream
rhsgiven system
Returns
the resulting out stream

Member Data Documentation

◆ formulas_

std::vector<Formula> irafhy::System::formulas_
private

formulas of the system whihc indicate the vector field

Referenced by empty(), odeSystem(), irafhy::operator<<(), reverse(), and System().


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