hpp::manipulation::steeringMethod::EdgeFunction Class Reference

Compute the difference between the value of the function in two points. More...

Inheritance diagram for hpp::manipulation::steeringMethod::EdgeFunction:
[legend]
Collaboration diagram for hpp::manipulation::steeringMethod::EdgeFunction:
[legend]

Public Types

typedef boost::shared_ptr< EdgeFunctionPtr_t
 

Public Member Functions

 EdgeFunction (const DifferentiableFunctionPtr_t &inner, const size_type &nArgs, const size_type &nDers, const segment_t &lInArgs, const segment_t &lInDers, const segment_t &rInArgs, const segment_t &rInDers)
 
- Public Member Functions inherited from hpp::constraints::DifferentiableFunction
virtual ~DifferentiableFunction ()
 
LiegroupElement operator() (vectorIn_t argument) const
 
void value (LiegroupElementRef result, vectorIn_t argument) const
 
void jacobian (matrixOut_t jacobian, vectorIn_t argument) const
 
const ArrayXbactiveParameters () const
 
const ArrayXbactiveDerivativeParameters () const
 
size_type inputSize () const
 
size_type inputDerivativeSize () const
 
LiegroupSpacePtr_t outputSpace () const
 
size_type outputSize () const
 
size_type outputDerivativeSize () const
 
const std::string & name () const
 
std::string context () const
 
void context (const std::string &c)
 
void finiteDifferenceForward (matrixOut_t jacobian, vectorIn_t arg, DevicePtr_t robot=DevicePtr_t(), value_type eps=std::sqrt(Eigen::NumTraits< value_type >::epsilon())) const
 
void finiteDifferenceCentral (matrixOut_t jacobian, vectorIn_t arg, DevicePtr_t robot=DevicePtr_t(), value_type eps=std::sqrt(Eigen::NumTraits< value_type >::epsilon())) const
 

Protected Member Functions

void impl_compute (pinocchio::LiegroupElementRef y, vectorIn_t arg) const
 
void impl_jacobian (matrixOut_t J, vectorIn_t arg) const
 
std::ostream & print (std::ostream &os) const
 
- Protected Member Functions inherited from hpp::constraints::DifferentiableFunction
 DifferentiableFunction (size_type sizeInput, size_type sizeInputDerivative, size_type sizeOutput, std::string name=std::string())
 
 DifferentiableFunction (size_type sizeInput, size_type sizeInputDerivative, const LiegroupSpacePtr_t &outputSpace, std::string name=std::string())
 

Protected Attributes

DifferentiableFunctionPtr_t inner_
 
const segment_t lsa_
 
const segment_t lsd_
 
const segment_t rsa_
 
const segment_t rsd_
 
LiegroupElement l_
 
LiegroupElement r_
 
- Protected Attributes inherited from hpp::constraints::DifferentiableFunction
size_type inputSize_
 
size_type inputDerivativeSize_
 
LiegroupSpacePtr_t outputSpace_
 
ArrayXb activeParameters_
 
ArrayXb activeDerivativeParameters_
 

Detailed Description

Compute the difference between the value of the function in two points.

i.e.: $ f (q_0, ... , q_n) = f_{inner} (q_{left}) - f_{inner} (q_{right}) $

Member Typedef Documentation

Constructor & Destructor Documentation

hpp::manipulation::steeringMethod::EdgeFunction::EdgeFunction ( const DifferentiableFunctionPtr_t inner,
const size_type nArgs,
const size_type nDers,
const segment_t lInArgs,
const segment_t lInDers,
const segment_t rInArgs,
const segment_t rInDers 
)
inline

Member Function Documentation

void hpp::manipulation::steeringMethod::EdgeFunction::impl_compute ( pinocchio::LiegroupElementRef  y,
vectorIn_t  arg 
) const
inlineprotectedvirtual
void hpp::manipulation::steeringMethod::EdgeFunction::impl_jacobian ( matrixOut_t  J,
vectorIn_t  arg 
) const
inlineprotectedvirtual
std::ostream& hpp::manipulation::steeringMethod::EdgeFunction::print ( std::ostream &  os) const
inlineprotectedvirtual

Member Data Documentation

DifferentiableFunctionPtr_t hpp::manipulation::steeringMethod::EdgeFunction::inner_
protected
LiegroupElement hpp::manipulation::steeringMethod::EdgeFunction::l_
mutableprotected
const segment_t hpp::manipulation::steeringMethod::EdgeFunction::lsa_
protected
const segment_t hpp::manipulation::steeringMethod::EdgeFunction::lsd_
protected
LiegroupElement hpp::manipulation::steeringMethod::EdgeFunction::r_
mutableprotected
const segment_t hpp::manipulation::steeringMethod::EdgeFunction::rsa_
protected
const segment_t hpp::manipulation::steeringMethod::EdgeFunction::rsd_
protected