# propka.ligand

## Ligand atom typing

This module contains the `assign_sybyl_type()` function to analyze all `propka.atom.Atom` in terms of SYBYL atom types (see `ALL_SYBYL_TYPES`).

Module Attributes

`ALL_SYBYL_TYPES` | SYBYL atom types
`PROPKA_INPUT_TYPES` | PROPKA input types

Functions

`are_atoms_planar`(atoms) | Test whether a group of atoms are planar.
`assign_sybyl_type`(atom) | Assign Sybyl type to atom.
`identify_ring`(this_atom, original_atom, ...) | Identify the atoms in a ring
`is_aromatic_ring`(atoms) | Determine whether group of atoms form aromatic ring.
`is_planar`(atom) | Finds out if atom forms a plane together with its bonded atoms.
`is_ring_member`(atom) | Determine if atom is a member of a ring.
`set_type`(atom, type_) | Set atom type..

propka.ligand.ALL_SYBYL_TYPES = ['C.3', 'H', 'C.2', 'H.spc', 'C.1', 'H.t3p', 'C.ar', 'LP', 'C.cat', 'Du', 'N.3', 'Du.C', 'N.2', 'Any', 'N.1', 'Hal', 'N.ar', 'Het', 'N.am', 'Hev', 'N.pl3', 'Li', 'N.4', 'Na', 'O.3', 'Mg', 'O.2', 'Al', 'O.co2', 'Si', 'O.spc', 'K', 'O.t3p', 'Ca', 'S.3', 'Cr.th', 'S.2', 'Cr.oh', 'S.O', 'Mn', 'S.O2', 'Fe', 'P.3', 'Co.oh', 'F', 'Cu', 'Cl', 'Zn', 'Br', 'Se', 'I', 'Mo', 'Sn']

  SYBYL atom types

propka.ligand.PROPKA_INPUT_TYPES = ['1P', '1N', '2P', '2N', 'C3', 'H', 'C2', 'Hsp', 'C1', 'Ht3', 'Car', 'LP', 'Cca', 'Du', 'N3', 'DuC', 'N2', 'Any', 'N1', 'Hal', 'Nar', 'Het', 'Nam', 'Hev', 'Npl', 'Li', 'N4', 'Na', 'O3', 'Mg', 'O2', 'Al', 'Oco', 'Si', 'Osp', 'K', 'Ot3', 'Ca', 'S3', 'Crt', 'S2', 'Cro', 'SO', 'Mn', 'SO2', 'Fe', 'P3', 'Coo', 'F', 'Cu', 'Cl', 'Zn', 'Br', 'Se', 'I', 'Mo', 'Sn']

  PROPKA input types

propka.ligand.are_atoms_planar(atoms)

  Test whether a group of atoms are planar.

  Parameters:

    atoms – list of atoms

  Returns:

    Boolean

propka.ligand.assign_sybyl_type(atom)

  Assign Sybyl type to atom.

  Parameters:

    atom – atom to assign

propka.ligand.identify_ring(this_atom, original_atom, number, past_atoms)

  Identify the atoms in a ring

  Parameters:

    - this_atom – atom to test

    - original_atom – some other atom

    - number – number of atoms

    - past_atoms – atoms that have already been found

  Returns:

    list of atoms

propka.ligand.is_aromatic_ring(atoms)

  Determine whether group of atoms form aromatic ring.

  Parameters:

    atoms – list of atoms to test

  Returns:

    Boolean

propka.ligand.is_planar(atom)

  Finds out if atom forms a plane together with its bonded atoms.

  Parameters:

    atom – atom to test

  Returns:

    Boolean

propka.ligand.is_ring_member(atom)

  Determine if atom is a member of a ring.

  Parameters:

    atom – atom to test

  Returns:

    list of atoms

propka.ligand.set_type(atom, type_)

  Set atom type..

  Parameters:

    - atom – atom to set

    - type – type value to set