Package ffx.potential.cli
Class AlchemicalOptions
java.lang.Object
ffx.potential.cli.AlchemicalOptions
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 Summary
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescription--ac or --alchemicalAtoms Specify alchemical atoms [ALL, NONE, Range(s): 1-3,6-N]."double
-l or --lambda sets the initial lambda value.double
getInitialLambda
(boolean quiet) Gets the initial value of lambda.double
getInitialLambda
(int size, int rank) Gets the initial value of lambda.double
getInitialLambda
(int size, int rank, boolean quiet) Gets the initial value of lambda.--uc or --unchargedAtoms Specify atoms without electrostatics [ALL, NONE, Range(s): 1-3,6-N].boolean
If any softcore Atoms have been detected.openFile
(PotentialsFunctions potentialFunctions, TopologyOptions topologyOptions, int threadsPer, String toOpen, int topNum) Opens a File to a MolecularAssembly for alchemistry.processFile
(TopologyOptions topologyOptions, MolecularAssembly molecularAssembly, int topNum) Performs processing on a MolecularAssembly for alchemistry.static void
setAlchemicalAtoms
(MolecularAssembly assembly, String alchemicalAtoms) Sets the alchemical atoms for a MolecularAssembly.void
setFirstSystemAlchemistry
(MolecularAssembly topology) Set the alchemical atoms for this molecularAssembly.void
Set uncharged atoms for this molecularAssembly.static void
setUnchargedAtoms
(MolecularAssembly assembly, String unchargedAtoms) Sets the uncharged atoms for a MolecularAssembly.
-
Field Details
-
logger
The logger for this class. -
rangeRegEx
A regular expression used to parse ranges of atoms.
-
-
Constructor Details
-
AlchemicalOptions
public AlchemicalOptions()
-
-
Method Details
-
setUnchargedAtoms
Sets the uncharged atoms for a MolecularAssembly.- Parameters:
assembly
- Assembly to which the atoms belong.unchargedAtoms
- Uncharged atoms selection string.
-
setAlchemicalAtoms
Sets the alchemical atoms for a MolecularAssembly.- Parameters:
assembly
- Assembly to which the atoms belong.alchemicalAtoms
- Alchemical atoms selection string.
-
getAlchemicalAtoms
--ac or --alchemicalAtoms Specify alchemical atoms [ALL, NONE, Range(s): 1-3,6-N]."- Returns:
- Returns alchemical atoms.
-
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
Set the alchemical atoms for this molecularAssembly.- Parameters:
topology
- aMolecularAssembly
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
Set uncharged atoms for this molecularAssembly.- Parameters:
topology
- aMolecularAssembly
object.
-