1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
|
class EnergyMinimizer
{
%TypeHeaderCode
#include <BALL/MOLMEC/MINIMIZATION/energyMinimizer.h>
%End
public:
EnergyMinimizer();
EnergyMinimizer(ForceField&);
EnergyMinimizer(ForceField&, Options&);
bool isValid() const;
bool setup(ForceField&);
bool setup(ForceField&, SnapShotManager*);
bool setup(ForceField&, SnapShotManager*, Options&);
bool setup(ForceField&, Options&);
virtual bool specificSetup();
virtual bool isConverged() const;
virtual double findStep();
virtual void updateDirection();
virtual double updateEnergy();
virtual void updateForces();
virtual void printEnergy() const;
virtual void takeSnapShot() const;
virtual void finishIteration();
int getNumberOfIterations() const;
Gradient& getDirection();
Gradient& getGradient();
Gradient& getInitialGradient();
double getEnergy() const;
double getInitialEnergy() const;
void setNumberOfIterations(int);
int getMaxNumberOfIterations() const;
void setMaxNumberOfIterations(int);
void setMaxSameEnergy(int);
int getMaxSameEnergy() const;
void setEnergyOutputFrequency(int);
int getEnergyOutputFrequency() const;
void setEnergyDifferenceBound(float);
float getEnergyDifferenceBound() const;
void setMaxGradient(float);
float getMaxGradient() const;
void setMaximumDisplacement(float);
float getMaximumDisplacement() const;
void setSnapShotFrequency(int);
int getSnapShotFrequency() const;
ForceField* getForceField();
virtual bool minimize(int, bool);
Options options;
};
|