!! Generate C-alpha template ! set the topology file, explicit polar H topology @/sansom/disk4/usr/xplor_3.0/toppar/toph19x.proian end ! set the parameter file, explicit polar H parameter @/sansom/disk4/usr/xplor_3.0/toppar/param19x.proian end set seed = 2397 end ! reset the structure for $run in (1) loop run structure reset end for $mono in (1) loop bundle evaluate ($segname = "P" + encode($mono)) segment { to generate the molecule} name = $segname { max 4 characters} setup = false { i don't know what this does} chain { segment loop command} link pept head - * tail + * end sequence ! 6 12 18 24 ! S4: Ac-A M S L A I L R V I R L V R V F R I F K L S R H S K G L Q I NH2 ace ala met ser leu ala ile leu arg val ile arg leu val arg val phe arg ile phe lys leu ser arg his ser lys gly leu gln ile end { end of sequence} end { end of chain} end { end of segment} end loop bundle { end of loop} ! okay. this has created the primary structure information if you like ! the sequence is there, the dihedrals have been defined, but not evaluated. ! now we must position the atoms on the ca coordinates....... PATCH CTN REFERENCE = NIL = ( segid P1 and resid 31) END ! the vector statement allows modification of ANY atomic parameter ! including charge,as well as cooridnate position....... vector do (x=0) (all) { do performs an operation on the} { bracketed atom selection.} vector do (y=2.35) (all) {Chothia et al 1981 d=4.7} vector do (z=0) (all) ! rotating the atoms comes next. id is an atom selection command that ! should not be used except in a loop. puts all five helices in same place evaluate ($deg=0) for $1 in id (name ca and segid P1) loop main1 vector show element (resid) (id $1) { shows the elements selected} { and stores in $result} evaluate ($3 = $result) coor {sets up a coordinate alteration} rotate selection = (resid $3) { a rotation} center = (0 0 0) { centered on} eule = ($deg 0 0) { by $deg degrees} end { performs the rotation} evaluate ($deg=($deg-100.0)) { gives infinite helix pitch, rather} { than 100 degrees.} end loop main1 { Chothia et al 1981 3.64 res/turn} ! spread tha atoms out along the helix axis evaluate ($add=0) for $1 in id (name ca and segid P1) loop main2 vector show element (resid) (id $1) evaluate ($3=$result) vector do ( z= $add)( resid $result) { could have used coor} evaluate ($add=($add+1.5)) { 1.5 angstroms per residue} { Chothia et al 1981 1.51} end loop main2 vector show ave (Z) (all) evaluate($dz=-$result) vector do (z = (z+$dz)) (all) ! write the coordinates out evaluate ($filpdb = "m2i" + encode $run + ".pdb") evaluate ($filpsf = "m2i" + encode $run + ".psf") write coor output= $filpdb end { open file} write structure output = $filpsf end end loop run ! end of program coming up right now ! stop { ends xplor run}