BALL::SteepestDescentMinimizer Class Reference
[Energy Minimizer]

#include <BALL/MOLMEC/MINIMIZATION/steepestDescent.h>

Inheritance diagram for BALL::SteepestDescentMinimizer:
BALL::EnergyMinimizer

List of all members.


Public Member Functions

Constructors and Destructors
 SteepestDescentMinimizer ()
 SteepestDescentMinimizer (ForceField &force_field)
 SteepestDescentMinimizer (ForceField &force_field, SnapShotManager *ssm)
 SteepestDescentMinimizer (ForceField &force_field, const Options &options)
 SteepestDescentMinimizer (ForceField &force_field, SnapShotManager *ssm, const Options &options)
 SteepestDescentMinimizer (const SteepestDescentMinimizer &minimizer)
virtual ~SteepestDescentMinimizer ()
Assignments
const SteepestDescentMinimizeroperator= (const SteepestDescentMinimizer &minimizer)
Setup methods
virtual bool specificSetup ()
Accessors
virtual bool minimize (Size steps=0, bool resume=false)
virtual double findStep ()
virtual void updateDirection ()

Protected Attributes

Protected Attributes
LineSearch line_search_

Detailed Description

A minimizer for geometry optimization based on steepest descent steps.


Constructor & Destructor Documentation

BALL::SteepestDescentMinimizer::SteepestDescentMinimizer (  ) 

Default constructor.

BALL::SteepestDescentMinimizer::SteepestDescentMinimizer ( ForceField force_field  ) 

Constructor.

BALL::SteepestDescentMinimizer::SteepestDescentMinimizer ( ForceField force_field,
SnapShotManager ssm 
)

Constructor.

BALL::SteepestDescentMinimizer::SteepestDescentMinimizer ( ForceField force_field,
const Options options 
)

Constructor.

BALL::SteepestDescentMinimizer::SteepestDescentMinimizer ( ForceField force_field,
SnapShotManager ssm,
const Options options 
)

Constructor.

BALL::SteepestDescentMinimizer::SteepestDescentMinimizer ( const SteepestDescentMinimizer minimizer  ) 

Copy constructor

virtual BALL::SteepestDescentMinimizer::~SteepestDescentMinimizer (  )  [virtual]

Destructor.


Member Function Documentation

virtual double BALL::SteepestDescentMinimizer::findStep (  )  [virtual]

Find the next step. First, this method calls updateDirection. Second, it performs a line search along the calculated direction afterwards.

Returns:
double $\geq 0$ if the line search found an acceptable solution, otherwise -1.
See also:
EnergyMinimizer::findStep

Reimplemented from BALL::EnergyMinimizer.

virtual bool BALL::SteepestDescentMinimizer::minimize ( Size  steps = 0,
bool  resume = false 
) [virtual]

Minimize the energy of the system using steepest descent steps. This method executes at most iterations minimization steps. If the number of iterations is not given, the number specified in the options is taken.

Parameters:
iterations the maximum number of iterations
resume true to resume a previous run
See also:
EnergyMinimizer::minimize

Reimplemented from BALL::EnergyMinimizer.

const SteepestDescentMinimizer& BALL::SteepestDescentMinimizer::operator= ( const SteepestDescentMinimizer minimizer  ) 

Assignment operator

virtual bool BALL::SteepestDescentMinimizer::specificSetup (  )  [virtual]

Specific setup

Reimplemented from BALL::EnergyMinimizer.

virtual void BALL::SteepestDescentMinimizer::updateDirection (  )  [virtual]

Update the search direction. This algorithm uses only steepest descent searches. Therefore, updateDirection only assigns direction to the last gradient computed.

Reimplemented from BALL::EnergyMinimizer.


Member Data Documentation

The line search minimizer. This member is used to perform the line search in findStep