Package ffx.algorithms.optimize
Class MinimizeOpenMM
java.lang.Object
ffx.algorithms.optimize.Minimize
ffx.algorithms.optimize.MinimizeOpenMM
- All Implemented Interfaces:
Terminatable
,OptimizationListener
OpenMM accelerated L-BFGS minimization.
- Since:
- 1.0
- Author:
- Michael J. Schnieders
-
Nested Class Summary
Nested classes/interfaces inherited from class ffx.algorithms.optimize.Minimize
Minimize.MinimizationEngine
-
Field Summary
Fields inherited from class ffx.algorithms.optimize.Minimize
algorithmListener, DEFAULT_LBFGS_VECTORS, done, energy, grad, molecularAssembly, n, nSteps, potential, scaling, status, terminate, time, x
-
Constructor Summary
ConstructorDescriptionMinimizeOpenMM
(MolecularAssembly molecularAssembly) MinimizeOpenMM
(MolecularAssembly molecularAssembly, OpenMMEnergy openMMEnergy) MinimizeOpenMM
(MolecularAssembly molecularAssembly, OpenMMEnergy openMMEnergy, AlgorithmListener algorithmListener) -
Method Summary
Modifier and TypeMethodDescriptionminimize
(double eps, int maxIterations) minimizeminimize
(int m, double eps, int maxIterations) Note the OpenMM L-BFGS minimizer does not accept the parameter "m" for the number of previous steps used to estimate the Hessian.boolean
optimizationUpdate
(int iteration, int nBFGS, int functionEvaluations, double rmsGradient, double rmsCoordinateChange, double energy, double energyChange, double angle, LineSearch.LineSearchResult lineSearchResult) MinimizeOpenMM does not support the OptimizationListener interface.Methods inherited from class ffx.algorithms.optimize.Minimize
defaultEngine, getEnergy, getIterations, getRMSGradient, getStatus, minimize, minimize, minimizeFactory, terminate
-
Constructor Details
-
MinimizeOpenMM
-
MinimizeOpenMM
-
MinimizeOpenMM
public MinimizeOpenMM(MolecularAssembly molecularAssembly, OpenMMEnergy openMMEnergy, AlgorithmListener algorithmListener)
-
-
Method Details
-
minimize
Note the OpenMM L-BFGS minimizer does not accept the parameter "m" for the number of previous steps used to estimate the Hessian. -
minimize
minimize -
optimizationUpdate
public boolean optimizationUpdate(int iteration, int nBFGS, int functionEvaluations, double rmsGradient, double rmsCoordinateChange, double energy, double energyChange, double angle, LineSearch.LineSearchResult lineSearchResult) MinimizeOpenMM does not support the OptimizationListener interface.- Specified by:
optimizationUpdate
in interfaceOptimizationListener
- Overrides:
optimizationUpdate
in classMinimize
- Parameters:
iteration
- Number of iterations.nBFGS
- Number of L-BFGS correction vectors.functionEvaluations
- Number of function evaluations.rmsGradient
- RMS gradient at current solution.rmsCoordinateChange
- RMS coordinate change at current solution.energy
- Function value at current solution.energyChange
- Change in the function value compared to the previous solution.angle
- Current angle between gradient and search direction.lineSearchResult
- Result of the line search (null at iteration == 0).- Returns:
- A return value of false will terminate the optimization.
- Since:
- 1.0
-