OESmirnoffParams
Attention
This API is currently available in C++ and Python.
class OESmirnoffParams : public OEMolPotential::OEFFParams
The OESmirnoffParams class provides the ability to retrieve
parameters necessary to perform energy and gradient calculations using the SMIRNOFF
force field (see SMIRNOFF). By default OESmirnoffParams
loads the Smirnoff99Frost force field.
Note
The inherited methods, GetAtomTypeIndex,
GetAtomTypeName and
GetStretchBendParams,
have no meaning in the SMIRNOFF force field and SHOULD NOT be used. When these methods
are called, they return 0, none, and false, respectively.
- The following methods are publicly inherited from OEFFParams:
- The OESmirnoffParams class contains the following methods:
Constructors
OESmirnoffParams()
OESmirnoffParams(const OESmirnoffParams&)
Default and copy constructors.
operator=
OESmirnoffParams& operator=(const OESmirnoffParams&)
The assignment operator.
AddBendData
bool AddBendData(const OESmirnoffBendData& data)Adds new bending parameters based on provided OESmirnoffBendData.
AddImproperData
bool AddImproperData(const OESmirnoffImproperData& data)Adds new improper torsion parameters based on provided OESmirnoffImproperData.
AddStretchData
bool AddStretchData(const OESmirnoffStretchData& data)Adds new bond stretching parameters based on provided OESmirnoffStretchData.
AddTorsionData
bool AddTorsionData(const OESmirnoffTorsionData& data)Adds new torsion parameters based on provided OESmirnoffTorsionData.
AddVdWData
bool AddVdWData(const OESmirnoffVdWData& data)Adds new Van der Waals parameters based on provided OESmirnoffVdWData.
GetBendData
const std::vector<OESmirnoffBendData>& GetBendData() const bool GetBendData(OESmirnoffBendData& data, const OEChem::OEAtomBase*, const OEChem::OEAtomBase*, const OEChem::OEAtomBase*) constThe first overload provides all of the OESmirnoffBendData corresponding to the bending parameters in the forcefield. The second overload can be used to access parameters for the angle specified by the three atoms.
GetImproperData
const std::vector<OESmirnoffImproperData>& GetImproperData() const bool GetImproperData(OESmirnoffImproperData& data, const OEChem::OEAtomBase*, const OEChem::OEAtomBase*, const OEChem::OEAtomBase*, const OEChem::OEAtomBase*) constThe first overload provides all of the OESmirnoffImproperData corresponding to the improper torsion parameters in the forcefield. The second overload can be used to access parameters for the plane specified by the four atoms. The first atom must be the central atom of an improper torsion.
GetStretchData
const std::vector<OESmirnoffStretchData>& GetStretchData() const bool GetStretchData(OESmirnoffStretchData& data, const OEChem::OEBondBase*) constThe first overload provides all of the OESmirnoffStretchData corresponding to the bond stretching parameters in the forcefield. The second overload can be used to access parameters for the specified bond.
GetTorsionData
const std::vector<OESmirnoffTorsionData>& GetTorsionData() const bool GetTorsionData(OESmirnoffTorsionData& data, const OEChem::OEAtomBase*, const OEChem::OEAtomBase*, const OEChem::OEAtomBase*, const OEChem::OEAtomBase*) const;The first overload provides all of the OESmirnoffTorsionData corresponding to the torsion parameters in the forcefield. The second overload can be used to access parameters for the torsion specified by the four atoms.
GetVdWData
const std::vector<OESmirnoffVdWData>& GetVdWData() const; bool GetVdWData(OESmirnoffVdWData& data, const OEChem::OEAtomBase*) const;The first overload provides all of the OESmirnoffVdWData corresponding to the VdW parameters in the forcefield. The second overload can be used to access parameters for the specified atom.
Load
bool Load(const unsigned int fftype) bool Load(const std::string& xml_file_name) bool Load(const OEPlatform::oeisstream& ifs)Methods which load force field parameters. The first method is used to load available build-in parameter set, defined in the
OESmirnoffTypenamespace. The second method takes the name of the parameter file in XML format. This file might contain user custom parameters. The third method takes a stream objectoeisstreamwhich contains Smirnoff parameters. It is a convenience method which might be used in user code when the parameters XML file is converted a stream.
SetBendData
bool SetBendData(const OESmirnoffBendData& data)Sets the OESmirnoffBendData replacing existing parameters with same ID and Smarts.
SetImproperData
bool SetImproperData(const OESmirnoffImproperData& data)Sets the OESmirnoffImproperData replacing existing parameters with same ID and Smarts.
SetStretchData
bool SetStretchData(const OESmirnoffStretchData& data)Sets the OESmirnoffStretchData replacing existing parameters with same ID and Smarts.
SetTorsionData
bool SetTorsionData(const OESmirnoffTorsionData& data)Sets the OESmirnoffTorsionData replacing existing parameters with same ID and Smarts.
SetVdWData
bool SetVdWData(const OESmirnoffVdWData& data)Sets the OESmirnoffVdWData replacing existing parameters with same ID and Smarts.