![]() |
irafhy
Interval arithmetic based Reachability Analysis Framework for Hybrid Automaton
|
#include <hybridautomaton.h>
Public Member Functions | |
HybridAutomaton () | |
default constructor More... | |
HybridAutomaton (const HybridAutomaton< Analyser, Verifier > &hybridAutomaton)=default | |
copy constructor More... | |
HybridAutomaton (HybridAutomaton< Analyser, Verifier > &&hybridAutomaton)=default | |
move constructor More... | |
HybridAutomaton (const Locations< Analyser > &locations, const Transitions< Analyser > &transitions) | |
constructor with given locations and transitions More... | |
~HybridAutomaton ()=default | |
destructor More... | |
void | setID (const std::string &id) |
set the identifier of the hybrid automaton More... | |
void | setVariables (const std::vector< std::string > &variables) |
set the variables of the hybrid automaton More... | |
void | setLocations (const Locations< Analyser > &locations) |
set the modes of the hybrid automation with given locations More... | |
void | setTransitions (const Transitions< Analyser > &transitions) |
set the jumps of the hybrid automaton with given transitions More... | |
std::string | id () const |
get the identifier of the hybrid automaton More... | |
std::vector< std::string > | variables () const |
get the variables of the hybrid automaton More... | |
Locations< Analyser > | locations () const |
get the locations of the hybrid automaton More... | |
Transitions< Analyser > | transitions () const |
get the transitions of the hybrid automaton More... | |
std::vector< capd::interval > | timeSequence () const |
get the time sequence of the simulation More... | |
std::vector< Condition > | reachableConditions () const |
get the reachable conditions of the simulation More... | |
Time | curDuration () const |
get the current duration of the simulation More... | |
Model< Analyser > * | curModelPtr () const |
get the pointer to the current mode More... | |
void | initialize () |
initialize the hybrid automaton More... | |
void | simulate (const Settings &settings) |
simulation with given settings More... | |
![]() | |
virtual | ~Verifier ()=default |
destructor More... | |
virtual bool | verify (const Settings &settings, const void *hybridAutomaton) const =0 |
check if the simulation should be terminated or not More... | |
Private Member Functions | |
const Model< Analyser > * | startModelPtr (const Settings &settings) const |
void | constructTransitions () |
construct the jumps among modes More... | |
Condition | durationSimulate (const Time &duration, const Settings &settings, State< Analyser > &curWork, long int &doneJumps) |
simulation with given duration More... | |
bool | verify (const Settings &settings) const |
check if the simulation should be terminated More... | |
Private Attributes | |
std::string | id_ |
identifier of the hybrid automation More... | |
std::vector< std::string > | variables_ |
variable of the system More... | |
Transitions< Analyser > | transitions_ |
transitions which specify the jumps among modes More... | |
Locations< Analyser > | locations_ |
set of discrete states which are also called modes More... | |
std::vector< capd::interval > | timeSequence_ |
time sequence during the computation More... | |
std::vector< Condition > | reachableConditions_ |
resulting reachable conditions More... | |
Time | curDuration_ |
current duration which specify the time interval of one iteration More... | |
Model< Analyser > * | curModelPtr_ = nullptr |
pointer to the current mode More... | |
irafhy::HybridAutomaton< Analyser, Verifier >::HybridAutomaton | ( | ) |
default constructor
|
default |
copy constructor
hybridAutomaton | given hybrid automaton |
|
default |
move constructor
hybridAutomaton | given hybrid automaton |
irafhy::HybridAutomaton< Analyser, Verifier >::HybridAutomaton | ( | const Locations< Analyser > & | locations, |
const Transitions< Analyser > & | transitions | ||
) |
constructor with given locations and transitions
locations | given locations which define the inside modes |
transitions | given transitions which define the jumps among modes |
|
default |
destructor
|
private |
construct the jumps among modes
Time irafhy::HybridAutomaton< Analyser, Verifier >::curDuration | ( | ) | const |
get the current duration of the simulation
Model<Analyser>* irafhy::HybridAutomaton< Analyser, Verifier >::curModelPtr | ( | ) | const |
get the pointer to the current mode
|
private |
simulation with given duration
duration | given time interval |
settings | setting of the hybrid automaton |
curWork | current work which specify the current mode and related initial condition |
doneJumps | jumps already done, used to check if it is time to terminate current duration simulation |
std::string irafhy::HybridAutomaton< Analyser, Verifier >::id | ( | ) | const |
get the identifier of the hybrid automaton
void irafhy::HybridAutomaton< Analyser, Verifier >::initialize | ( | ) |
initialize the hybrid automaton
Locations<Analyser> irafhy::HybridAutomaton< Analyser, Verifier >::locations | ( | ) | const |
get the locations of the hybrid automaton
std::vector<Condition> irafhy::HybridAutomaton< Analyser, Verifier >::reachableConditions | ( | ) | const |
get the reachable conditions of the simulation
void irafhy::HybridAutomaton< Analyser, Verifier >::setID | ( | const std::string & | id | ) |
set the identifier of the hybrid automaton
id |
void irafhy::HybridAutomaton< Analyser, Verifier >::setLocations | ( | const Locations< Analyser > & | locations | ) |
set the modes of the hybrid automation with given locations
locations | given locations |
void irafhy::HybridAutomaton< Analyser, Verifier >::setTransitions | ( | const Transitions< Analyser > & | transitions | ) |
set the jumps of the hybrid automaton with given transitions
transitions | given transitions |
void irafhy::HybridAutomaton< Analyser, Verifier >::setVariables | ( | const std::vector< std::string > & | variables | ) |
set the variables of the hybrid automaton
variables | variables used during the simulation |
void irafhy::HybridAutomaton< Analyser, Verifier >::simulate | ( | const Settings & | settings | ) |
simulation with given settings
settings | given settings which modified by the user |
|
private |
get the pointer of the start mode
std::vector<capd::interval> irafhy::HybridAutomaton< Analyser, Verifier >::timeSequence | ( | ) | const |
get the time sequence of the simulation
Transitions<Analyser> irafhy::HybridAutomaton< Analyser, Verifier >::transitions | ( | ) | const |
get the transitions of the hybrid automaton
std::vector<std::string> irafhy::HybridAutomaton< Analyser, Verifier >::variables | ( | ) | const |
get the variables of the hybrid automaton
|
private |
check if the simulation should be terminated
settings | setting of the hybrid automaton |
|
private |
current duration which specify the time interval of one iteration
|
mutableprivate |
pointer to the current mode
|
private |
identifier of the hybrid automation
|
private |
set of discrete states which are also called modes
|
private |
resulting reachable conditions
|
private |
time sequence during the computation
|
private |
transitions which specify the jumps among modes
|
private |
variable of the system