neurosnap.structure.compare module#

Pairwise comparison and alignment functions for Neurosnap structures.

neurosnap.structure.compare.align(reference, mobile, chains1=None, chains2=None)[source]#

Align a mobile structure onto a reference structure using polymer backbone atoms.

When both chains1 and chains2 are provided, they are interpreted as explicit pairwise chain mappings in matching order.

Parameters:
  • reference (Structure) – Reference single-model Structure.

  • mobile (Structure) – Mobile single-model Structure to transform in-place.

  • chains1 (Optional[Sequence[str]]) – Optional reference chain IDs to include in the alignment.

  • chains2 (Optional[Sequence[str]]) – Optional mobile chain IDs to include in the alignment.

Returns:

None. The mobile structure is transformed in-place.

neurosnap.structure.compare.calculate_rmsd(reference, mobile, chains1=None, chains2=None, align_structures=True)[source]#

Calculate backbone RMSD between two structures.

Parameters:
  • reference (Structure) – Reference single-model Structure.

  • mobile (Structure) – Mobile single-model Structure.

  • chains1 (Optional[Sequence[str]]) – Optional reference chain IDs to include.

  • chains2 (Optional[Sequence[str]]) – Optional mobile chain IDs to include.

  • align_structures (bool) – If True, align the mobile structure before computing RMSD.

Return type:

float

Returns:

Backbone RMSD in Å using the same residue/atom correspondence as align().