The StructureAlignment tool set consists of a library of high level structure alignment tools that reuse a stable kernel of transformation and superimposition tools.
This is an example script for running the pair-wise structure superimposition algorithm. Save the following text in a .py file in the main SPADE directory, and modify the PDB file names to reflect the names and locations of the two PDB files to superimpose. Then double click the script file to execute.
StructureAligner applies a dynamic programming algorithm to locate an initial alignment, using a sequence-independent computer vision technique for scoring. It then superimposes the structures based on the alignment, and refines the the superimposition iteratively. This script ends by launching a molecular viewer to visualize the superimposed structures. Residues are colored yellow if they are used in the superimposition, white if included in the alignment but not the superimposition, and blue if not included in the alignment (gaps).
import sys
sys.path.append('./Tools/AlignerModule')
from Tkinter import *
import MolecularSystem
import StructureAligner
import MolecularViewer
#
# open the two molecular system objects and merge for visualization
chainA = MolecularSystem.System('./1JMC1.pdb')
chainB = MolecularSystem.System('./1JMC2.pdb')
chainA.add_protein(chainB.ProteinList[0])
#
# create a StructureAligner object, load, and align
StrAli = StructureAligner.StructureAligner(1)
StrAli.add_target(chainA.ProteinList[0])
StrAli.add_template(chainA.ProteinList[1])
StrAli.align_structures()
#
# create a MolecularViewer and load the system to visualize it
window = Tk()
viewer = MolecularViewer.MolecularViewer(window, 'None', 400, 500, 0)
viewer.load_system(chainA, 1)
viewer._build_menu()
viewer.has_menu=1
window.mainloop()
Rapidly superimpose two homologous structures. Performs a sequence alignment then utilizes the Superimpose kernel to perform structure alignment, using sequence alignment columns that position residues within a threshold distance (e.g. 8 Angstroms). Colors anchor residues yellow, non-anchor white. This works reliably for proteins with clear sequence similarity. The code currently requires generalization for file I/O and threshold adjustment.
Superimpose pairwise alignments that do not contain clear sequence similarity. Again reuses the Aligner Tool but this time using strict structure-based parameters, including shielding (or solvent accessibility), local backbone shape similarity (over a 3-7 residue window), and the similarity of the arrangements of structurally adjacent amino acids (within a threshold distance of e.g. 8 Angstroms). The default mode applies a combination of these features toward a structure-based alignment of the residues that can be used for superimposition, as with SequenceBasedStructureAligner.
Aligner works in global, semiglobal, and local modes, so StructureAligner can be reused in motif discovery and other multiple-fragment pattern recognition applications.
Example script StructureAlignerExample.
The Multipos algorithm is applied to solve the most challenging multiple structure alignments. Multipos applies a geometric hashing technique toward discovery of sequence-order-independent structural patterns that are filtered, clustered, and directly applied toward superimposition. Instead of the typical dynamic programming algorithm, Multipose applies geometric invariants in the form of inter-atomic distances, as keys in a hash table that collects superimposable motifs.
Copyright © 2001