OpenStructure
Functions
ost.mol.mm.antechamber Namespace Reference

Functions

def RunAntechamber (res_name, filename, format='ccif', amberhome=None, base_out_dir=None)
 
def AddFromFiles (force_field, frcmod_filename, mpdb_filename)
 
def AddFromPath (force_field, out_dir)
 
def AddIon (force_field, res_name, atom_name, atom_mass, atom_charge, lj_sigma, lj_epsilon)
 

Function Documentation

◆ AddFromFiles()

def ost.mol.mm.antechamber.AddFromFiles (   force_field,
  frcmod_filename,
  mpdb_filename 
)
Add data from a frcmod and an mpdb file to a force field.

This will add a new :class:`~ost.mol.mm.BuildingBlock` to `force_field` for
the residue defined in those files (residue name is extracted from the mpdb
file which can only contain a single residue). Charges for each atom are
extracted from the mpdb file. According to the frcmod file, an
:class:`~ost.mol.mm.Interaction` is added for each bond, angle, dihedral and
improper. Atom types with masses and non-bonded interactions are added to
`force_field` as needed.

:param force_field: A force field object to which the new parameters are
                    added.
:type force_field:  :class:`~ost.mol.mm.Forcefield`
:param frcmod_filename: Path to ``frcmod`` file as generated by ``parmchk2``.
:type frcmod_filename:  :class:`str`
:param mpdb_filename: Path to mpdb file as generated by ``antechamber``.
:type mpdb_filename:  :class:`str`
:return: The updated force field (same as `force_field`).
:rtype:  :class:`~ost.mol.mm.Forcefield`

Definition at line 403 of file antechamber.py.

◆ AddFromPath()

def ost.mol.mm.antechamber.AddFromPath (   force_field,
  out_dir 
)
Add data from a directory created with :meth:`Run` to a force field.
See :meth:`AddFromFiles` for details.

:param force_field: A force field object to which the new parameters are
                    added.
:type force_field:  :class:`~ost.mol.mm.Forcefield`
:param out_dir: Output directory as created with :meth:`Run`. Must contain
                files ``frcmod`` and ``out.mpdb``.
:type out_dir:  :class:`str`
:return: The updated force field (same as `force_field`).
:rtype:  :class:`~ost.mol.mm.Forcefield`

Definition at line 461 of file antechamber.py.

◆ AddIon()

def ost.mol.mm.antechamber.AddIon (   force_field,
  res_name,
  atom_name,
  atom_mass,
  atom_charge,
  lj_sigma,
  lj_epsilon 
)
Add a single atom as an ion to a force field.

Since Antechamber cannot deal with ions, you can add simple ones easily with
this function. This adds a :class:`~ost.mol.mm.BuildingBlock` to `force_field`
for the given residue name containing a single atom. The atom will have a type
with the same name as the atom name and the given mass, charge and non-bonded
(LJ) interaction parameters.

:param force_field: A force field object to which the ion is added.
:type force_field:  :class:`~ost.mol.mm.Forcefield`
:param res_name: Residue name for the ion to be added.
:type res_name:  :class:`str`
:param atom_name: Atom name which is also used as atom type name.
:type atom_name:  :class:`str`
:param atom_mass: Mass of the atom.
:type atom_mass:  :class:`float`
:param atom_charge: Charge of the atom.
:type atom_charge:  :class:`float`
:param lj_sigma: The sigma parameter for the non-bonded LJ interaction.
:type lj_sigma:  :class:`float` in nm
:param lj_epsilon: The sigma parameter for the non-bonded LJ interaction.
:type lj_epsilon:  :class:`float` in kJ/mol

Definition at line 478 of file antechamber.py.

◆ RunAntechamber()

def ost.mol.mm.antechamber.RunAntechamber (   res_name,
  filename,
  format = 'ccif',
  amberhome = None,
  base_out_dir = None 
)
Run Antechamber to guess force field parameters for a given residue name.

This requires an installation of AmberTools (tested with AmberTools15) with
binaries ``antechamber`` and ``parmchk2``.

This has the same restrictions as Antechamber itself and we assume the input
to be uncharged. Note that Antechamber cannot deal with metal ions and other
non-organic elements.

The results are stored in a separate folder named `res_name` within
`base_out_dir` (if given, otherwise the current working directory). The main
output files are ``frcmod`` and ``out.mpdb``. The former contains force field
parameters and masses. The latter maps atom names to atom types and defines
the partial charges. The same output could be obtained as follows:

.. code-block:: console

   $ antechamber -i <FILENAME> -fi <FORMAT> -bk '<RES_NAME>' -o out.mol2 -fo mol2 -c bcc -pf yes
   $ parmchk2 -i out.mol2 -f mol2 -o frcmod -a Y
   $ antechamber -i out.mol2 -fi mol2 -o out.mpdb -fo mpdb -pf yes

The force field parameters can be manually modified if needed. It can for
instance happen that some parameters cannot be identified. Those lines will
be marked with a comment "ATTN, need revision".

:param res_name: Residue name for which we desire force field parameters.
:type res_name:  :class:`str`
:param filename: Path to a file which contains the necessary information for
                 `res_name`. It must include all hydrogens.
:type filename:  :class:`str`
:param format: Format of file given with `filename`. Common formats are 'ccif'
               for PDB's component dictionary or 'pdb' for a PDB file
               containing the desired residue with all hydrogens.
:type format:  :class:`str`
:param amberhome: Base path of your AmberTools installation. If not None,
                  we look for ``antechamber`` and ``parmchk2`` within
                  ``AMBERHOME/bin`` additionally to the system's ``PATH``.
:type amberhome:  :class:`str`
:param base_out_dir: Path to a base path, where the output will be stored.
                     If None, the current working directory is used.
:type base_out_dir:  :class:`str`

Definition at line 293 of file antechamber.py.