Class MolecularMC

java.lang.Object
ffx.algorithms.mc.BoltzmannMC
ffx.algorithms.mc.MolecularMC
All Implemented Interfaces:
MetropolisMC

public class MolecularMC extends BoltzmannMC
The MolecularMC class is a framework to take Monte Carlo steps on a molecular system. It does not implement an MC algorithm, nor does it implement move sets; it is used to evaluate a single MC step with movements defined by implementations of MCMove.
Since:
1.0
Author:
Michael J. Schnieders, Jacob M. Litman
  • Constructor Details

    • MolecularMC

      public MolecularMC(MolecularAssembly molecularAssembly)
      Constructs a DefaultMC instance with a molecular assembly and its PotentialEnergy. Fancy footwork will be required if we ever need to use multiple assemblies at once.
      Parameters:
      molecularAssembly - MolecularAssembly to operate on.
    • MolecularMC

      public MolecularMC(MolecularAssembly molecularAssembly, Potential potential)
      Constructs a DefaultMC instance with a molecular assembly and a specific Potential.
      Parameters:
      molecularAssembly - MolecularAssembly to operate on.
      potential - a Potential object.
  • Method Details

    • getMolecularAssembly

      public MolecularAssembly getMolecularAssembly()
      Returns the associated MolecularAssembly.
      Returns:
      MolecularAssembly
    • getPotential

      public Potential getPotential()
      Returns the associated Potential.
      Returns:
      Potential.
    • revertStep

      public void revertStep()
      If possible, reverts the last successful Monte Carlo step taken.
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • currentEnergy

      protected double currentEnergy()
      Must return the current energy of the system.

      Calculates the energy at the current state; identical to RotamerOptimization method of same name.

      Specified by:
      currentEnergy in class BoltzmannMC
      Returns:
      Current system energy
    • storeState

      protected void storeState()
      Store the state for reverting a move. Must be properly implemented for revertStep() to function properly; otherwise, the implementation of revertStep() should throw an OperationNotSupportedException.
      Specified by:
      storeState in class BoltzmannMC