residue_constants#

Constants used in AlphaFold.

class prxteinmpnn.utils.residue_constants.Bond(atom1_name, atom2_name, length, stddev)[source]#

Bases: NamedTuple

A bond between two atoms.

Parameters:
atom1_name: str#

Alias for field number 0

atom2_name: str#

Alias for field number 1

length: float#

Alias for field number 2

stddev: float#

Alias for field number 3

class prxteinmpnn.utils.residue_constants.BondAngle(atom1_name, atom2_name, atom3name, angle_rad, stddev)[source]#

Bases: NamedTuple

A bond angle between three atoms.

Parameters:
atom1_name: str#

Alias for field number 0

atom2_name: str#

Alias for field number 1

atom3name: str#

Alias for field number 2

angle_rad: float#

Alias for field number 3

stddev: float#

Alias for field number 4

prxteinmpnn.utils.residue_constants.process_lines_iter_chemical_props(lines_iter)[source]#

Process lines iterator from stereo_chemical_props.txt.

Return type:

tuple[Mapping[str, list[Bond]], Mapping[str, list[BondAngle]]]

Parameters:

lines_iter (Iterator[str])

prxteinmpnn.utils.residue_constants.load_stereo_chemical_props()[source]#

Load stereo_chemical_props.txt into a nice structure.

Load literature values for bond lengths and bond angles and translate bond angles into the length of the opposite edge of the triangle (“residue_virtual_bonds”).

Returns:

dict that maps resname –> list of Bond tuples residue_virtual_bonds: dict that maps resname –> list of Bond tuples residue_bond_angles: dict that maps resname –> list of BondAngle tuples

Return type:

residue_bonds

prxteinmpnn.utils.residue_constants._make_standard_atom_mask()[source]#

Return [num_res_types, num_atom_types] mask array.

Return type:

ndarray

prxteinmpnn.utils.residue_constants.chi_angle_atom(atom_index)[source]#

Define chi-angle rigid groups via one-hot representations.

Return type:

ndarray

Parameters:

atom_index (int)

prxteinmpnn.utils.residue_constants._make_rigid_transformation_4x4(ex, ey, translation)[source]#

Create a rigid 4x4 transformation matrix from two axes and transl.

Return type:

ndarray

Parameters:
prxteinmpnn.utils.residue_constants._make_rigid_group_constants()[source]#

Fill the arrays above.

Return type:

None

prxteinmpnn.utils.residue_constants.make_atom14_dists_bounds(overlap_tolerance=1.5, bond_length_tolerance_factor=15)[source]#

Compute upper and lower bounds for bonds to assess violations.

Return type:

dict[str, ndarray]

Parameters:
  • overlap_tolerance (float)

  • bond_length_tolerance_factor (int)