superimpose_homologs
#
- biotite.structure.superimpose_homologs(fixed, mobile, substitution_matrix=None, gap_penalty=-10, min_anchors=3, **kwargs)[source]#
Superimpose one protein or nucleotide chain onto another one, considering sequence differences and conformational outliers.
The method finds corresponding residues by sequence alignment and selects their \(C_{\alpha}\) or \(P\) atoms as superimposition anchors. Then iteratively the anchor atoms are superimposed and outliers are removed.
- Parameters:
- fixedAtomArray, shape(n,) or AtomArrayStack, shape(m,n)
The fixed structure(s). Must comprise a single chain.
- mobileAtomArray, shape(n,) or AtomArrayStack, shape(m,n)
The structure(s) which is/are superimposed on the fixed structure. Must comprise a single chain.
- substitution_matrixstr or SubstitutionMatrix, optional
The (name of the) substitution matrix used for sequence alignment. Must fit the chain type. By default,
"BLOSUM62"
and"NUC"
are used respectively. Only aligned residues with a positive score are considered as initial anchors.- gap_penaltyint or tuple of int, optional
The gap penalty for sequence alignment. A single value indicates a linear penalty, while a tuple indicates an affine penalty.
- min_anchorsint, optional
If less than min_anchors anchors are found by sequence alignment, the method ditches the alignment and matches all anchor atoms. If the number of anchor atoms is not equal in fixed and mobile in this fallback case, an exception is raised. Furthermore, the outlier removal is stopped, if less than min_anchors anchors would be left.
- **kwargs
Additional parameters for
superimpose_without_outliers()
.
- Returns:
- fittedAtomArray or AtomArrayStack
A copy of the mobile structure(s), superimposed on the fixed structure(s).
- transformAffineTransformation
This object contains the affine transformation(s) that were applied on mobile.
AffineTransformation.apply()
can be used to transform another AtomArray in the same way.- fixed_anchor_indices, mobile_anchor_indicesndarray, shape(k,), dtype=int
The indices of the anchor atoms in the fixed and mobile structure, respectively. These atoms were used for the superimposition.
See also
superimpose
Superimposition without outlier removal
superimpose_without_outliers
Internally used for outlier removal
Notes
As this method relies on sequence alignment, it works only for proteins/nucleic acids with decent sequence homology.
Gallery#
Superimposition of homologous protein structures