GCOP  1.0
Public Types | Public Member Functions | Public Attributes
gcop::Sensor< T, _nx, _nu, _np, Tz, _nz > Class Template Reference

#include <sensor.h>

Collaboration diagram for gcop::Sensor< T, _nx, _nu, _np, Tz, _nz >:
Collaboration graph
[legend]

List of all members.

Public Types

typedef Matrix< double, _nx, 1 > Vectornd
typedef Matrix< double, _nu, 1 > Vectorcd
typedef Matrix< double, _np, 1 > Vectormd
typedef Matrix< double, _nx, _nx > Matrixnd
typedef Matrix< double, _nx, _nu > Matrixncd
typedef Matrix< double, _nu, _nx > Matrixcnd
typedef Matrix< double, _nu, _nu > Matrixcd
typedef Matrix< double, _np, _np > Matrixmd
typedef Matrix< double, _nx, _np > Matrixnmd
typedef Matrix< double, _np, _nx > Matrixmnd
typedef Matrix< double, _nz, 1 > Vectorrd
typedef Matrix< double, _nz, _nz > Matrixrd
typedef Matrix< double, _nz, _nx > Matrixrnd
typedef Matrix< double, _nz, _nu > Matrixrcd
typedef Matrix< double, _nz, _np > Matrixrmd

Public Member Functions

 Sensor (Manifold< Tz, _nz > &Z)
virtual bool operator() (Tz &y, double t, const T &x, const Vectorcd &u, const Vectormd *p=0, Matrixrnd *dydx=0, Matrixrcd *dydu=0, Matrixrmd *dydp=0)

Public Attributes

Manifold< Tz, _nz > & Z
 measurement manifold
Matrixrd R
 sensor noise covariance

Detailed Description

template<typename T = VectorXd, int _nx = Dynamic, int _nu = Dynamic, int _np = Dynamic, typename Tz = VectorXd, int _nz = Dynamic>
class gcop::Sensor< T, _nx, _nu, _np, Tz, _nz >

General sensor model

Subclasses should provide implementation for the sensor function ()

Author: Marin Kobilarov marin(at)jhu.edu


Member Typedef Documentation

template<typename T = VectorXd, int _nx = Dynamic, int _nu = Dynamic, int _np = Dynamic, typename Tz = VectorXd, int _nz = Dynamic>
typedef Matrix<double, _nu, _nu> gcop::Sensor< T, _nx, _nu, _np, Tz, _nz >::Matrixcd
template<typename T = VectorXd, int _nx = Dynamic, int _nu = Dynamic, int _np = Dynamic, typename Tz = VectorXd, int _nz = Dynamic>
typedef Matrix<double, _nu, _nx> gcop::Sensor< T, _nx, _nu, _np, Tz, _nz >::Matrixcnd
template<typename T = VectorXd, int _nx = Dynamic, int _nu = Dynamic, int _np = Dynamic, typename Tz = VectorXd, int _nz = Dynamic>
typedef Matrix<double, _np, _np> gcop::Sensor< T, _nx, _nu, _np, Tz, _nz >::Matrixmd
template<typename T = VectorXd, int _nx = Dynamic, int _nu = Dynamic, int _np = Dynamic, typename Tz = VectorXd, int _nz = Dynamic>
typedef Matrix<double, _np, _nx> gcop::Sensor< T, _nx, _nu, _np, Tz, _nz >::Matrixmnd
template<typename T = VectorXd, int _nx = Dynamic, int _nu = Dynamic, int _np = Dynamic, typename Tz = VectorXd, int _nz = Dynamic>
typedef Matrix<double, _nx, _nu> gcop::Sensor< T, _nx, _nu, _np, Tz, _nz >::Matrixncd
template<typename T = VectorXd, int _nx = Dynamic, int _nu = Dynamic, int _np = Dynamic, typename Tz = VectorXd, int _nz = Dynamic>
typedef Matrix<double, _nx, _nx> gcop::Sensor< T, _nx, _nu, _np, Tz, _nz >::Matrixnd
template<typename T = VectorXd, int _nx = Dynamic, int _nu = Dynamic, int _np = Dynamic, typename Tz = VectorXd, int _nz = Dynamic>
typedef Matrix<double, _nx, _np> gcop::Sensor< T, _nx, _nu, _np, Tz, _nz >::Matrixnmd
template<typename T = VectorXd, int _nx = Dynamic, int _nu = Dynamic, int _np = Dynamic, typename Tz = VectorXd, int _nz = Dynamic>
typedef Matrix<double, _nz, _nu> gcop::Sensor< T, _nx, _nu, _np, Tz, _nz >::Matrixrcd
template<typename T = VectorXd, int _nx = Dynamic, int _nu = Dynamic, int _np = Dynamic, typename Tz = VectorXd, int _nz = Dynamic>
typedef Matrix<double, _nz, _nz> gcop::Sensor< T, _nx, _nu, _np, Tz, _nz >::Matrixrd
template<typename T = VectorXd, int _nx = Dynamic, int _nu = Dynamic, int _np = Dynamic, typename Tz = VectorXd, int _nz = Dynamic>
typedef Matrix<double, _nz, _np> gcop::Sensor< T, _nx, _nu, _np, Tz, _nz >::Matrixrmd
template<typename T = VectorXd, int _nx = Dynamic, int _nu = Dynamic, int _np = Dynamic, typename Tz = VectorXd, int _nz = Dynamic>
typedef Matrix<double, _nz, _nx> gcop::Sensor< T, _nx, _nu, _np, Tz, _nz >::Matrixrnd
template<typename T = VectorXd, int _nx = Dynamic, int _nu = Dynamic, int _np = Dynamic, typename Tz = VectorXd, int _nz = Dynamic>
typedef Matrix<double, _nu, 1> gcop::Sensor< T, _nx, _nu, _np, Tz, _nz >::Vectorcd
template<typename T = VectorXd, int _nx = Dynamic, int _nu = Dynamic, int _np = Dynamic, typename Tz = VectorXd, int _nz = Dynamic>
typedef Matrix<double, _np, 1> gcop::Sensor< T, _nx, _nu, _np, Tz, _nz >::Vectormd
template<typename T = VectorXd, int _nx = Dynamic, int _nu = Dynamic, int _np = Dynamic, typename Tz = VectorXd, int _nz = Dynamic>
typedef Matrix<double, _nx, 1> gcop::Sensor< T, _nx, _nu, _np, Tz, _nz >::Vectornd
template<typename T = VectorXd, int _nx = Dynamic, int _nu = Dynamic, int _np = Dynamic, typename Tz = VectorXd, int _nz = Dynamic>
typedef Matrix<double, _nz, 1> gcop::Sensor< T, _nx, _nu, _np, Tz, _nz >::Vectorrd

Constructor & Destructor Documentation

template<typename T , int _nx, int _nu, int _np, typename Tz, int _nz>
gcop::Sensor< T, _nx, _nu, _np, Tz, _nz >::Sensor ( Manifold< Tz, _nz > &  Z)

Member Function Documentation

template<typename T, int _nx, int _nu, int _np, typename Tz, int _nz>
bool gcop::Sensor< T, _nx, _nu, _np, Tz, _nz >::operator() ( Tz &  y,
double  t,
const T &  x,
const Vectorcd u,
const Vectormd p = 0,
Matrixrnd dydx = 0,
Matrixrcd dydu = 0,
Matrixrmd dydp = 0 
) [virtual]

Measurement functions

Parameters:
ydeterministic output (i.e. the actual random measurement is z = y + v, where the noise v is Normal(0,var) )
tcurrent time
xcurrent state
ucontrol inputs (often not used)
pstatic parameters (optional)
dydxjacobian w.r.t. x (optional)
dydujacobian w.r.t. u (optional)
dydpjacobian w.r.t. p (optional)
Returns:
true if all variables are feasible

Member Data Documentation

template<typename T = VectorXd, int _nx = Dynamic, int _nu = Dynamic, int _np = Dynamic, typename Tz = VectorXd, int _nz = Dynamic>
Matrixrd gcop::Sensor< T, _nx, _nu, _np, Tz, _nz >::R

sensor noise covariance

Referenced by gcop::Sensor< T, _nx, _nu, _np, Tz, _nz >::Sensor().

template<typename T = VectorXd, int _nx = Dynamic, int _nu = Dynamic, int _np = Dynamic, typename Tz = VectorXd, int _nz = Dynamic>
Manifold<Tz, _nz>& gcop::Sensor< T, _nx, _nu, _np, Tz, _nz >::Z

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