Public Member Functions | Private Member Functions | Private Attributes
EllipsoidalIntegrator Class Reference

Validated integrator for ODEs based on Taylor models with ellipsoidal remainder term. More...

#include <ellipsoidal_integrator.hpp>

Inheritance diagram for EllipsoidalIntegrator:
Inheritance graph
[legend]

List of all members.

Public Member Functions

Tmatrix< IntervalboundQ () const
 EllipsoidalIntegrator ()
 EllipsoidalIntegrator (const DifferentialEquation &rhs_, const int &N_=3)
 EllipsoidalIntegrator (const EllipsoidalIntegrator &arg)
template<typename T >
Tmatrix< IntervalgetStateBound (const Tmatrix< T > &x) const
returnValue init (const DifferentialEquation &rhs_, const int &N_=3)
Tmatrix< Intervalintegrate (double t0, double tf, int M, const Tmatrix< Interval > &x)
Tmatrix< Intervalintegrate (double t0, double tf, int M, const Tmatrix< Interval > &x, const Tmatrix< Interval > &p)
Tmatrix< Intervalintegrate (double t0, double tf, int M, const Tmatrix< Interval > &x, const Tmatrix< Interval > &p, const Tmatrix< Interval > &w)
template<typename T >
returnValue integrate (double t0, double tf, Tmatrix< T > *x, Tmatrix< T > *p=0, Tmatrix< T > *w=0)
virtual EllipsoidalIntegratoroperator= (const EllipsoidalIntegrator &arg)
template<typename T >
double step (const double &t, const double &tf, Tmatrix< T > *x, Tmatrix< T > *p=0, Tmatrix< T > *w=0)
virtual ~EllipsoidalIntegrator ()

Private Member Functions

template<typename T >
Tmatrix< Intervalbound (const Tmatrix< T > &x) const
template<typename T >
void center (Tmatrix< T > &x) const
void copy (const EllipsoidalIntegrator &arg)
Tmatrix< IntervalevalC (const Tmatrix< double > &C, double h) const
Tmatrix< double > evalC2 (const Tmatrix< double > &C, double h) const
template<typename T >
Tmatrix< Tevaluate (Function &f, double t, Tmatrix< T > *x, Tmatrix< T > *p, Tmatrix< T > *w) const
template<typename T >
Tmatrix< Tevaluate (Function &f, Interval t, Tmatrix< T > *x, Tmatrix< T > *p, Tmatrix< T > *w) const
template<typename T >
Tmatrix< TgetPolynomial (const Tmatrix< T > &x) const
template<typename T >
Tmatrix< IntervalgetRemainder (const Tmatrix< T > &x) const
template<typename T >
Tmatrix< double > hat (const Tmatrix< T > &x) const
BooleanType isIncluded (const Tmatrix< Interval > &A, const Tmatrix< Interval > &B) const
double norm (const Tmatrix< Interval > &E, Tmatrix< Interval > &X) const
template<typename T >
void phase0 (double t, Tmatrix< T > *x, Tmatrix< T > *p, Tmatrix< T > *w, Tmatrix< T > &coeff, Tmatrix< double > &C)
template<typename T >
double phase1 (double t, double tf, Tmatrix< T > *x, Tmatrix< T > *p, Tmatrix< T > *w, Tmatrix< T > &coeff, Tmatrix< double > &C)
template<typename T >
void phase2 (double t, double h, Tmatrix< T > *x, Tmatrix< T > *p, Tmatrix< T > *w, Tmatrix< T > &coeff, Tmatrix< double > &C)
template<typename T >
Tmatrix< Tphi (const Tmatrix< T > &coeff, const double &h) const
double scale (const Interval &E, const Interval &X) const
void setInfinity ()
virtual returnValue setupOptions ()
void updateQ (Tmatrix< double > C, Tmatrix< Interval > R)

Private Attributes

Function ddg
Function dg
Function g
Function gr
int N
int nx
RealClock Phase0Time
RealClock Phase1Time
Tmatrix< double > Q
RealClock totalTime

Detailed Description

Validated integrator for ODEs based on Taylor models with ellipsoidal remainder term.

Author:
Mario Villanueva, Boris Houska

Definition at line 60 of file ellipsoidal_integrator.hpp.


Constructor & Destructor Documentation

Default constructor.

Definition at line 44 of file ellipsoidal_integrator.cpp.

EllipsoidalIntegrator::EllipsoidalIntegrator ( const DifferentialEquation rhs_,
const int &  N_ = 3 
)

Constructor that takes the differential equation and the order (default 3) as an argument.

Parameters:
rhs_The differential equation.
N_The order of the intergrator (default = 3).

Definition at line 46 of file ellipsoidal_integrator.cpp.

Copy constructor (deep copy).

Definition at line 53 of file ellipsoidal_integrator.cpp.

Destructor.

Definition at line 55 of file ellipsoidal_integrator.cpp.


Member Function Documentation

template<typename T >
Tmatrix<Interval> EllipsoidalIntegrator::bound ( const Tmatrix< T > &  x) const [private]

Definition at line 258 of file ellipsoidal_integrator.cpp.

template<typename T >
void EllipsoidalIntegrator::center ( Tmatrix< T > &  x) const [private]
void EllipsoidalIntegrator::copy ( const EllipsoidalIntegrator arg) [private]

Definition at line 166 of file ellipsoidal_integrator.cpp.

Tmatrix< Interval > EllipsoidalIntegrator::evalC ( const Tmatrix< double > &  C,
double  h 
) const [private]

Definition at line 178 of file ellipsoidal_integrator.cpp.

Tmatrix< double > EllipsoidalIntegrator::evalC2 ( const Tmatrix< double > &  C,
double  h 
) const [private]

Definition at line 193 of file ellipsoidal_integrator.cpp.

template<typename T >
Tmatrix<T> EllipsoidalIntegrator::evaluate ( Function f,
double  t,
Tmatrix< T > *  x,
Tmatrix< T > *  p,
Tmatrix< T > *  w 
) const [private]
template<typename T >
Tmatrix<T> EllipsoidalIntegrator::evaluate ( Function f,
Interval  t,
Tmatrix< T > *  x,
Tmatrix< T > *  p,
Tmatrix< T > *  w 
) const [private]
template<typename T >
Tmatrix<T> EllipsoidalIntegrator::getPolynomial ( const Tmatrix< T > &  x) const [private]
template<typename T >
Tmatrix<Interval> EllipsoidalIntegrator::getRemainder ( const Tmatrix< T > &  x) const [private]
template<typename T >
Tmatrix<Interval> EllipsoidalIntegrator::getStateBound ( const Tmatrix< T > &  x) const
template<typename T >
Tmatrix<double> EllipsoidalIntegrator::hat ( const Tmatrix< T > &  x) const [private]
returnValue EllipsoidalIntegrator::init ( const DifferentialEquation rhs_,
const int &  N_ = 3 
)

Definition at line 68 of file ellipsoidal_integrator.cpp.

Tmatrix< Interval > EllipsoidalIntegrator::integrate ( double  t0,
double  tf,
int  M,
const Tmatrix< Interval > &  x 
)

Definition at line 102 of file ellipsoidal_integrator.cpp.

Tmatrix< Interval > EllipsoidalIntegrator::integrate ( double  t0,
double  tf,
int  M,
const Tmatrix< Interval > &  x,
const Tmatrix< Interval > &  p 
)

Definition at line 110 of file ellipsoidal_integrator.cpp.

Tmatrix< Interval > EllipsoidalIntegrator::integrate ( double  t0,
double  tf,
int  M,
const Tmatrix< Interval > &  x,
const Tmatrix< Interval > &  p,
const Tmatrix< Interval > &  w 
)

Definition at line 118 of file ellipsoidal_integrator.cpp.

template<typename T >
returnValue EllipsoidalIntegrator::integrate ( double  t0,
double  tf,
Tmatrix< T > *  x,
Tmatrix< T > *  p = 0,
Tmatrix< T > *  w = 0 
)
BooleanType EllipsoidalIntegrator::isIncluded ( const Tmatrix< Interval > &  A,
const Tmatrix< Interval > &  B 
) const [private]

Definition at line 265 of file ellipsoidal_integrator.cpp.

double EllipsoidalIntegrator::norm ( const Tmatrix< Interval > &  E,
Tmatrix< Interval > &  X 
) const [private]

Definition at line 218 of file ellipsoidal_integrator.cpp.

EllipsoidalIntegrator & EllipsoidalIntegrator::operator= ( const EllipsoidalIntegrator arg) [virtual]

Assignment operator (deep copy).

Definition at line 57 of file ellipsoidal_integrator.cpp.

template<typename T >
void EllipsoidalIntegrator::phase0 ( double  t,
Tmatrix< T > *  x,
Tmatrix< T > *  p,
Tmatrix< T > *  w,
Tmatrix< T > &  coeff,
Tmatrix< double > &  C 
) [private]
template<typename T >
double EllipsoidalIntegrator::phase1 ( double  t,
double  tf,
Tmatrix< T > *  x,
Tmatrix< T > *  p,
Tmatrix< T > *  w,
Tmatrix< T > &  coeff,
Tmatrix< double > &  C 
) [private]
template<typename T >
void EllipsoidalIntegrator::phase2 ( double  t,
double  h,
Tmatrix< T > *  x,
Tmatrix< T > *  p,
Tmatrix< T > *  w,
Tmatrix< T > &  coeff,
Tmatrix< double > &  C 
) [private]
template<typename T >
Tmatrix<T> EllipsoidalIntegrator::phi ( const Tmatrix< T > &  coeff,
const double &  h 
) const [private]
double EllipsoidalIntegrator::scale ( const Interval E,
const Interval X 
) const [private]

Definition at line 207 of file ellipsoidal_integrator.cpp.

Definition at line 279 of file ellipsoidal_integrator.cpp.

Definition at line 282 of file ellipsoidal_integrator.cpp.

template<typename T >
double EllipsoidalIntegrator::step ( const double &  t,
const double &  tf,
Tmatrix< T > *  x,
Tmatrix< T > *  p = 0,
Tmatrix< T > *  w = 0 
)
void EllipsoidalIntegrator::updateQ ( Tmatrix< double >  C,
Tmatrix< Interval R 
) [private]

Definition at line 230 of file ellipsoidal_integrator.cpp.


Member Data Documentation

Definition at line 183 of file ellipsoidal_integrator.hpp.

Definition at line 182 of file ellipsoidal_integrator.hpp.

Definition at line 180 of file ellipsoidal_integrator.hpp.

Definition at line 181 of file ellipsoidal_integrator.hpp.

int EllipsoidalIntegrator::N [private]

Definition at line 178 of file ellipsoidal_integrator.hpp.

Definition at line 177 of file ellipsoidal_integrator.hpp.

Definition at line 188 of file ellipsoidal_integrator.hpp.

Definition at line 189 of file ellipsoidal_integrator.hpp.

Tmatrix<double> EllipsoidalIntegrator::Q [private]

Definition at line 185 of file ellipsoidal_integrator.hpp.

Definition at line 187 of file ellipsoidal_integrator.hpp.


The documentation for this class was generated from the following files:


acado
Author(s): Milan Vukov, Rien Quirynen
autogenerated on Sat Jun 8 2019 19:40:23