Rigimol.morph

From PyMOLWiki
Revision as of 13:33, 9 April 2014 by Speleo3 (talk | contribs) (fix typo)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

The morph command is an incentive PyMOL feature (not available in open-source version). Given a two-state object, morph can create an interpolated trajectory from the first to the second conformation.

Notice: There is a new morph command in PyMOL 1.6

Usage

morph source, target [, first [, last [, refinement [, async [, steps ]]]]]

Arguments

  • source = string: name of two-state input object
  • target = string: name of output object to create
  • first = int: start state of source {default: 1}
  • last = int: end state of source {default: 2}
  • refinement = int: number of sculpting refinement cycles to clean distorted intermediates {default: 10}
  • steps = int: number of states for target object {default: 30}

Warning: arguments first, last and steps new in PyMOL 1.5 (up to 1.4 they are always at default values)

Example

# get open and closed conformation of adenylate kinase
fetch 1ake 4ake, async=0

# make two state object
align 1ake and chain A, 4ake and chain A, cycles=0, object=aln
create rin, 1ake and aln, 1, 1
create rin, 4ake and aln, 1, 2

# morph
from epymol import rigimol
rigimol.morph("rin", "rout")

Troubleshooting

Rigimol likes to fail if the atom identifiers (like chain) in the two input states do not match properly. A more robust way to create the two state object is to update state two coordinates without matching identifiers:

# make two state object
align 1ake and chain A, 4ake and chain A, cycles=0, object=aln
create rin, 1ake and aln, 1, 1
create rin, rin, 1, 2
update rin, 4ake and aln, 2, 1, matchmaker=0

PyMOL Command

if you prefer PyMOL syntax over python syntax, add this to your pymolrc file:

import epymol.rigimol
cmd.extend('morph', epymol.rigimol.morph)

See Also

  • morph, the PyMOL 1.6+ morph command
  • morpheasy, a robust wrapper for the morph command which takes care of matching atom identifiers (requires the psico module)
  • slerpy
  • eMovie