ocra-recipes
Doxygen documentation for the ocra-recipes repository
DotProductFunction.h
Go to the documentation of this file.
1 
10 #ifndef _OCRABASE_SCALAR_PRODUCT_FUNCTION_H_
11 #define _OCRABASE_SCALAR_PRODUCT_FUNCTION_H_
12 
13 // includes
14 #include "ocra/optim/Function.h"
15 
21 namespace ocra
22 {
30  {
31  // ------------------------ structures --------------------------------------
32  public:
33  typedef Function functionType_t; //< alias on the type of the mother class. Needed to duplicate the function tree.
34  protected:
35  private:
36 
37  // ------------------------ public static members ---------------------------
38  public:
39 
40  // ------------------------ constructors ------------------------------------
41  private:
44  protected:
45  public:
47  DotProductFunction(Function* f, const Vector& v);
48 
49  // ------------------------ public interface --------------------------------
50  public:
51  void changeV(const Vector& v);
52 
53  // ------------------------ public methods ----------------------------------
54  public:
55 
56  // ------------------------ public static methods ---------------------------
57  public:
58 
59  // ------------------------ protected methods -------------------------------
60  protected:
61  virtual void computeValue(void) const;
62  virtual void computeGradient(void) const;
63  virtual void computeHessian(void) const;
64  virtual void computeJdot(void) const;
65  virtual void computeJdotXdot(void) const;
66 
67  virtual void doUpdateSize(void);
68 
69  // ------------------------ protected static methods ------------------------
70  protected:
71 
72  // ------------------------ private methods ---------------------------------
73  private:
74  void initHessian();
75 
76  // ------------------------ private static methods --------------------------
77  private:
78 
79  // ------------------------ protected members -------------------------------
80  protected:
84  Vector _v;
85  mutable Vector _tmp;
86 
87  // ------------------------ protected static members ------------------------
88  protected:
89 
90  // ------------------------ private members ---------------------------------
91  private:
92 
93  // ------------------------ private static members --------------------------
94  private:
95 
96  // ------------------------ friendship declarations -------------------------
97  };
98 }
99 
100 #endif //_OCRABASE_SCALAR_PRODUCT_FUNCTION_H_
101 
102 // cmake:sourcegroup=toBeUpdated
103 
virtual void computeJdot(void) const
void changeV(const Vector &v)
virtual void computeHessian(void) const
Optimization-based Robot Controller namespace. a library of classes to write and solve optimization p...
Function class.
Definition: Function.h:77
DotProductFunction class.
virtual void computeGradient(void) const
virtual void computeValue(void) const
virtual void doUpdateSize(void)
Declaration file of the Function class.
virtual void computeJdotXdot(void) const