STORMM Source Documentation
Loading...
Searching...
No Matches
stormm::namelist::MinimizeControls Class Reference

Object to encapsulate energy minimization control information. Like other namelist encapsualtors, this object can take input file data as part of its construction, or by a series of setters. Validation of each piece of data is handled as it appears either in the contructor or via setters. Getter functions dispense the internal information to any application using STORMM libraries. More...

#include <nml_minimize.h>

Public Member Functions

int getTotalCycles () const
 Get the total number of minimization cycles.
 
int getSteepestDescentCycles () const
 Get the number of steepest descent cycles.
 
int getClashDampingCycles () const
 Get the number of clash-relaxation cycles.
 
int getDiagnosticPrintFrequency () const
 Get the diagnostic output printing frequency, akin to the major contribution to pmemd and sander mdout files.
 
bool getCheckpointProduction () const
 Get the directive on whether to produce a checkpoint file for the final state of each energy minimization run.
 
double getElectrostaticCutoff () const
 Get the electrostatic cutoff.
 
double getLennardJonesCutoff () const
 Get the Lennard-Jones cutoff.
 
VdwSumMethod getVdwSummation () const
 Get the manner in which the van-der Waals (Lennard-Jones) function vanishes.
 
double getInitialStep () const
 Get the initial step length.
 
double getConvergenceTarget () const
 Get the convergence criterion.
 
double getAbsoluteClashDistance () const
 Get the absolute clash distance, below which two particles will be deemed colliding.
 
double getVdwClashRatio () const
 Get the minimum ratio of inter-particle distance to the pairwise van-der Waals sigma parameter, below which two particles will be deemed colliding.
 
const NamelistEmulatorgetTranscript () const
 Get the original namelist emulator object as a transcript of the user input.
 
void setTotalCycles (int cycles_in)
 Set the total number of minimization cycles.
 
void setSteepestDescentCycles (int cycles_in)
 Set the number of steepest descent cycles.
 
void setClashDampingCycles (int cycles_in)
 Set the number of clash damping cycles.
 
void setAbsoluteClashDistance (double clash_minimum_distance_in)
 Set the minimum inter-particle separation defining an electrostatic clash.
 
void setVdwClashRatio (double clash_vdw_ratio_in)
 Set the minimum ratio of inter-particle separation to Lennard-Jones sigma defining a van-der Waals clash.
 
void setDiagnosticPrintFrequency (int frequency_in)
 Set the diagnostic printing frequency.
 
void setCheckpointProduction (bool produce_in)
 Set the checkpoint production flag.
 
void setElectrostaticCutoff (double cutoff_in)
 Set the electrostatic cutoff.
 
void setLennardJonesCutoff (double cutoff_in)
 Set the Lennard-Jones cutoff.
 
void setInitialStep (double step_size_in)
 Set the initial step length.
 
void setConvergenceTarget (double target_in)
 Set the convergence criterion, the target for the root mean squared value of all gradients obtained after the minimization, in kcal/mol.
 
 MinimizeControls (ExceptionResponse policy_in=ExceptionResponse::DIE, WrapTextSearch wrap=WrapTextSearch::NO)
 The constructor can prepare an object with default settings or read the corresponding namelist to accept user input.
 
 MinimizeControls (const TextFile &tf, int *start_line, bool *found_nml, ExceptionResponse policy_in=ExceptionResponse::DIE, WrapTextSearch wrap=WrapTextSearch::NO)
 
 MinimizeControls (const MinimizeControls &original)=default
 As with other control objects, copy and move constructors, plus copy and move assignment operators, can all take their default forms.
 
 MinimizeControls (MinimizeControls &&original)=default
 
MinimizeControlsoperator= (const MinimizeControls &original)=default
 
MinimizeControlsoperator= (MinimizeControls &&original)=default
 
void setVdwSummation (const std::string &vdw_method_in)
 Set the strategy for evaluating the tails of van-der Waals (Lennard-Jones) interactions.
 
void setVdwSummation (const VdwSumMethod vdw_method_in)
 

Detailed Description

Object to encapsulate energy minimization control information. Like other namelist encapsualtors, this object can take input file data as part of its construction, or by a series of setters. Validation of each piece of data is handled as it appears either in the contructor or via setters. Getter functions dispense the internal information to any application using STORMM libraries.

Constructor & Destructor Documentation

◆ MinimizeControls()

stormm::namelist::MinimizeControls::MinimizeControls ( ExceptionResponse policy_in = ExceptionResponse::DIE,
WrapTextSearch wrap = WrapTextSearch::NO )

The constructor can prepare an object with default settings or read the corresponding namelist to accept user input.

Parameters
tfInput file translated into RAM
start_lineLine of the input file to begin searching for the &minimize namelist
found_nmlIndicator of whether namelist input was found
policy_inRequested error handling behavior
wrapIndicate that the search for a &minimize namelist should carry on from the beginning of an input file if no such namelist is found starting from the original starting point

Member Function Documentation

◆ setAbsoluteClashDistance()

void stormm::namelist::MinimizeControls::setAbsoluteClashDistance ( double clash_minimum_distance_in)

Set the minimum inter-particle separation defining an electrostatic clash.

Parameters
clash_minimum_distance_in

◆ setCheckpointProduction()

void stormm::namelist::MinimizeControls::setCheckpointProduction ( bool produce_in)

Set the checkpoint production flag.

Parameters
produce_inWhether to produce a checkpoint at the end of the run

◆ setClashDampingCycles()

void stormm::namelist::MinimizeControls::setClashDampingCycles ( int cycles_in)

Set the number of clash damping cycles.

Parameters
cycles_inThe requested number of clash damping cycles

◆ setConvergenceTarget()

void stormm::namelist::MinimizeControls::setConvergenceTarget ( double target_in)

Set the convergence criterion, the target for the root mean squared value of all gradients obtained after the minimization, in kcal/mol.

Parameters
target_inThe requested convergence target

◆ setDiagnosticPrintFrequency()

void stormm::namelist::MinimizeControls::setDiagnosticPrintFrequency ( int frequency_in)

Set the diagnostic printing frequency.

Parameters
frequency_inThe chosen printing interval

◆ setInitialStep()

void stormm::namelist::MinimizeControls::setInitialStep ( double step_size_in)

Set the initial step length.

Parameters
step_size_inThe requested initial step length

◆ setSteepestDescentCycles()

void stormm::namelist::MinimizeControls::setSteepestDescentCycles ( int cycles_in)

Set the number of steepest descent cycles.

Parameters
cycles_inThe requested number of steepest descent cycles

◆ setTotalCycles()

void stormm::namelist::MinimizeControls::setTotalCycles ( int cycles_in)

Set the total number of minimization cycles.

Parameters
cycles_inThe requested number of minimization cycles

◆ setVdwClashRatio()

void stormm::namelist::MinimizeControls::setVdwClashRatio ( double clash_vdw_ratio_in)

Set the minimum ratio of inter-particle separation to Lennard-Jones sigma defining a van-der Waals clash.

Parameters
clash_vdw_ratio_inThe ratio to apply

◆ setVdwSummation()

void stormm::namelist::MinimizeControls::setVdwSummation ( const std::string & vdw_method_in)

Set the strategy for evaluating the tails of van-der Waals (Lennard-Jones) interactions.

Overloaded:

  • Provide a keyword that indicates some value of the enumerator
  • Provide a value of the enumerator itself
Parameters
vdw_method_inThe input determining how van-der Waals interactions will vanish

The documentation for this class was generated from the following files: