propka.protonate

Protonate a structure

The Protonate processes a propka.molecular_container.MolecularContainer and adds protons.

Classes

Protonate([verbose])

Protonates atoms using VSEPR theory

class propka.protonate.Protonate(verbose=False)[source]

Protonates atoms using VSEPR theory

static add_proton(atom: Atom, position: Vector)[source]

Add a proton to an atom at a specific position.

Parameters:
  • atom – atom to protonate

  • position – position for proton

add_protons(atom: Atom)[source]

Add protons to atom.

Parameters:

atom – atom for calculation

protonate(molecules: MolecularContainer)[source]

Protonate all atoms in the molecular container.

Parameters:

molecules – molecular containers

protonate_atom(atom: Atom)[source]

Protonate an atom.

Parameters:

atom – atom to be protonated

static remove_all_hydrogen_atoms(molecular_container: MolecularContainer)[source]

Remove all hydrogen atoms from molecule.

Parameters:

molecular_container – molecule to remove hydrogens from

set_bond_distance(bvec: Vector, element: str) Vector[source]

Set bond distance between atom and element.

Parameters:
  • bvec – bond vector

  • element – bonded element

Returns:

scaled bond vector

set_charge(atom: Atom)[source]

Set charge for atom.

Parameters:

atom – atom to be charged

set_number_of_protons_to_add(atom: Atom)[source]

Set the number of protons to add to this atom.

Parameters:

atom – atom for calculation

static set_proton_names(heavy_atoms: Iterable[Atom])[source]

Set names for protons.

Parameters:

heavy_atoms – list of heavy atoms with protons to be named

set_steric_number_and_lone_pairs(atom: Atom)[source]

Set steric number and lone pairs for atom.

Parameters:

atom – atom for calculation

tetrahedral(atom: Atom)[source]

Protonate atom in tetrahedral geometry.

Parameters:

atom – atom to protonate.

trigonal(atom: Atom)[source]

Add hydrogens in trigonal geometry.

Parameters:

atom – atom to protonate