HighlightAlignedSS

From PyMOLWiki
Jump to: navigation, search
Highlight ss1.png

This script will align and color the paired secondary structures of the two proteins a similar rainbow color.


from pymol import cmd, util
 
def highlight_aligned_ss(obj1,obj2,transform=1,quiet=1):
    """
DESCRIPTION
 
    Aligns two structures and colors their matching
    secondary structure elements with a matching
    rainbow colorscheme.
 
USAGE
 
    highlight_aligned_ss obj1, obj2
 
    If transform=0 then the proteins are not
    moved after alignment.
 
EXAMPLES
 
    highlight_aligned_ss 1cll, 1ggz
    highlight_aligned_ss 1rlw, 1byn and state 1
 
SEE ALSO
 
    align
 
    JV 3-2-11
    """
 
 
    if not cmd.count_atoms(obj1):
        print "Error: Object 1 needs at least a few atoms to align."
        return None
    if not cmd.count_atoms(obj2):
        print "Error: Object 2 needs at least a few atoms to align."
        return None
 
    # align them
    uAln = cmd.get_unused_name("aln")
    cmd.align(obj1,obj2,object=uAln,transform=int(transform))
    cmd.hide("cgo", uAln)
 
    # select atoms of similar SS
    uSimSS = cmd.get_unused_name("similar_ss_")
    cmd.select(uSimSS, "((%s or %s) in %s) and (ss 'S' or ss 'H')" %
               (obj1,obj2,uAln))
 
    # color by rainbow; these could be 
    # customized by function parameters
    util.rainbow(uSimSS + " and " + obj1)
    util.rainbow(uSimSS + " and " + obj2)
 
    # now color everything else grey
    cmd.color("grey70", "not (%s)" % uSimSS)
 
    # could also be an option to
    # update the representation
    # as cartoon
 
    # hide indicators
    cmd.select("none")
 
cmd.extend("highlight_aligned_ss", highlight_aligned_ss)
Personal tools
Namespaces
Variants
Actions
Navigation
Toolbox