|
OpenStructure
|
Functions | |
| _GetInteraction (functype, atoms, params) | |
| _MakeComponentBuildingBlock (eh, ff_dict) | |
| _ParseModifiedPDB (filename) | |
| _ParseAmberForceField (filename) | |
| RunAntechamber (res_name, filename, format='ccif', amberhome=None, base_out_dir=None) | |
| AddFromFiles (force_field, frcmod_filename, mpdb_filename) | |
| AddFromPath (force_field, out_dir) | |
| AddIon (force_field, res_name, atom_name, atom_mass, atom_charge, lj_sigma, lj_epsilon) | |
|
protected |
helper functions
Get an mm.Interaction with the given func-type and params for the given atoms (name and types extracted from there).
Definition at line 31 of file antechamber.py.
|
protected |
Take EntityHandle eh (from ParseModifiedPDB) and ff_dict (from ParseAmberForceField) and return BuildingBlock.
Definition at line 40 of file antechamber.py.
|
protected |
Read frcmod file produced by parmchk2 and return dictionary with all entries for masses, bonds, angles, dihedrals, impropers and non-bonded (LJ) interactions. Stored as key/list-of-value pairs: - 'MASS': [atype, mass] - 'BOND': [atype1, atype2, d0, k] - 'ANGL': [atype1, atype2, atype3, a0, k] - 'DIHE': [atype1, atype2, atype3, atype4, idiv, period, phase, k/idiv] - 'IMPR': [atype1, atype2, atype3, atype4, period, phase, k] - 'NONB': [Rvdw, epsilon]
Definition at line 209 of file antechamber.py.
|
protected |
Read mpdb file produced by antechamber and return tuple of: - EntityHandle with connectivity, atom types (property 'type') and charges - Residue name as extracted from the mpdb file A RuntimeError is raised if the file can contains multiple residues.
Definition at line 154 of file antechamber.py.
| 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 | ( | 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 | ( | 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 | ( | 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.