[cctbxbb] pdb shake - dihedral angles

Pavel Afonine pafonine at lbl.gov
Wed Feb 20 07:46:24 PST 2013

Another alternative consists two steps:
1) randomly shake coordinates;
2) regularize geometry.

Repeating steps 1-2 with different random seed will produce different 

Larger the shake amount and number of regularization cycles - more 
different structure will be.

Also, you can force this to be local by applying 1-2 to selected atoms, 
while keeping "anchors" unchanged.

If your goal is to produce a structure distorted in a realistic way, 
then this should just do it. Using Cartesian dynamics is another 


On 2/20/13 6:22 AM, Nathaniel Echols wrote:
> On Wed, Feb 20, 2013 at 3:51 AM, Dmytro Guzenko
> <Dmytro.Guzenko at pharm.kuleuven.be> wrote:
>> I wonder what would it take to write an equivalent to pdb_shake script from
>> iotbx/examples with randomization of the backbone dihedral angles phi and
>> psi, instead of all coordinates perturbation? I want to be able to randomize
>> models in a more “realistic” way.
>> Are there data structures/procedures that can be useful for this in cctbx,
>> or should I extract the coordinates and take it from there?
> I think this is non-trivial because of the lever-arm effect - you
> would need to figure out a way to change phi/psi without propagating
> down the rest of the chain.  What we do have is the ability to run
> short molecular dynamics, which is what we usually use for this.  The
> big disadvantage right now is that the geometry restraints aren't even
> close to physically realistic, just good enough for X-ray refinement,
> so the protein will tend to fly apart over time.  I believe you can
> run it like this:
> phenix.pdbtools model.pdb simple_dynamics=True discard_psi_phi=False
> The final argument is optional but probably a good idea - we leave out
> those restraints for validation purposes, but in this case it is
> better to keep them within realistic limits.
> The source code for this is in mmtbx/pdbtools.py.  You need to have
> the geometry restraints available somewhere; obviously these are
> distributed with Phenix, but I'm pretty sure you could also use an
> external installation of the CCP4 monomer library - never tried this
> myself though.  Another issue is that this will change all torsion
> angles, not just the backbone; to prevent this, I think you'd need to
> modify the dihedral angle restraint proxies for non-phi/psi angles
> internally to have very high weights.  (We don't have any ready-made
> code to do this but mmtbx/command_line/interpolate.py shows an example
> of modifying the dihedral proxies in place.)
> -Nat
> _______________________________________________
> cctbxbb mailing list
> cctbxbb at phenix-online.org
> http://phenix-online.org/mailman/listinfo/cctbxbb

More information about the cctbxbb mailing list