Public Member Functions | List of all members
RallNd< N > Class Template Reference

#include <rallNd.h>

Inheritance diagram for RallNd< N >:
Inheritance graph
[legend]

Public Member Functions

 RallNd ()
 
 RallNd (const Rall1d< RallNd< N-1 >, RallNd< N-1 >, double > &arg)
 
 RallNd (double value, double d[])
 
 RallNd ()
 
 RallNd (const Rall2d< RallNd< N-2 >, RallNd< N-2 >, double > &arg)
 
 RallNd (double value, double d[])
 
- Public Member Functions inherited from KDL::Rall1d< RallNd< N-1 >, RallNd< N-1 >, double >
RallNd< N-1 > deriv () const
 
INLINE RallNd< N-1 > & Gradient ()
 
INLINE Rall1d< RallNd< N-1 >, RallNd< N-1 >, double > & operator*= (const Rall1d< RallNd< N-1 >, RallNd< N-1 >, double > &rhs)
 
INLINE Rall1d< RallNd< N-1 >, RallNd< N-1 >, double > & operator*= (double rhs)
 
INLINE Rall1d< RallNd< N-1 >, RallNd< N-1 >, double > & operator+= (const Rall1d< RallNd< N-1 >, RallNd< N-1 >, double > &rhs)
 
INLINE Rall1d< RallNd< N-1 >, RallNd< N-1 >, double > & operator+= (double rhs)
 
INLINE Rall1d< RallNd< N-1 >, RallNd< N-1 >, double > & operator-= (const Rall1d< RallNd< N-1 >, RallNd< N-1 >, double > &rhs)
 
INLINE Rall1d< RallNd< N-1 >, RallNd< N-1 >, double > & operator-= (double rhs)
 
INLINE Rall1d< RallNd< N-1 >, RallNd< N-1 >, double > & operator/= (const Rall1d< RallNd< N-1 >, RallNd< N-1 >, double > &rhs)
 
INLINE Rall1d< RallNd< N-1 >, RallNd< N-1 >, double > & operator/= (double rhs)
 
INLINE Rall1d< RallNd< N-1 >, RallNd< N-1 >, double > & operator= (double c)
 
INLINE Rall1d< RallNd< N-1 >, RallNd< N-1 >, double > & operator= (const Rall1d< RallNd< N-1 >, RallNd< N-1 >, double > &r)
 
INLINE Rall1d ()
 
INLINE Rall1d (typename TI< RallNd< N-1 > >::Arg c)
 
INLINE Rall1d (typename TI< RallNd< N-1 > >::Arg tn, typename TI< RallNd< N-1 > >::Arg afg)
 
INLINE Rall1d (const Rall1d< RallNd< N-1 >, RallNd< N-1 >, double > &r)
 
RallNd< N-1 > value () const
 
INLINE RallNd< N-1 > & Value ()
 
- Public Member Functions inherited from KDL::Rall2d< RallNd< N-2 >, RallNd< N-2 >, double >
INLINE RallNd< N-2 > & D ()
 
INLINE RallNd< N-2 > & DD ()
 
INLINE Rall2d< RallNd< N-2 >, RallNd< N-2 >, double > & operator*= (const Rall2d< RallNd< N-2 >, RallNd< N-2 >, double > &rhs)
 
INLINE Rall2d< RallNd< N-2 >, RallNd< N-2 >, double > & operator*= (double rhs)
 
INLINE Rall2d< RallNd< N-2 >, RallNd< N-2 >, double > & operator+= (const Rall2d< RallNd< N-2 >, RallNd< N-2 >, double > &rhs)
 
INLINE Rall2d< RallNd< N-2 >, RallNd< N-2 >, double > & operator+= (double rhs)
 
INLINE Rall2d< RallNd< N-2 >, RallNd< N-2 >, double > & operator-= (const Rall2d< RallNd< N-2 >, RallNd< N-2 >, double > &rhs)
 
INLINE Rall2d< RallNd< N-2 >, RallNd< N-2 >, double > & operator-= (double rhs)
 
INLINE Rall2d< RallNd< N-2 >, RallNd< N-2 >, double > & operator/= (const Rall2d< RallNd< N-2 >, RallNd< N-2 >, double > &rhs)
 
INLINE Rall2d< RallNd< N-2 >, RallNd< N-2 >, double > & operator/= (double rhs)
 
INLINE Rall2d< RallNd< N-2 >, RallNd< N-2 >, double > & operator= (double c)
 
INLINE Rall2d< RallNd< N-2 >, RallNd< N-2 >, double > & operator= (const Rall2d< RallNd< N-2 >, RallNd< N-2 >, double > &r)
 
INLINE Rall2d ()
 
INLINE Rall2d (typename TI< RallNd< N-2 > >::Arg c)
 
INLINE Rall2d (typename TI< RallNd< N-2 > >::Arg tn, const RallNd< N-2 > &afg)
 
INLINE Rall2d (typename TI< RallNd< N-2 > >::Arg tn, const RallNd< N-2 > &afg, const RallNd< N-2 > &afg2)
 
INLINE Rall2d (const Rall2d< RallNd< N-2 >, RallNd< N-2 >, double > &r)
 
INLINE RallNd< N-2 > & Value ()
 

Additional Inherited Members

- Public Types inherited from KDL::Rall1d< RallNd< N-1 >, RallNd< N-1 >, double >
typedef RallNd< N-1 > gradienttype
 
typedef double scalartype
 
typedef RallNd< N-1 > valuetype
 
- Static Public Member Functions inherited from KDL::Rall1d< RallNd< N-1 >, RallNd< N-1 >, double >
static INLINE Rall1d< RallNd< N-1 >, RallNd< N-1 >, double > Identity ()
 
static INLINE Rall1d< RallNd< N-1 >, RallNd< N-1 >, double > Zero ()
 
- Static Public Member Functions inherited from KDL::Rall2d< RallNd< N-2 >, RallNd< N-2 >, double >
static INLINE Rall2d< RallNd< N-2 >, RallNd< N-2 >, double > Identity ()
 
static INLINE Rall2d< RallNd< N-2 >, RallNd< N-2 >, double > Zero ()
 
- Public Attributes inherited from KDL::Rall1d< RallNd< N-1 >, RallNd< N-1 >, double >
RallNd< N-1 > grad
 gradient More...
 
RallNd< N-1 > t
 value More...
 
- Public Attributes inherited from KDL::Rall2d< RallNd< N-2 >, RallNd< N-2 >, double >
RallNd< N-2 > d
 1st derivative More...
 
RallNd< N-2 > dd
 2nd derivative More...
 
RallNd< N-2 > t
 value More...
 

Detailed Description

template<int N>
class RallNd< N >

The Rall1d class allows for a 24-line implementation of rall numbers generalized to the Nth derivative ! The efficiency is not very good for high derivatives. This could be improved by also using Rall2d

template <int n>=""> class RallNd : public Rall1d< RallNd<N-1>, RallNd<N-1>, double > { public: RallNd() {} RallNd(const Rall1d< RallNd<N-1>, RallNd<N-1>,double>& arg) : Rall1d< RallNd<N-1>, RallNd<N-1>,double>(arg) {} RallNd(double value,double d[]) { this->t = RallNd<N-1>(value,d); this->grad = RallNd<N-1>(d[0],&d[1]); } };

template <> class RallNd<1> : public Rall1d<double> { public: RallNd() {} RallNd(const Rall1d<double>& arg) : Rall1d<double,double,double>(arg) {} RallNd(double value,double d[]) { t = value; grad = d[0]; } }; to be checked.. Als je tot 3de orde een efficiente berekening kan doen, dan kan je tot een willekeurige orde alles efficient berekenen 0 1 2 3 ==> 1 2 3 4 ==> 3 4 5 6 4 5 6 7

de aangeduide berekeningen zijn niet noodzakelijk, en er is dan niets verniet berekend in de recursieve implementatie. of met 2de orde over 1ste order : kan ook efficient : 0 1 ==>1 2 2 3

Definition at line 61 of file rallNd.h.

Constructor & Destructor Documentation

◆ RallNd() [1/6]

template<int N>
RallNd< N >::RallNd ( )
inline

Definition at line 65 of file rallNd.h.

◆ RallNd() [2/6]

template<int N>
RallNd< N >::RallNd ( const Rall2d< RallNd< N-2 >, RallNd< N-2 >, double > &  arg)
inline

Definition at line 66 of file rallNd.h.

◆ RallNd() [3/6]

template<int N>
RallNd< N >::RallNd ( double  value,
double  d[] 
)
inline

Definition at line 68 of file rallNd.h.

◆ RallNd() [4/6]

template<int N>
RallNd< N >::RallNd ( )
inline

Definition at line 55 of file rallnumbertest.cpp.

◆ RallNd() [5/6]

template<int N>
RallNd< N >::RallNd ( const Rall1d< RallNd< N-1 >, RallNd< N-1 >, double > &  arg)
inline

Definition at line 56 of file rallnumbertest.cpp.

◆ RallNd() [6/6]

template<int N>
RallNd< N >::RallNd ( double  value,
double  d[] 
)
inline

Definition at line 58 of file rallnumbertest.cpp.


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


orocos_kdl
Author(s):
autogenerated on Thu Apr 13 2023 02:19:14