DART  6.10.1
SnoptSolver.hpp
Go to the documentation of this file.
1 /*
2  RTQL8, Copyright (c) 2011 Georgia Tech Graphics Lab
3  All rights reserved.
4 
5  Author Sehoon Ha
6  Date 06/19/2011
7 */
8 
9 #ifndef DART_OPTIMIZER_SNOPT_SNOPT_H
10 #define DART_OPTIMIZER_SNOPT_SNOPT_H
11 
12 #include <vector>
13 #include <Eigen/Dense>
14 #include "dart/optimizer/snopt/SnoptInterface.h"
15 #include "dart/optimizer/Solver.h"
16 
17 namespace dart {
18 namespace optimizer {
19 
20 class Problem;
21 class ConstraintSet;
22 class ObjectiveSet;
23 class Variable;
24 
25 namespace snopt {
26 
27 class SnoptSolver : public Solver {
28 public:
29  SnoptSolver(Problem *problem);
30  virtual ~SnoptSolver();
31 
32  virtual bool solve();
33 
34  virtual void resetSolver();
35  static int iterUpdate(long mask, int compute_gradients, double *coefs, void *update_data);
36 private:
38  /* std::vector<Dofs> mVariables; */
39  /* ConstrBox* mConstrBox; */
40  /* ObjBox* mObjBox; */
41 
42  ConstraintSet* conBox();
43  ObjectiveSet* objBox();
44 
45  bool mNoDisplay;
47 
49  int mOptCount;
50  bool mPrint;
51  int mUnit;
52 
53 
54 };
55 
56 } // namespace snopt
57 } // namespace optimizer
58 } // namespace dart
59 
60 #endif // #ifndef DART_OPTIMIZER_SNOPT_SNOPT_H
61 
class Problem
Definition: Problem.hpp:48
Abstract class that provides a common interface for different Solvers.
Definition: Solver.hpp:53
Definition: SnoptInterface.hpp:24
Definition: SnoptSolver.hpp:27
ObjectiveSet * objBox()
Definition: SnoptSolver.cpp:184
int mTotalDofs
Definition: SnoptSolver.hpp:48
bool mPrint
Definition: SnoptSolver.hpp:50
int mOptCount
Definition: SnoptSolver.hpp:49
SnoptSolver(Problem *problem)
Definition: SnoptSolver.cpp:25
ConstraintSet * conBox()
Definition: SnoptSolver.cpp:181
virtual ~SnoptSolver()
Definition: SnoptSolver.cpp:40
bool mNoDisplay
Definition: SnoptSolver.hpp:45
int mUnit
Definition: SnoptSolver.hpp:51
virtual bool solve()
Solve optimization problem.
Definition: SnoptSolver.cpp:44
int mSolverIter
Definition: SnoptSolver.hpp:46
static int iterUpdate(long mask, int compute_gradients, double *coefs, void *update_data)
Definition: SnoptSolver.cpp:124
virtual void resetSolver()
Definition: SnoptSolver.cpp:173
SnoptInterface * mSnopt
Definition: SnoptSolver.hpp:37
Definition: BulletCollisionDetector.cpp:65