Hi Justin,

Your Python script uses the function protocol.genExtendedStructure(), which 
creates an extended conformation with ideal *covalent* geometry. That is, the 
function does not necessarily produce a clash-free structure. I think this is 
what causes the "strange" look in Pymol, which might place bonds between atoms 
close in space but not bonded to each other.

Note that this (intended) behavior of protocol.genExtendedStructure() is not an 
issue, as van der Waals interactions are largely omitted in the 
high-temperature stage of the subsequent dynamics protocol in order to improve 
sampling.

Your old-style script, in addition to the covalent energy terms, uses the van 
der Waals potential, resulting in structures with significantly fewer clashes 
that look more normal in Pymol.

I hope this helps.

Best,

Guillermo


________________________________________
From: Justin Douglas [[email protected]]
Sent: Thursday, March 17, 2016 10:45 AM
To: [email protected]
Subject: [Xplor-nih] Generate Extended Peptide Structure

Charles and Guillermo,

I'll try a slightly less banal question this time ...

I'm trying to generate an extended structure for a peptide with aminoisobutyric 
acid (AIB) residues.  Using the python interface I get a result that looks very 
strange to my eye (visualized in pymol), whereas if I use the "classic" xplor 
script I get a pdb file that looks like an extended peptide.  I should note 
that I neglected to patch the N-term with an acetyl and amidate the C-term 
using the "classic" script, though I do not believe this change explains the 
observation.

I'd prefer to use the python interface, so I am eager to determine what my 
mistake is in the script.  We would like to see reasonable extended structures 
prior to feeding in NOE and dihedral restraints.

Thanks,

Justin

Scripts below

****

# this checks for typos on the command-line. User-customized arguments can
# also be specified.
#
xplor.parseArguments()


# Filename for output structures.  This string must contain the STRUCTURE
# literal so that each calculated structure has a unique name. The SCRIPT
# literal is replaced by this filename (or stdin if redirected using <),
# but it is optional.
#
outFilename = "extended.pdb"


# The protocol module has many high-level helper functions.
import protocol

protocol.initRandomSeed(331)   # set random seed

# Generate PSF from sequence (initialize the correct parameters as side effect!)

seq = "ACE AIB AIB AIB AIB ALA ALA ALA ALA ALA ALA ALA ALA ALA ALA ALA ALA"
import psfGen
psfGen.residueTypes['protein'].append("AIB")

import protocol
protocol.initTopology('protein')
protocol.initParams('protein')

xplor.command("""
topology

 residue AIB
   group
     atom N   type=NH1 charge=-0.36 end
     atom HN  type=H   charge= 0.26 end
     atom CA  type=CT  charge= 0.00 end
     atom CB1  type=CT  charge=-0.30 end
     atom HB11 type=HA  charge= 0.10 end
     atom HB12 type=HA  charge= 0.10 end
     atom HB13 type=HA  charge= 0.10 end
     atom CB2  type=CT  charge=-0.30 end
     atom HB21 type=HA  charge= 0.10 end
     atom HB22 type=HA  charge= 0.10 end
     atom HB23 type=HA  charge= 0.10 end
     atom C   type=C   charge= 0.48 end
     atom O   type=O   charge=-0.48 end

   bond N  HN
   bond N  CA
   bond CA  CB1   bond CB1  HB11   bond CB1  HB12     bond CB1  HB13
   bond CA  CB2   bond CB2  HB21   bond CB2  HB22     bond CB2  HB23
   bond CA  C
   bond C   O

   improper HB11 HB12 CA HB13  !stereo CB1
   improper HB21 HB22 CA HB23  !stereo CB2


end

end
""")

psfGen.seqToPSF(seq,amidate_cterm=True,startResid=0)

protocol.genExtendedStructure("extended_python.pdb")

****
topology
        @TOPPAR:topallhdg.pro<http://topallhdg.pro>

 residue AIB
   group
     atom N   type=NH1 charge=-0.36 end
     atom HN  type=H   charge= 0.26 end
     atom CA  type=CT  charge= 0.00 end
     atom CB1  type=CT  charge=-0.30 end
     atom HB11 type=HA  charge= 0.10 end
     atom HB12 type=HA  charge= 0.10 end
     atom HB13 type=HA  charge= 0.10 end
     atom CB2  type=CT  charge=-0.30 end
     atom HB21 type=HA  charge= 0.10 end
     atom HB22 type=HA  charge= 0.10 end
     atom HB23 type=HA  charge= 0.10 end
     atom C   type=C   charge= 0.48 end
     atom O   type=O   charge=-0.48 end

   bond N  HN
   bond N  CA
   bond CA  CB1   bond CB1  HB11   bond CB1  HB12     bond CB1  HB13
   bond CA  CB2   bond CB2  HB21   bond CB2  HB22     bond CB2  HB23
   bond CA  C
   bond C   O

   improper HB11 HB12 CA HB13  !stereo CB1
   improper HB21 HB22 CA HB23  !stereo CB2

   end

end

segment
        name="   "
        chain
                @TOPPAR:toph19.pep

                sequence AIB AIB AIB AIB ALA ALA ALA ALA ALA ALA ALA ALA ALA 
ALA ALA ALA end


        end
end

parameter
{====>}
   @TOPPAR:parallhdg.pro<http://parallhdg.pro>                                 
{*Read parameters.*}

end



{ Set force constants for S-S bond lengths and angles to zero  }
parameter
   bonds ( name SG ) ( name SG ) 0. 1.
   angle ( name CB ) ( name SG ) ( name SG ) 0. 1
end



vector ident (x) ( all )
vector do (x=x/10.) ( all )
vector do (y=random(0.5) ) ( all )
vector do (z=random(0.5) ) ( all )

vector do (fbeta=50) (all)                 {*Friction coefficient, in 1/ps.*}
vector do (mass=100) (all)                         {*Heavy masses, in amus.*}

parameter
   nbonds
      cutnb=5.5 rcon=20. nbxmod=-2 repel=0.9  wmin=0.1 tolerance=1.
      rexp=2 irexp=2 inhibit=0.25
   end
end

flags exclude * include bond angle vdw end

minimize powell nstep=50  nprint=10 end

flags include impr end

minimize powell nstep=50 nprint=10 end

dynamics  verlet
   nstep=50  timestep=0.001 iasvel=maxwell  firsttemp= 300.
   tcoupling = true  tbath = 300.   nprint=50  iprfrq=0
end

parameter
   nbonds
      rcon=2. nbxmod=-3 repel=0.75
   end
end

minimize powell nstep=100 nprint=25 end

dynamics  verlet
   nstep=500  timestep=0.005 iasvel=maxwell  firsttemp= 300.
   tcoupling = true  tbath = 300.   nprint=100  iprfrq=0
end

flags exclude vdw elec end
vector do (mass=1.) ( name h* )
hbuild selection=( name h* ) phistep=360 end
flags include vdw elec end

minimize powell nstep=200 nprint=50 end
                                                       {*Write coordinates.*}
write coordinates output=extended_classic.pdb end


***


_______________________________________________
Xplor-nih mailing list
[email protected]
https://dcb.cit.nih.gov/mailman/listinfo/xplor-nih

Reply via email to