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(const vector<double>& x, vector<double>& grad); |
483 |
+ |
void setOptCoor(vector<double>& x); |
484 |
+ |
void getOptCoor(vector<double>& x); |
485 |
+ |
void output(); |
486 |
+ |
|
487 |
|
}; |
488 |
|
|
489 |
+ |
template<typename TMinimizer> class OOPSEMinimizer : public OOPSEMinimizerBase, TMinimizer{ |
490 |
+ |
public: |
491 |
+ |
|
492 |
+ |
}; |
493 |
+ |
|
494 |
|
#endif |