470 |
|
|
471 |
|
ForceSubtractionPolicy* forcePolicy; //force subtraction policy |
472 |
|
friend class ForceSubtractionPolicy; |
473 |
+ |
|
474 |
+ |
}; |
475 |
|
|
476 |
+ |
class OOPSEMinimizerBase : public RealIntegrator { |
477 |
+ |
public: |
478 |
+ |
|
479 |
+ |
OOPSEMinimizerBase ( SimInfo *theInfo, ForceFields* the_ff ); |
480 |
+ |
virtual ~OOPSEMinimizerBase(); |
481 |
+ |
|
482 |
+ |
double calcGradient(vector<double>& x, vector<double>& grad); |
483 |
+ |
void setOptCoor(vector<double>& x); |
484 |
+ |
vector<double> getOptCoor(); |
485 |
+ |
void output(vector<double>& x, int iteration); |
486 |
+ |
int getDim() {return dim;} |
487 |
+ |
protected: |
488 |
+ |
|
489 |
+ |
int dim; |
490 |
+ |
void calcDim(); |
491 |
|
}; |
492 |
|
|
493 |
+ |
//template<typename TMinimizer> class OOPSEMinimizer : public OOPSEMinimizerBase, TMinimizer{ |
494 |
+ |
// public: |
495 |
+ |
// void writeOutput(); |
496 |
+ |
//}; |
497 |
+ |
|
498 |
|
#endif |