propka.group
Data structures for groups
Routines and classes for storing groups important to PROPKA calculations.
Changed in version 3.4.0: Removed initialize_atom_group()
as reading PROPKA inputs is no longer
supported.
Module Attributes
acids |
|
bases |
Functions
|
Identify whether the atom belongs to a group. |
|
Identify whether the atom belongs to an ion group. |
|
Identify whether the atom belongs to a ligand group by checking groups. |
|
Identify whether the atom belongs to a ligand group by calculating 'Marvin pKas'. |
|
Identify whether the atom belongs to a protein group. |
Classes
|
Amide group. |
|
Arginine group. |
|
Backbone carbon group. |
|
Backbone nitrogen group. |
|
Amidinium group. |
|
Guadinium group. |
|
Carboxyl group. |
|
Cysteine group. |
|
Chloride group. |
|
C-terminus group. |
|
Fluoride group. |
|
Class for storing groups important to pKa calculations. |
|
Histidine group. |
|
Ion group. |
|
Lysine group. |
|
Unknown group. |
|
Unknown group. |
|
Unknown group. |
|
Unknown group. |
|
Unknown group. |
|
Unknown group. |
|
Unknown group. |
|
Unknown group. |
|
Non-titratable ligand group. |
|
N-terminus group. |
|
Unknown group. |
|
Unknown group. |
|
Carboxyl group. |
|
Hydroxide group. |
|
Phosphate group. |
|
Alcohol group. |
|
Serine group. |
|
Sulfhydryl group. |
|
Tryptophan group. |
|
Tyrosine group. |
|
Titratable ligand group. |
- propka.group.EXPECTED_ATOMS_ACID_INTERACTIONS = {'AMD': {'H': 2, 'N': 1}, 'ARG': {'H': 5, 'N': 3}, 'BBC': {'O': 1}, 'BBN': {'H': 1, 'N': 1}, 'C-': {'O': 2}, 'C2N': {'H': 4, 'N': 2}, 'CG': {'H': 5, 'N': 3}, 'COO': {'O': 2}, 'CYS': {'S': 1}, 'Cl': {'Cl': 1}, 'F': {'F': 1}, 'HIS': {'H': 2, 'N': 2}, 'LYS': {'N': 1}, 'N+': {'N': 1}, 'N1': {'N': 1}, 'N30': {'H': 4, 'N': 1}, 'N31': {'H': 3, 'N': 1}, 'N32': {'H': 2, 'N': 1}, 'N33': {'H': 1, 'N': 1}, 'NAM': {'H': 1, 'N': 1}, 'NAR': {'H': 1, 'N': 1}, 'NP1': {'H': 2, 'N': 1}, 'O2': {'O': 1}, 'O3': {'O': 1}, 'OCO': {'O': 2}, 'OH': {'H': 1, 'O': 1}, 'OP': {'O': 1}, 'ROH': {'O': 1}, 'SH': {'S': 1}, 'TRP': {'H': 1, 'N': 1}, 'TYR': {'O': 1}}
acids
- propka.group.EXPECTED_ATOMS_BASE_INTERACTIONS = {'AMD': {'O': 1}, 'ARG': {'N': 3}, 'BBC': {'O': 1}, 'BBN': {'H': 1, 'N': 1}, 'C-': {'O': 2}, 'C2N': {'N': 2}, 'CG': {'N': 3}, 'COO': {'O': 2}, 'CYS': {'S': 1}, 'Cl': {'Cl': 1}, 'F': {'F': 1}, 'HIS': {'N': 2}, 'LYS': {'N': 1}, 'N+': {'N': 1}, 'N1': {'N': 1}, 'N30': {'N': 1}, 'N31': {'N': 1}, 'N32': {'N': 1}, 'N33': {'N': 1}, 'NAM': {'H': 1, 'N': 1}, 'NAR': {'H': 1, 'N': 1}, 'NP1': {'N': 1}, 'O2': {'O': 1}, 'O3': {'O': 1}, 'OCO': {'O': 2}, 'OH': {'H': 1, 'O': 1}, 'OP': {'O': 1}, 'ROH': {'O': 1}, 'SH': {'S': 1}, 'TRP': {'N': 1}, 'TYR': {'O': 1}}
bases
- class propka.group.Group(atom: Atom)[source]
Class for storing groups important to pKa calculations.
Changed in version 3.4.0: Removed
make_covalently_coupled_line()
andmake_non_covalently_coupled_line()
as writing PROPKA inputs is no longer supported.- add_determinant(new_determinant: Determinant, type_: str) None [source]
Add to current and creates non-present determinants.
- Parameters:
new_determinant – new determinant to add
type – determinant type
- calculate_charge(_, ph: float = 7.0, state: str = 'folded') float [source]
Calculate the charge of the specified state at the specified pH.
- Parameters:
_ – parameters for calculation
ph – pH value
state – “folded” or “unfolded”
- Returns:
float with charge
- calculate_folding_energy(parameters, ph=None, reference=None)[source]
Return the electrostatic energy of this residue at specified pH.
- Parameters:
parameters – parameters for energy calculation
ph – pH value for calculation
reference – reference state for calculation
- Returns:
float describing energy
- calculate_intrinsic_pka()[source]
Calculate the intrinsic pKa values from the desolvation determinants, back-bone hydrogen bonds, and side-chain hydrogen bonds to non-titratable residues.
- calculate_total_pka()[source]
Calculate total pKa based on determinants associated with this group.
- couple_covalently(other: Group) None [source]
Couple this group with another group.
- Parameters:
other – other group for coupling
- couple_non_covalently(other: Group) None [source]
Non-covalenthly couple this group with another group.
- Parameters:
other – other group for coupling
- get_covalently_coupled_groups()[source]
Get covalently coupled groups.
- Returns:
list of covalently coupled groups.
- get_determinant_for_string(type_, number)[source]
Return a string describing determinant.
- Parameters:
type – determinant type
number – determinant index number
- Returns:
string
- get_determinant_string(remove_penalised_group=False)[source]
Create a string to identify this determinant.
- Parameters:
remove_penalised_group – Boolean flag to remove penalized groups
- Returns:
string
- get_interaction_atoms(interacting_group: Group) List[Atom] [source]
Get atoms involved in interaction with other group.
- Parameters:
interacting_group – other group
- Returns:
list of atoms
- get_non_covalently_coupled_groups()[source]
Get non-covalently coupled groups.
- Returns:
list of covalently coupled groups.
- get_summary_string(remove_penalised_group: bool = False) str [source]
Create summary string for this group.
- Parameters:
remove_penalised_group – Boolean to ignore penalized groups
- Returns:
string
- remove_determinants(labels)[source]
Remove all determinants with specified labels.
- Parameters:
labels – list of labels to remove
- set_determinant(new_determinant: Determinant, type_: str) None [source]
Overwrite current and create non-present determinants.
- Parameters:
new_determinant – new determinant to add
type – determinant type
- propka.group.is_group(parameters: Parameters, atom: Atom) Group | None [source]
Identify whether the atom belongs to a group.
- Parameters:
parameters – parameters for check
atom – atom to check
- Returns:
group for atom or None
- propka.group.is_ion_group(parameters, atom: Atom) Group | None [source]
Identify whether the atom belongs to an ion group.
- Parameters:
parameters – parameters for check
atom – atom to check
- Returns:
group for atom or None
- propka.group.is_ligand_group_by_groups(_, atom: Atom) Group | None [source]
Identify whether the atom belongs to a ligand group by checking groups.
- Parameters:
_ – parameters for check
atom – atom to check
- Returns:
group for atom or None