roboptim Namespace Reference

Meta-functions, functions and solvers related classes. More...

Namespaces

namespace  finiteDifferenceGradientPolicies
 Contains finite difference gradients policies.
namespace  visualization
 Graphic visualization.

Classes

class  ConstantFunction
 Constant function. More...
class  DerivableFunction
 Define an abstract derivable function ( $C^1$). More...
class  DerivableParametrizedFunction
 Parametrized function with parameter derivative available. More...
class  BadGradient
 Exception thrown when a gradient check fail. More...
class  FiniteDifferenceGradient
 Compute automatically a gradient with finite differences. More...
class  Function
 Define an abstract mathematical function ( $C^0$). More...
class  NoSolution
 Tag a result if no solution has been found. More...
class  GenericSolver
 Abstract interface satisfied by all solvers. More...
class  IdentityFunction
 Identity function. More...
class  LinearFunction
 Define an abstract linear function. More...
class  NTimesDerivableFunction< 2 >
 Explicit specialization for the stop case of NTimesDerivable class. More...
class  NTimesDerivableFunction
 Define a $\mathbb{R} \rightarrow \mathbb{R}^m$ function, derivable n times ( $n \geq 2$). More...
class  NumericLinearFunction
 Build a linear function from a vector and a matrix. More...
class  NumericQuadraticFunction
 Build a quadratic function from a matrix and a vector. More...
class  ParametrizedFunction
 Define an abstract parametrized mathematical function ( $C^0$). More...
class  DummySolver
 Dummy solver which always fails. More...
class  Problem
 Optimization problem. More...
class  QuadraticFunction
 Define an abstract quadratic function. More...
class  ResultWithWarnings
 Represents the solution of an optimization problem when errors occurred during the solving process. More...
class  Result
 Represents the solution of an optimization problem. More...
class  SolverError
 Base exception class for solving errors. All other exceptions classes concerning the optimization process should inherits this class. More...
class  SolverFactory
 Define a solver factory that instanciate the plug-ins. More...
class  SolverWarning
 Exception used for non-critical errors during optimization. More...
class  Solver
 Solver for a specific problem class. More...
class  TwiceDerivableFunction
 Define an abstract function which is derivable twice ( $C^2$). More...

Functions

ROBOPTIM_DLLAPI std::ostream & operator<< (std::ostream &o, const BadGradient &f)
 Override operator<< to handle exception display.
ROBOPTIM_DLLAPI bool checkGradient (const DerivableFunction &function, int functionId, const Function::vector_t &x, Function::value_type threshold=finiteDifferenceThreshold) throw ()
 Check if a gradient is valid.
ROBOPTIM_DLLAPI void checkGradientAndThrow (const DerivableFunction &function, int functionId, const Function::vector_t &x, Function::value_type threshold=finiteDifferenceThreshold) throw (BadGradient)
ROBOPTIM_DLLAPI std::ostream & operator<< (std::ostream &o, const Function &f)
 Override operator<< to handle function display.
ROBOPTIM_DLLAPI std::ostream & operator<< (std::ostream &o, const GenericSolver &gs)
 Override operator<< to handle solver display.
ROBOPTIM_DLLAPI std::ostream & operator<< (std::ostream &o, const NoSolution &ns)
 Override operator<< to display ``no solution'' objects.
ROBOPTIM_DLLAPI long int & indent (std::ostream &o)
 The current indentation level for o.
ROBOPTIM_DLLAPI std::ostream & incindent (std::ostream &o)
 Increment the indentation.
ROBOPTIM_DLLAPI std::ostream & decindent (std::ostream &o)
 Decrement the indentation.
ROBOPTIM_DLLAPI std::ostream & resetindent (std::ostream &o)
 Reset the indentation.
ROBOPTIM_DLLAPI std::ostream & iendl (std::ostream &o)
 Print an end of line, then set the indentation.
ROBOPTIM_DLLAPI std::ostream & incendl (std::ostream &o)
 Increment the indentation, print an end of line, and set the indentation.
ROBOPTIM_DLLAPI std::ostream & decendl (std::ostream &o)
 Decrement the indentation, print an end of line, and set the indentation.
template<typename F >
std::ostream & operator<< (std::ostream &o, const ParametrizedFunction< F > &f)
 Override operator<< to handle function display.
template<typename F , typename CLIST >
std::ostream & operator<< (std::ostream &o, const Problem< F, CLIST > &pb)
 Override operator<< to handle problem display.
ROBOPTIM_DLLAPI std::ostream & operator<< (std::ostream &o, const Result &r)
 Override operator<< to handle result display.
ROBOPTIM_DLLAPI std::ostream & operator<< (std::ostream &o, const SolverError &e)
 Override operator<< to handle error display.
template<typename T >
std::ostream & operator<< (std::ostream &, const std::vector< T > &)
 Display a vector.
template<typename T1 , typename T2 >
std::ostream & operator<< (std::ostream &, const std::pair< T1, T2 > &)
 Display a pair.

Variables

static const double finiteDifferenceThreshold = 1e-4
 Default threshold for checkGradient.
static const double finiteDifferenceEpsilon = 1e-8
 Default epsilon for finite difference class.

Detailed Description

Meta-functions, functions and solvers related classes.


Function Documentation

std::ostream & roboptim::decendl ( std::ostream &  o)

Decrement the indentation, print an end of line, and set the indentation.

References decindent(), and iendl().

std::ostream & roboptim::incendl ( std::ostream &  o)

Increment the indentation, print an end of line, and set the indentation.

References iendl(), and incindent().

Referenced by roboptim::Problem< F, CLIST >::print().

long int & roboptim::indent ( std::ostream &  o)
inline

The current indentation level for o.

Referenced by decindent(), iendl(), incindent(), and resetindent().

template<typename T >
std::ostream & roboptim::operator<< ( std::ostream &  o,
const std::vector< T > &  vect 
)

Display a vector.

template<typename T1 , typename T2 >
std::ostream & roboptim::operator<< ( std::ostream &  o,
const std::pair< T1, T2 > &  p 
)

Display a pair.

std::ostream & roboptim::operator<< ( std::ostream &  o,
const SolverError &  e 
)

Override operator<< to handle error display.

Parameters:
ooutput stream used for display
eerror to be displayed
Returns:
output stream

References roboptim::SolverError::print().

std::ostream & roboptim::operator<< ( std::ostream &  o,
const Result &  r 
)

Override operator<< to handle result display.

Parameters:
ooutput stream used for display
rresult to be displayed
Returns:
output stream

References roboptim::Result::print().

std::ostream & roboptim::operator<< ( std::ostream &  o,
const BadGradient &  f 
)

Override operator<< to handle exception display.

Parameters:
ooutput stream used for display
ffunction to be displayed
Returns:
output stream

References roboptim::BadGradient::print().

template<typename F >
std::ostream & roboptim::operator<< ( std::ostream &  o,
const ParametrizedFunction< F > &  f 
)

Override operator<< to handle function display.

Parameters:
ooutput stream used for display
ffunction to be displayed
Returns:
output stream
std::ostream & roboptim::operator<< ( std::ostream &  o,
const GenericSolver &  gs 
)

Override operator<< to handle solver display.

Parameters:
ooutput stream used for display
gssolver to be displayed
Returns:
output stream

References roboptim::GenericSolver::print().

std::ostream & roboptim::operator<< ( std::ostream &  o,
const NoSolution &  ns 
)

Override operator<< to display ``no solution'' objects.

Parameters:
ooutput stream used for display
nsNoSolution object, ignored
Returns:
output stream
template<typename F , typename CLIST >
std::ostream & roboptim::operator<< ( std::ostream &  o,
const Problem< F, CLIST > &  pb 
)

Override operator<< to handle problem display.

Parameters:
ooutput stream used for display
pbproblem to be displayed
Returns:
output stream
std::ostream & roboptim::operator<< ( std::ostream &  o,
const Function &  f 
)

Override operator<< to handle function display.

Parameters:
ooutput stream used for display
ffunction to be displayed
Returns:
output stream

References roboptim::Function::print().

std::ostream & roboptim::resetindent ( std::ostream &  o)

Reset the indentation.

References indent().


Variable Documentation

const double roboptim::finiteDifferenceEpsilon = 1e-8
static

Default epsilon for finite difference class.

const double roboptim::finiteDifferenceThreshold = 1e-4
static

Default threshold for checkGradient.