|
| | SlicedTube (const std::shared_ptr< TDomain > &tdomain, const T &codomain) |
| | Creates a sliced tube with constant codomain over all temporal slices.
|
| | SlicedTube (const std::shared_ptr< TDomain > &tdomain, const AnalyticFunction< typename ExprType< T >::Type > &f) |
| | Creates a sliced tube by evaluating an analytic function on each temporal slice.
|
| template<typename V> |
| | SlicedTube (const std::shared_ptr< TDomain > &tdomain, const AnalyticTraj< V > &x) |
| | Creates a sliced tube by evaluating an analytic trajectory on each temporal slice.
|
| template<typename V> |
| | SlicedTube (const std::shared_ptr< TDomain > &tdomain, const SampledTraj< V > &x) |
| | Creates a sliced tube from a sampled trajectory.
|
| | SlicedTube (const SlicedTube< T > &x) |
| | Copy constructor.
|
| SlicedTube & | operator= (const SlicedTube &x) |
| | Assignment operator.
|
| Index | size () const |
| | Returns the codomain dimension.
|
| virtual std::pair< Index, Index > | shape () const |
| | Returns the matrix shape of this tube codomain.
|
| double | volume () const |
| | Returns the volume of this tube.
|
| std::shared_ptr< Slice< T > > | first_slice () |
| | Returns the first slice of this tube.
|
| std::shared_ptr< const Slice< T > > | first_slice () const |
| | Returns the first slice of this tube.
|
| std::shared_ptr< Slice< T > > | last_slice () |
| | Returns the last slice of this tube.
|
| std::shared_ptr< const Slice< T > > | last_slice () const |
| | Returns the last slice of this tube.
|
| std::shared_ptr< Slice< T > > | slice (const std::list< TSlice >::iterator &it) |
| | Returns the slice attached to a temporal iterator.
|
| std::shared_ptr< const Slice< T > > | slice (const std::list< TSlice >::const_iterator &it) const |
| | Returns the slice attached to a temporal iterator.
|
| std::shared_ptr< Slice< T > > | slice (const std::list< TSlice >::reverse_iterator &it) |
| | Returns the slice attached to a reverse temporal iterator.
|
| std::shared_ptr< const Slice< T > > | slice (const std::list< TSlice >::const_reverse_iterator &it) const |
| | Returns the slice attached to a reverse temporal iterator.
|
| std::shared_ptr< Slice< T > > | slice (std::shared_ptr< TSlice > ptr) |
| | Returns the slice attached to a temporal slice pointer.
|
| bool | is_empty () const |
| | Tests whether this tube is empty.
|
| bool | is_unbounded () const |
| | Tests whether this tube is unbounded.
|
| T | codomain () const |
| | Returns the global codomain of this tube.
|
| T | operator() (const Interval &t) const |
| | Evaluates this tube over a temporal interval.
|
| T | operator() (const Interval &t, const SlicedTube< T > &v) const |
| | Returns the optimal evaluation over a temporal interval using a derivative tube.
|
| std::pair< T, T > | enclosed_bounds (const Interval &t) const |
| | Returns enclosed lower and upper bounds over a temporal interval.
|
| void | set (const T &codomain) |
| | Sets all codomains of this tube to the same value.
|
| void | set (const T &codomain, double t) |
| | Sets the codomain at one temporal instant.
|
| void | set (const T &codomain, const Interval &t) |
| | Sets the codomain over a temporal interval.
|
| void | set_ith_slice (const T &codomain, Index i) |
| | Sets the codomain of the \(i\)-th stored slice.
|
| template<typename V> |
| const SlicedTube< T > & | inflate (const V &rad) |
| | Inflates this tube by a constant radius.
|
| template<typename V> |
| const SlicedTube< T > & | inflate (const SampledTraj< V > &rad) |
| | Inflates this tube by a time-varying sampled radius.
|
| SlicedTube< Interval > | operator[] (Index i) const |
| | Extracts one scalar component of this tube.
|
| SlicedTube< IntervalVector > | subvector (Index i, Index j) const |
| | Extracts a subvector of this tube.
|
| bool | operator== (const SlicedTube &x) const |
| | Compares two sliced tubes.
|
| SlicedTube & | operator&= (const SlicedTube &x) |
| | Intersects this tube with another one.
|
| AnalyticFunction< typename ExprType< T >::Type > | as_function () const |
| | Returns an analytic wrapper of this tube, allowing to evaluate this tube as an operator in an analytic expression.
|
| Interval | invert (const T &y) const |
| | Returns the interval inversion \(\left[[x]^{-1}([y])\right]\).
|
| Interval | invert (const T &y, const Interval &t) const |
| | Returns the interval inversion \(\left[[x]^{-1}([y])\right]\).
|
| void | invert (const T &y, std::vector< Interval > &v_t) const |
| | Computes the set of continuous values of the inversion \([x]^{-1}([y])\).
|
| void | invert (const T &y, std::vector< Interval > &v_t, const Interval &t) const |
| | Computes the set of continuous values of the inversion \([x]^{-1}([y])\).
|
| Interval | invert (const T &y, const SlicedTube< T > &v) const |
| | Returns the optimal interval inversion \(\left[[x]^{-1}([y])\right]\).
|
| Interval | invert (const T &y, const SlicedTube< T > &v, const Interval &t) const |
| | Returns the optimal interval inversion \(\left[[x]^{-1}([y])\right]\).
|
| void | invert (const T &y, std::vector< Interval > &v_t, const SlicedTube< T > &v) const |
| | Computes the set of continuous values of the optimal inversion \([x]^{-1}([y])\).
|
| void | invert (const T &y, std::vector< Interval > &v_t, const SlicedTube< T > &v, const Interval &t) const |
| | Computes the set of continuous values of the optimal inversion \([x]^{-1}([y])\).
|
| T | integral (const Interval &t) const |
| | Returns an enclosure of the integrals of this tube from \(t_0\) to \([t]\).
|
| T | integral (const Interval &t1, const Interval &t2) const |
| | Returns an enclosure of the integrals of this tube between the time intervals \([t_1]\) and \([t_2]\).
|
| std::pair< T, T > | partial_integral (const Interval &t) const |
| | Returns lower and upper enclosures of the integrals of this tube \([x](\cdot)=[x^-(\cdot),x^+(\cdot)]\) from \(t_0\) to \([t]\).
|
| std::pair< T, T > | partial_integral (const Interval &t1, const Interval &t2) const |
| | Returns lower and upper enclosures of the integrals of this tube \([x](\cdot)=[x^-(\cdot),x^+(\cdot)]\) between \([t_1]\) and \([t_2]\).
|
| SlicedTube< T > | primitive () const |
| | Returns a primitive of this tube with zero initial condition.
|
| SlicedTube< T > | primitive (const T &x0) const |
| | Returns a primitive of this tube with prescribed initial condition.
|
| T | all_reals_value () const |
| | Returns the unbounded codomain value associated with T.
|
| T | empty_value () const |
| | Returns the empty codomain value associated with T.
|
| SampledTraj< typename Scalar< T >::Type > | mid () const |
| | Returns the approximated midpoint trajectory of this tube.
|
|
iterator | begin () |
| | Returns an iterator to the first temporal slice.
|
|
iterator | end () |
| | Returns an iterator past the last temporal slice.
|
|
reverse_iterator | rbegin () |
| | Returns a reverse iterator to the last temporal slice.
|
|
reverse_iterator | rend () |
| | Returns a reverse iterator past the first temporal slice.
|
|
const_iterator | begin () const |
| | Returns a constant iterator to the first temporal slice.
|
|
const_iterator | end () const |
| | Returns a constant iterator past the last temporal slice.
|
|
const_reverse_iterator | rbegin () const |
| | Returns a constant reverse iterator to the last temporal slice.
|
|
const_reverse_iterator | rend () const |
| | Returns a constant reverse iterator past the first temporal slice.
|
| | SlicedTubeBase (const std::shared_ptr< TDomain > &tdomain) |
| | Creates a sliced tube over a given temporal domain.
|
| | ~SlicedTubeBase () |
| | Destroys this sliced tube.
|
| size_t | nb_slices () const |
| | Returns the number of temporal elements of this tube.
|
| std::shared_ptr< const SliceBase > | first_slice () const |
| | Returns the first slice of this tube.
|
| std::shared_ptr< const SliceBase > | last_slice () const |
| | Returns the last slice of this tube.
|
| | TubeBase (const std::shared_ptr< TDomain > &tdomain) |
| | Creates a tube over a given temporal domain.
|
| const std::shared_ptr< TDomain > & | tdomain () const |
| | Returns the temporal domain of this tube.
|
| Interval | t0_tf () const |
| | Returns the global temporal interval of this tube.
|
template<typename T>
class codac2::SlicedTube< T >
Tube represented over a sliced temporal domain.
A SlicedTube<T> is a tube whose temporal domain is represented by a shared TDomain made of TSlice objects.
For each temporal slice of this partition, the tube stores a Slice<T> describing the codomain of the tube over that temporal support.
The codomain type T is typically Interval or IntervalVector, or any custom domain implemented by the user.
- Template Parameters
-
| T | codomain type of the tube |