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.