- 3.0.2 core module.
|
Describes a Phase sequence with timing. More...
#include <Switching.h>
Public Types | |
typedef std::vector< Phase > | PhaseSchedule_t |
typedef std::vector< Time > | TimeSchedule_t |
Public Member Functions | |
PhaseSequence (const Time &start_time=0) | |
Construct empty sequence (with default start time) More... | |
~PhaseSequence () | |
Destructor. More... | |
void | addPhase (Phase phase, Time duration) |
add a phase with duration More... | |
std::size_t | getNumPhases () const |
get number of phases More... | |
std::size_t | getNumSwitches () const |
get number of switches More... | |
Time | getTotalDuration () const |
get sequence total duration More... | |
Time | getStartTimeFromIdx (std::size_t idx) const |
get start time from sequence index More... | |
Time | getEndTimeFromIdx (std::size_t idx) const |
get end time from sequence index More... | |
Phase | getPhaseFromIdx (std::size_t idx) const |
get phase pointer from sequence index More... | |
Phase | getPhaseFromTime (Time time) const |
get phase pointer from time More... | |
Phase | getFirstPhase () const |
get First phase pointer More... | |
Phase | getFinalPhase () const |
get Final phase pointer More... | |
SwitchEvent< Phase, Time > | getSwitchEventFromIdx (std::size_t idx) const |
get next switch event from sequence index More... | |
SwitchEvent< Phase, Time > | getSwitchEventFromTime (Time time) const |
get next switch event from time More... | |
std::size_t | getIdxFromTime (Time time) const |
get sequence index from time More... | |
Describes a Phase sequence with timing.
Each phase of the sequence has a start time, and end time Each event has a pre & post phase + switching time
Example: The following illustrates a sequence of 3 phases
It contains 4 times to define the sequence. Two of those are switching times: t1 and t2 There are two switching events: {p0, p1, t1} and {p1, p2, t2};
typedef std::vector<Phase> ct::core::PhaseSequence< Phase, Time >::PhaseSchedule_t |
typedef std::vector<Time> ct::core::PhaseSequence< Phase, Time >::TimeSchedule_t |
|
inline |
Construct empty sequence (with default start time)
|
inline |
Destructor.
|
inline |
add a phase with duration
Referenced by TEST().
|
inline |
get number of phases
Referenced by TEST().
|
inline |
get number of switches
Referenced by TEST().
|
inline |
get sequence total duration
Referenced by TEST().
|
inline |
get start time from sequence index
Referenced by TEST().
|
inline |
get end time from sequence index
Referenced by TEST().
|
inline |
get phase pointer from sequence index
Referenced by TEST().
|
inline |
get phase pointer from time
Referenced by ct::core::SwitchedControlledSystem< STATE_DIM, CONTROL_DIM, SCALAR >::computeControlledDynamics(), ct::core::SwitchedDiscreteLinearSystem< STATE_DIM, CONTROL_DIM, SCALAR >::getAandB(), ct::core::SwitchedLinearSystem< STATE_DIM, CONTROL_DIM, SCALAR >::getDerivativeControl(), ct::core::SwitchedLinearSystem< STATE_DIM, CONTROL_DIM, SCALAR >::getDerivativeState(), ct::core::SwitchedDiscreteLinearSystem< STATE_DIM, CONTROL_DIM, SCALAR >::propagateControlledDynamics(), ct::core::SwitchedDiscreteControlledSystem< STATE_DIM, CONTROL_DIM, SCALAR >::propagateControlledDynamics(), and TEST().
|
inline |
get First phase pointer
|
inline |
get Final phase pointer
|
inline |
get next switch event from sequence index
Referenced by TEST().
|
inline |
get next switch event from time
|
inline |
get sequence index from time
Referenced by TEST().