Re: [modeller_usage] restraining bonds between het ligand and side chain atoms
To: Violetta Kivovich <>
Subject: Re: [modeller_usage] restraining bonds between het ligand and side chain atoms
From: Modeller Caretaker <>
Date: Tue, 04 Aug 2009 10:03:46 -0700
Cc:
On 08/03/2009 08:11 PM, Violetta Kivovich wrote:
I am trying to introduce a restrain which would limit a bond length
between a zinc and its coordinating side chain atom (N2 of His or O of
Asn) in my model. I am not sure how to indicate the restraint in a
script. Can you help?
The "adding additional restraints to the defaults" example is closest to
what you want to do:
That example builds a set of secondary structure restraints (which you
don't need), plus a single distance restraint. Let's look at that
distance restraint more closely:
Going from the inside in, features.distance says that the thing we want
to constrain is a distance in angstroms between two atoms (the C-alpha
atoms in residues 35 and 40 in this case). Then we say that the form of
the restraint on that distance should be a Gaussian (harmonic) function
(forms.gaussian) with a mean of 10A and a standard deviation of 0.1A.
(The group is not important unless you want to keep track of violations
of your restraint, or want to scale the scores.) Finally, rsr.add() adds
the restraint to the list of all restraints on that model.
In your case, if by "limit" you mean you want the bond length to be
maintained near some known value, you can use something very similar to
that above. If you mean you want the length to vary freely but not to
exceed some known upper limit, you can use forms.upper_bound rather than
forms.gaussian.
Note also that if your interaction really is a "bond" (i.e. distance is
less than the sum of the radii of the two atoms, or thereabouts) you
will get a conflict between your distance restraint and Modeller's van
der Waals (soft sphere or Lennard Jones) interaction, which will try to
push the two atoms apart. If that is the case, you should exclude this
pair of atoms from the nonbonded list by adding an excluded pair with
something like
Finally, note that if the zinc - sidechain interaction already exists in
the template, Modeller will most likely maintain that interaction in
your model automatically. See: