openff.toolkit.utils.toolkits.AmberToolsToolkitWrapper
- class openff.toolkit.utils.toolkits.AmberToolsToolkitWrapper[source]
AmberTools toolkit wrapper
Warning
This API is experimental and subject to change.
- __init__()[source]
Methods
__init__
()assign_fractional_bond_orders
(molecule[, ...])Update and store list of bond orders this molecule.
assign_partial_charges
(molecule[, ...])Compute partial charges with AmberTools using antechamber/sqm, and assign the new values to the partial_charges attribute.
compute_partial_charges_am1bcc
(molecule[, ...])Compute partial charges with AmberTools using antechamber/sqm.
from_file
(file_path, file_format[, ...])Return an openff.toolkit.topology.Molecule from a file using this toolkit.
from_file_obj
(file_obj, file_format[, ...])Return an openff.toolkit.topology.Molecule from a file-like object (an object with a ".read()" method using this toolkit.
Check whether the AmberTools toolkit is installed
requires_toolkit
()Attributes
List of file formats that this toolkit can read.
List of file formats that this toolkit can write.
Instructions on how to install the wrapped toolkit.
Return the name of the toolkit wrapped by this class as a str
Return the version of the wrapped toolkit as a str
- static is_available()[source]
Check whether the AmberTools toolkit is installed
- Returns
is_installed (bool) – True if AmberTools is installed, False otherwise.
- assign_partial_charges(molecule, partial_charge_method=None, use_conformers=None, strict_n_conformers=False, normalize_partial_charges=True, _cls=None)[source]
Compute partial charges with AmberTools using antechamber/sqm, and assign the new values to the partial_charges attribute.
Warning
This API experimental and subject to change.
- Parameters
molecule (openff.toolkit.topology.Molecule) – Molecule for which partial charges are to be computed
partial_charge_method (str, optional, default=None) – The charge model to use. One of [‘gasteiger’, ‘am1bcc’, ‘am1-mulliken’]. If None, ‘am1-mulliken’ will be used.
use_conformers (iterable of openmm.unit.Quantity-wrapped numpy arrays, each) – with shape (n_atoms, 3) and dimension of distance. Optional, default = None List of (n_atoms x 3) openmm.unit.Quantities to use for partial charge calculation. If None, an appropriate number of conformers will be generated.
strict_n_conformers (bool, default=False) – Whether to raise an exception if an invalid number of conformers is provided for the given charge method. If this is False and an invalid number of conformers is found, a warning will be raised.
normalize_partial_charges (bool, default=True) – Whether to offset partial charges so that they sum to the total formal charge of the molecule. This is used to prevent accumulation of rounding errors when the partial charge generation method has low precision.
_cls (class) – Molecule constructor
- Raises
ChargeMethodUnavailableError if the requested charge method can not be handled by this toolkit –
ChargeCalculationError if the charge method is supported by this toolkit, but fails –
- compute_partial_charges_am1bcc(molecule, use_conformers=None, strict_n_conformers=False)[source]
Compute partial charges with AmberTools using antechamber/sqm. This will calculate AM1-BCC charges on the first conformer only.
Warning
This API is experimental and subject to change.
- Parameters
molecule (Molecule) – Molecule for which partial charges are to be computed
use_conformers (iterable of openmm.unit.Quantity-wrapped numpy arrays,) – each with shape (n_atoms, 3) and dimension of distance. Optional, default = None Coordinates to use for partial charge calculation. If None, an appropriate number of conformers will be generated.
strict_n_conformers (bool, default=False) – Whether to raise an exception if an invalid number of conformers is provided. If this is False and an invalid number of conformers is found, a warning will be raised instead of an Exception.
- Returns
charges (numpy.array of shape (natoms) of type float) – The partial charges
- assign_fractional_bond_orders(molecule, bond_order_model=None, use_conformers=None, _cls=None)[source]
Update and store list of bond orders this molecule. Bond orders are stored on each bond, in the bond.fractional_bond_order attribute.
Warning
This API is experimental and subject to change.
- Parameters
molecule (openff.toolkit.topology.molecule Molecule) – The molecule to assign wiberg bond orders to
bond_order_model (str, optional, default=None) – The charge model to use. Only allowed value is ‘am1-wiberg’. If None, ‘am1-wiberg’ will be used.
use_conformers (iterable of openmm.unit.Quantity(np.array) with shape (n_atoms, 3)) – and dimension of distance, optional, default=None The conformers to use for fractional bond order calculation. If None, an appropriate number of conformers will be generated by an available ToolkitWrapper.
_cls (class) – Molecule constructor
- from_file(file_path, file_format, allow_undefined_stereo=False)
Return an openff.toolkit.topology.Molecule from a file using this toolkit.
- Parameters
file_path (str) – The file to read the molecule from
file_format (str) – Format specifier, usually file suffix (eg. ‘MOL2’, ‘SMI’) Note that not all toolkits support all formats. Check ToolkitWrapper.toolkit_file_read_formats for details.
allow_undefined_stereo (bool, default=False) – If false, raises an exception if any molecules contain undefined stereochemistry.
_cls (class) – Molecule constructor
- Returns
molecules (Molecule or list of Molecules) – a list of Molecule objects is returned.
- from_file_obj(file_obj, file_format, allow_undefined_stereo=False, _cls=None)
Return an openff.toolkit.topology.Molecule from a file-like object (an object with a “.read()” method using this toolkit.
- Parameters
file_obj (file-like object) – The file-like object to read the molecule from
file_format (str) – Format specifier, usually file suffix (eg. ‘MOL2’, ‘SMI’) Note that not all toolkits support all formats. Check ToolkitWrapper.toolkit_file_read_formats for details.
allow_undefined_stereo (bool, default=False) – If false, raises an exception if any molecules contain undefined stereochemistry. If false, the function skips loading the molecule.
_cls (class) – Molecule constructor
- Returns
molecules (Molecule or list of Molecules) – a list of Molecule objects is returned.