Class AlchemicalOptions

java.lang.Object
ffx.potential.cli.AlchemicalOptions

public class AlchemicalOptions extends Object
Represents command line options for scripts that utilize alchemistry on at least one topology.
Since:
1.0
Author:
Michael J. Schnieders, Jacob M. Litman
  • Field Details

    • logger

      public static final Logger logger
      The logger for this class.
    • rangeRegEx

      public static final Pattern rangeRegEx
      A regular expression used to parse ranges of atoms.
  • Constructor Details

    • AlchemicalOptions

      public AlchemicalOptions()
  • Method Details

    • setUnchargedAtoms

      public static void setUnchargedAtoms(MolecularAssembly assembly, String unchargedAtoms)
      Sets the uncharged atoms for a MolecularAssembly.
      Parameters:
      assembly - Assembly to which the atoms belong.
      unchargedAtoms - Uncharged atoms selection string.
    • setAlchemicalAtoms

      public static void setAlchemicalAtoms(MolecularAssembly assembly, String alchemicalAtoms)
      Sets the alchemical atoms for a MolecularAssembly.
      Parameters:
      assembly - Assembly to which the atoms belong.
      alchemicalAtoms - Alchemical atoms selection string.
    • getAlchemicalAtoms

      public String getAlchemicalAtoms()
      --ac or --alchemicalAtoms Specify alchemical atoms [ALL, NONE, Range(s): 1-3,6-N]."
      Returns:
      Returns alchemical atoms.
    • getUnchargedAtoms

      public String getUnchargedAtoms()
      --uc or --unchargedAtoms Specify atoms without electrostatics [ALL, NONE, Range(s): 1-3,6-N].
      Returns:
      Returns atoms without electrostatics.
    • getInitialLambda

      public double getInitialLambda()
      -l or --lambda sets the initial lambda value.
      Returns:
      Returns the initial value of lambda.
    • getInitialLambda

      public double getInitialLambda(boolean quiet)
      Gets the initial value of lambda.
      Parameters:
      quiet - No logging if quiet.
      Returns:
      Initial lambda.
    • getInitialLambda

      public double getInitialLambda(int size, int rank)
      Gets the initial value of lambda.
      Parameters:
      size - The number of processes.
      rank - THe rank of this process.
      Returns:
      Initial lambda.
    • getInitialLambda

      public double getInitialLambda(int size, int rank, boolean quiet)
      Gets the initial value of lambda.
      Parameters:
      size - The number of processes.
      rank - The rank of this process.
      quiet - No logging if quiet.
      Returns:
      Initial lambda.
    • hasSoftcore

      public boolean hasSoftcore()
      If any softcore Atoms have been detected.
      Returns:
      Presence of softcore Atoms.
    • setFirstSystemAlchemistry

      public void setFirstSystemAlchemistry(MolecularAssembly topology)
      Set the alchemical atoms for this molecularAssembly.
      Parameters:
      topology - a MolecularAssembly object.
    • openFile

      public MolecularAssembly openFile(PotentialsFunctions potentialFunctions, TopologyOptions topologyOptions, int threadsPer, String toOpen, int topNum)
      Opens a File to a MolecularAssembly for alchemistry.
      Parameters:
      potentialFunctions - A utility object for opening Files into MolecularAssemblies.
      topologyOptions - TopologyOptions in case a dual-topology or greater is to be used.
      threadsPer - Number of threads to be used for this MolecularAssembly.
      toOpen - The name of the File to be opened.
      topNum - The index of this topology.
      Returns:
      The processed MolecularAssembly.
    • processFile

      public MolecularAssembly processFile(@Nullable TopologyOptions topologyOptions, MolecularAssembly molecularAssembly, int topNum)
      Performs processing on a MolecularAssembly for alchemistry.
      Parameters:
      topologyOptions - TopologyOptions in case a dual-topology or greater is to be used.
      molecularAssembly - The MolecularAssembly to be processed.
      topNum - The index of this topology, 0-indexed.
      Returns:
      The processed MolecularAssembly.
    • setFirstSystemUnchargedAtoms

      public void setFirstSystemUnchargedAtoms(MolecularAssembly topology)
      Set uncharged atoms for this molecularAssembly.
      Parameters:
      topology - a MolecularAssembly object.