schrodinger.protein.biounit module¶
Expand structure into biological units
A structure generated from crystal data (typically .pdb or .cif) may represent/include multiple “Biological Units” (or biomolecules).
A biological unit is a (putatively) biologically active structure that is not explicitely encoded in the file. It may include fewer chains than the file, or it may include symmetry adjusted copies of one or more chains. Copies are given a new chain name.
Example usage:
st = structure.Structure.read('1wpl.pdb')
biomolecules = biounits_from_structure(st)
for biomolecule_transformation in biomolecules:
biomolecule_st, _ = apply_biounit(st, biomolecule_transformation)
- exception schrodinger.protein.biounit.BiounitOverrunError¶
Bases:
Exception
- schrodinger.protein.biounit.biounits_from_structure(st)¶
Find the biomolecules (aka biounits) stored in the properties of a Structure
Each biomolecule is represented as a dictionary. The keys are groups of chains, and the values are the transformations to be applied to those chains.
- Parameters
st (schrodinger.structure.Structure) – Structure from which to glean biounits
- Return type
list[dict(frozenset, list[_Transformation])]
- Returns
Mapping between chain ID sets and a list of _Transformation containing the rotation and translation matrices for those chains
- schrodinger.protein.biounit.apply_biounit(original_st, biounit)¶
Apply biounit transformations to the given structure.
If a chain is duplicated, the duplicate is given a new chain name in alphabetical order.
- Parameters
original_st (schrodinger.structure.Structure) – Structure to transform
biounit (dict(frozenset, list[_Transformation])) – Biounit data (produced by
biounits_from_structure
) mapping between chain ID sets and a list of _Transformation containing the rotation and translation matrices
- Returns
A new Structure for the biounit applied to the original_st
- Return type