Define an abstract linear function. More...
#include <roboptim/core/linear-function.hh>


Public Types | |
| typedef GenericQuadraticFunction< T > | parent_t |
| typedef parent_t::size_type | size_type |
| Size type. | |
| typedef parent_t::vector_t | vector_t |
| Basic vector type. | |
| typedef parent_t::argument_t | argument_t |
| Type of a function evaluation argument. | |
| typedef parent_t::result_t | result_t |
| Type of a function evaluation result. | |
| typedef parent_t::hessian_t | hessian_t |
| Hessian type. | |
Public Member Functions | |
| GenericLinearFunction (size_type inputSize, size_type outputSize=1, std::string name=std::string()) throw () | |
| Concrete class constructor should call this constructor. | |
| virtual std::ostream & | print (std::ostream &) const throw () |
| Display the function on the specified output stream. | |
Protected Member Functions | |
| void | impl_hessian (hessian_t &hessian, const argument_t &argument, size_type functionId=0) const throw () |
| Hessian evaluation. | |
Define an abstract linear function.
Inherit from this class when implementing linear functions.
| typedef parent_t::argument_t roboptim::GenericLinearFunction< T >::argument_t |
Type of a function evaluation argument.
Reimplemented from roboptim::GenericFunction< T >.
| typedef parent_t::hessian_t roboptim::GenericLinearFunction< T >::hessian_t |
Hessian type.
Hessians are symmetric matrices.
Reimplemented from roboptim::GenericTwiceDifferentiableFunction< T >.
| typedef GenericQuadraticFunction<T> roboptim::GenericLinearFunction< T >::parent_t |
Reimplemented from roboptim::GenericQuadraticFunction< T >.
| typedef parent_t::result_t roboptim::GenericLinearFunction< T >::result_t |
Type of a function evaluation result.
Reimplemented from roboptim::GenericFunction< T >.
| typedef parent_t::size_type roboptim::GenericLinearFunction< T >::size_type |
Size type.
This type is used to represent sizes, indexes, etc.
Reimplemented from roboptim::GenericQuadraticFunction< T >.
| typedef parent_t::vector_t roboptim::GenericLinearFunction< T >::vector_t |
Basic vector type.
This basic vector type is used each time a vector of values is required.
Reimplemented from roboptim::GenericFunction< T >.
| roboptim::GenericLinearFunction< T >::GenericLinearFunction | ( | size_type | inputSize, |
| size_type | outputSize = 1, |
||
| std::string | name = std::string () |
||
| ) | throw () |
Concrete class constructor should call this constructor.
| inputSize | function arity |
| outputSize | result size |
| name | function's name |
| void roboptim::GenericLinearFunction< T >::impl_hessian | ( | hessian_t & | hessian, |
| const argument_t & | argument, | ||
| size_type | functionId = 0 |
||
| ) | const throw () [protected, virtual] |
Hessian evaluation.
Compute the hessian, has to be implemented in concrete classes. The hessian is computed for a specific sub-function which id is passed through the functionId argument.
| hessian | hessian will be stored here |
| argument | point where the hessian will be computed |
| functionId | evaluated function id in the split representation |
Implements roboptim::GenericTwiceDifferentiableFunction< T >.
| std::ostream & roboptim::GenericLinearFunction< T >::print | ( | std::ostream & | o | ) | const throw () [virtual] |
Display the function on the specified output stream.
| o | output stream used for display |
Reimplemented from roboptim::GenericQuadraticFunction< T >.
Reimplemented in roboptim::GenericNumericLinearFunction< T >, roboptim::IdentityFunction, and roboptim::ConstantFunction.