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 | |
Interval | getBound () const |
Interval | getBound (FCL_REAL l, FCL_REAL r) const |
Interval | getBound (FCL_REAL t) const |
Interval | getTightBound () const |
Interval | getTightBound (FCL_REAL l, FCL_REAL r) 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]. | |
TaylorModel | operator* (FCL_REAL d) const |
TaylorModel & | operator*= (const TaylorModel &other) |
TaylorModel & | operator*= (FCL_REAL d) |
TaylorModel | operator+ (const TaylorModel &other) const |
TaylorModel | operator+ (FCL_REAL d) const |
TaylorModel & | operator+= (const TaylorModel &other) |
TaylorModel & | operator+= (FCL_REAL d) |
TaylorModel | operator- (const TaylorModel &other) const |
TaylorModel | operator- () const |
TaylorModel & | operator-= (const TaylorModel &other) |
void | print () const |
void | setTimeInterval (FCL_REAL l, FCL_REAL r) |
void | setTimeInterval (const boost::shared_ptr< TimeInterval > time_interval) |
void | setZero () |
TaylorModel () | |
TaylorModel (const boost::shared_ptr< TimeInterval > &time_interval) | |
TaylorModel (FCL_REAL coeff, const boost::shared_ptr< TimeInterval > &time_interval) | |
TaylorModel (FCL_REAL coeffs[3], const Interval &r, const boost::shared_ptr< TimeInterval > &time_interval) | |
TaylorModel (FCL_REAL c0, FCL_REAL c1, FCL_REAL c2, FCL_REAL c3, const Interval &r, const boost::shared_ptr< TimeInterval > &time_interval) | |
Public Attributes | |
FCL_REAL | coeffs_ [4] |
Coefficients of the cubic polynomial approximation. | |
Interval | r_ |
interval remainder | |
boost::shared_ptr< TimeInterval > | time_interval_ |
time interval |
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 60 of file taylor_model.h.
Definition at line 47 of file taylor_model.cpp.
fcl::TaylorModel::TaylorModel | ( | const boost::shared_ptr< TimeInterval > & | time_interval | ) |
Definition at line 52 of file taylor_model.cpp.
fcl::TaylorModel::TaylorModel | ( | FCL_REAL | coeff, |
const boost::shared_ptr< TimeInterval > & | time_interval | ||
) |
Definition at line 57 of file taylor_model.cpp.
fcl::TaylorModel::TaylorModel | ( | FCL_REAL | coeffs[3], |
const Interval & | r, | ||
const boost::shared_ptr< TimeInterval > & | time_interval | ||
) |
Definition at line 63 of file taylor_model.cpp.
fcl::TaylorModel::TaylorModel | ( | FCL_REAL | c0, |
FCL_REAL | c1, | ||
FCL_REAL | c2, | ||
FCL_REAL | c3, | ||
const Interval & | r, | ||
const boost::shared_ptr< TimeInterval > & | time_interval | ||
) |
Definition at line 73 of file taylor_model.cpp.
Interval fcl::TaylorModel::getBound | ( | ) | const |
Definition at line 235 of file taylor_model.cpp.
Interval fcl::TaylorModel::getBound | ( | FCL_REAL | l, |
FCL_REAL | r | ||
) | const |
Definition at line 226 of file taylor_model.cpp.
Interval fcl::TaylorModel::getBound | ( | FCL_REAL | t | ) | const |
Definition at line 221 of file taylor_model.cpp.
Interval fcl::TaylorModel::getTightBound | ( | ) | const |
Definition at line 323 of file taylor_model.cpp.
Interval fcl::TaylorModel::getTightBound | ( | FCL_REAL | l, |
FCL_REAL | r | ||
) | const |
Definition at line 240 of file taylor_model.cpp.
TaylorModel fcl::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].
Definition at line 152 of file taylor_model.cpp.
TaylorModel fcl::TaylorModel::operator* | ( | FCL_REAL | d | ) | const |
Definition at line 159 of file taylor_model.cpp.
TaylorModel & fcl::TaylorModel::operator*= | ( | const TaylorModel & | other | ) |
Definition at line 164 of file taylor_model.cpp.
TaylorModel & fcl::TaylorModel::operator*= | ( | FCL_REAL | d | ) |
Definition at line 200 of file taylor_model.cpp.
TaylorModel fcl::TaylorModel::operator+ | ( | const TaylorModel & | other | ) | const |
Definition at line 104 of file taylor_model.cpp.
TaylorModel fcl::TaylorModel::operator+ | ( | FCL_REAL | d | ) | const |
Definition at line 93 of file taylor_model.cpp.
TaylorModel & fcl::TaylorModel::operator+= | ( | const TaylorModel & | other | ) |
Definition at line 115 of file taylor_model.cpp.
TaylorModel & fcl::TaylorModel::operator+= | ( | FCL_REAL | d | ) |
Definition at line 98 of file taylor_model.cpp.
TaylorModel fcl::TaylorModel::operator- | ( | const TaylorModel & | other | ) | const |
Definition at line 110 of file taylor_model.cpp.
TaylorModel fcl::TaylorModel::operator- | ( | ) | const |
Definition at line 211 of file taylor_model.cpp.
TaylorModel & fcl::TaylorModel::operator-= | ( | const TaylorModel & | other | ) |
Definition at line 126 of file taylor_model.cpp.
void fcl::TaylorModel::print | ( | ) | const |
Definition at line 216 of file taylor_model.cpp.
void fcl::TaylorModel::setTimeInterval | ( | FCL_REAL | l, |
FCL_REAL | r | ||
) |
Definition at line 83 of file taylor_model.cpp.
void fcl::TaylorModel::setTimeInterval | ( | const boost::shared_ptr< TimeInterval > | time_interval | ) | [inline] |
Definition at line 72 of file taylor_model.h.
void fcl::TaylorModel::setZero | ( | ) |
Definition at line 328 of file taylor_model.cpp.
Coefficients of the cubic polynomial approximation.
Definition at line 66 of file taylor_model.h.
interval remainder
Definition at line 69 of file taylor_model.h.
boost::shared_ptr<TimeInterval> fcl::TaylorModel::time_interval_ |
time interval
Definition at line 63 of file taylor_model.h.