TaylorModel implements a third order Taylor model, i.e., a cubic approximation of a function over a time interval, with an interval remainder. All the operations on two Taylor models assume their time intervals are the same. More...
#include <taylor_model.h>
Public Member Functions | |
S & | coeff (std::size_t i) |
S | coeff (std::size_t i) const |
Interval< S > | getBound () const |
Interval< S > | getBound (S l, S r) const |
Interval< S > | getBound (S t) const |
Interval< S > | getTightBound () const |
Interval< S > | getTightBound (S l, S r) const |
const std::shared_ptr< TimeInterval< S > > & | getTimeInterval () const |
TaylorModel | operator* (const TaylorModel &other) const |
Taylor model multiplication: f(t) = c0+c1*t+c2*t^2+c3*t^3+[a,b] g(t) = c0'+c1'*t+c2'*t^2+c3'*t^2+[c,d] f(t)g(t)= c0c0'+ (c0c1'+c1c0')t+ (c0c2'+c1c1'+c2c0')t^2+ (c0c3'+c1c2'+c2c1'+c3c0')t^3+ [a,b][c,d]+ (c1c3'+c2c2'+c3c1')t^4+ (c2c3'+c3c2')t^5+ (c3c3')t^6+ (c0+c1*t+c2*t^2+c3*t^3)[c,d]+ (c0'+c1'*t+c2'*t^2+c3'*c^3)[a,b]. More... | |
TaylorModel | operator* (S d) const |
TaylorModel & | operator*= (const TaylorModel &other) |
TaylorModel & | operator*= (S d) |
TaylorModel | operator+ (const TaylorModel &other) const |
TaylorModel | operator+ (S d) const |
TaylorModel & | operator+= (const TaylorModel &other) |
TaylorModel & | operator+= (S d) |
TaylorModel | operator- () const |
TaylorModel | operator- (const TaylorModel &other) const |
TaylorModel | operator- (S d) const |
TaylorModel & | operator-= (const TaylorModel &other) |
TaylorModel & | operator-= (S d) |
void | print () const |
Interval< S > & | remainder () |
const Interval< S > & | remainder () const |
void | setTimeInterval (const std::shared_ptr< TimeInterval< S >> &time_interval) |
void | setTimeInterval (S l, S r) |
void | setZero () |
TaylorModel () | |
TaylorModel (const std::shared_ptr< TimeInterval< S >> &time_interval) | |
TaylorModel (S c0, S c1, S c2, S c3, const Interval< S > &r, const std::shared_ptr< TimeInterval< S >> &time_interval) | |
TaylorModel (S coeff, const std::shared_ptr< TimeInterval< S >> &time_interval) | |
TaylorModel (S coeffs[3], const Interval< S > &r, const std::shared_ptr< TimeInterval< S >> &time_interval) | |
Private Attributes | |
S | coeffs_ [4] |
Coefficients of the cubic polynomial approximation. More... | |
Interval< S > | r_ |
interval remainder More... | |
std::shared_ptr< TimeInterval< S > > | time_interval_ |
time interval More... | |
TaylorModel implements a third order Taylor model, i.e., a cubic approximation of a function over a time interval, with an interval remainder. All the operations on two Taylor models assume their time intervals are the same.
Definition at line 58 of file taylor_model.h.
fcl::TaylorModel< S >::TaylorModel |
Definition at line 128 of file taylor_model-inl.h.
fcl::TaylorModel< S >::TaylorModel | ( | const std::shared_ptr< TimeInterval< S >> & | time_interval | ) |
Definition at line 135 of file taylor_model-inl.h.
fcl::TaylorModel< S >::TaylorModel | ( | S | coeff, |
const std::shared_ptr< TimeInterval< S >> & | time_interval | ||
) |
Definition at line 142 of file taylor_model-inl.h.
fcl::TaylorModel< S >::TaylorModel | ( | S | coeffs[3], |
const Interval< S > & | r, | ||
const std::shared_ptr< TimeInterval< S >> & | time_interval | ||
) |
Definition at line 150 of file taylor_model-inl.h.
fcl::TaylorModel< S >::TaylorModel | ( | S | c0, |
S | c1, | ||
S | c2, | ||
S | c3, | ||
const Interval< S > & | r, | ||
const std::shared_ptr< TimeInterval< S >> & | time_interval | ||
) |
Definition at line 162 of file taylor_model-inl.h.
S & fcl::TaylorModel< S >::coeff | ( | std::size_t | i | ) |
Definition at line 107 of file taylor_model-inl.h.
S fcl::TaylorModel< S >::coeff | ( | std::size_t | i | ) | const |
Definition at line 100 of file taylor_model-inl.h.
Interval< S > fcl::TaylorModel< S >::getBound |
Definition at line 357 of file taylor_model-inl.h.
Interval< S > fcl::TaylorModel< S >::getBound | ( | S | l, |
S | r | ||
) | const |
Definition at line 346 of file taylor_model-inl.h.
Interval< S > fcl::TaylorModel< S >::getBound | ( | S | t | ) | const |
Definition at line 339 of file taylor_model-inl.h.
Interval< S > fcl::TaylorModel< S >::getTightBound |
Definition at line 449 of file taylor_model-inl.h.
Interval< S > fcl::TaylorModel< S >::getTightBound | ( | S | l, |
S | r | ||
) | const |
Definition at line 364 of file taylor_model-inl.h.
const std::shared_ptr< TimeInterval< S > > & fcl::TaylorModel< S >::getTimeInterval |
Definition at line 93 of file taylor_model-inl.h.
TaylorModel< S > fcl::TaylorModel< S >::operator* | ( | const TaylorModel< S > & | other | ) | const |
Taylor model multiplication: f(t) = c0+c1*t+c2*t^2+c3*t^3+[a,b] g(t) = c0'+c1'*t+c2'*t^2+c3'*t^2+[c,d] f(t)g(t)= c0c0'+ (c0c1'+c1c0')t+ (c0c2'+c1c1'+c2c0')t^2+ (c0c3'+c1c2'+c2c1'+c3c0')t^3+ [a,b][c,d]+ (c1c3'+c2c2'+c3c1')t^4+ (c2c3'+c3c2')t^5+ (c3c3')t^6+ (c0+c1*t+c2*t^2+c3*t^3)[c,d]+ (c0'+c1'*t+c2'*t^2+c3'*c^3)[a,b].
Definition at line 259 of file taylor_model-inl.h.
TaylorModel< S > fcl::TaylorModel< S >::operator* | ( | S | d | ) | const |
Definition at line 268 of file taylor_model-inl.h.
TaylorModel< S > & fcl::TaylorModel< S >::operator*= | ( | const TaylorModel< S > & | other | ) |
Definition at line 275 of file taylor_model-inl.h.
TaylorModel< S > & fcl::TaylorModel< S >::operator*= | ( | S | d | ) |
Definition at line 313 of file taylor_model-inl.h.
TaylorModel< S > fcl::TaylorModel< S >::operator+ | ( | const TaylorModel< S > & | other | ) | const |
Definition at line 204 of file taylor_model-inl.h.
TaylorModel< S > fcl::TaylorModel< S >::operator+ | ( | S | d | ) | const |
Definition at line 174 of file taylor_model-inl.h.
TaylorModel< S > & fcl::TaylorModel< S >::operator+= | ( | const TaylorModel< S > & | other | ) |
Definition at line 220 of file taylor_model-inl.h.
TaylorModel< S > & fcl::TaylorModel< S >::operator+= | ( | S | d | ) |
Definition at line 181 of file taylor_model-inl.h.
TaylorModel< S > fcl::TaylorModel< S >::operator- |
Definition at line 325 of file taylor_model-inl.h.
TaylorModel< S > fcl::TaylorModel< S >::operator- | ( | const TaylorModel< S > & | other | ) | const |
Definition at line 212 of file taylor_model-inl.h.
TaylorModel< S > fcl::TaylorModel< S >::operator- | ( | S | d | ) | const |
Definition at line 189 of file taylor_model-inl.h.
TaylorModel< S > & fcl::TaylorModel< S >::operator-= | ( | const TaylorModel< S > & | other | ) |
Definition at line 233 of file taylor_model-inl.h.
TaylorModel< S > & fcl::TaylorModel< S >::operator-= | ( | S | d | ) |
Definition at line 196 of file taylor_model-inl.h.
void fcl::TaylorModel< S >::print |
Definition at line 332 of file taylor_model-inl.h.
Interval<S>& fcl::TaylorModel< S >::remainder | ( | ) |
Interval< S > & fcl::TaylorModel< S >::remainder |
Definition at line 114 of file taylor_model-inl.h.
void fcl::TaylorModel< S >::setTimeInterval | ( | const std::shared_ptr< TimeInterval< S >> & | time_interval | ) |
void fcl::TaylorModel< S >::setTimeInterval | ( | S | l, |
S | r | ||
) |
Definition at line 79 of file taylor_model-inl.h.
void fcl::TaylorModel< S >::setZero |
Definition at line 456 of file taylor_model-inl.h.
|
private |
Coefficients of the cubic polynomial approximation.
Definition at line 64 of file taylor_model.h.
|
private |
interval remainder
Definition at line 67 of file taylor_model.h.
|
private |
time interval
Definition at line 61 of file taylor_model.h.