Hi , i've been using Modeller old versions with the old formet --> TOP.
The new "polished - python" interface looks really promising , but i'm spending now some time to see how to make things work ! I went throught all tutorials , and that is OK , but in my present case i want to add DISULFIDE RESTRAINTS and i want to change the default "coordinate-output-names" so if i understand right i have to NOT use the "automodel" class anymore...
Here starts the trouble !
Also: Before i was doing : SUBROUTINE ROUTINE = 'special_patches' PATCH RESIDUE_TYPE = 'DISU', RESIDUE_IDS = '27' '50' RETURN END_SUBROUTINE
now , according to the manual : "mdl.patch_ss_templates(aln)
# Create the stereochemical restraints mdl.restraints.make(aln, restraint_type='stereo', spline_on_site=False) "
If i follow those examples in the manual and try to read my alignement to write the correponding model-with patches constraints. i get a completely unfolded, linear protein as a result !
Here's my input :
seq="Criquet" # my sequence align="Criquet-1pce-modifiedbyhand.ali" # my alignement #align="Criquet-1pce.ali" struct="1pceA" #struct2="3ovo"
# Read the sequence, calculate its topology, and coordinates: aln = alignment(env, file=align, align_codes=(struct)) # Superpose the two template structures without changing the alignment. # This is for TRANSFER_XYZ to work properly. It relies on not reading # the atom files again before TRANSFER_XYZ. aln.malign3d(fit=False) # This is for TRANSFER_XYZ to work properly. # Restore the alignment, and add in the model sequence, 1fas: aln.append(file=align, align_codes=(struct, seq)) mdl = model(env) mdl.generate_topology(aln, sequence='Criquet') mdl.transfer_xyz(aln) mdl.build(initialize_xyz=True, build_method='INTERNAL_COORDINATES')
mdl.write(file=align+'.noSS') # Create the disulfide bonds using equivalent disulfide bonds in templates: mdl.patch_ss_templates(aln)
# Create the stereochemical restraints mdl.restraints.make(aln, restraint_type='stereo', spline_on_site=False) # Calculate energy to test the disulfide restraints (bonds, angles, dihedrals): mdl.energy()
Then i got confused: why i'm not able to reproduce a "simple" top script : read an alignement --> build a model ! with the model() class
Thanks in advance for looking at this
Eric Hajjar wrote: > The new "polished - python" interface looks really promising , but i'm > spending now some time to see how to make things work ! > I went throught all tutorials , and that is OK , > but in my present case i want to add DISULFIDE RESTRAINTS and i want to > change the default "coordinate-output-names" > so if i understand right i have to NOT use the "automodel" class anymore... > > Here starts the trouble ! > > Also: Before i was doing : > SUBROUTINE ROUTINE = 'special_patches' > PATCH RESIDUE_TYPE = 'DISU', RESIDUE_IDS = '27' '50' > RETURN > END_SUBROUTINE
To do this with the new Python interface does not require you to do anything difficult - just like before, you simply redefine the 'special_patches' routine. See http://salilab.org/modeller/FAQ.html#3
I'm not sure what you mean by 'change the default coordinate-output-names'. If you mean that you don't like the .B99*.pdb naming that Modeller uses, there's no easy way to do that in 8v1 (although there will be in the next release). The easiest thing to do would probably be to redefine the single_model routine. See modlib/modeller/automodel/automodel.py for the original version of the routine. Of course, there's no easy way to do this with TOP either.
> now , according to the manual : > "mdl.patch_ss_templates(aln) > > # Create the stereochemical restraints > mdl.restraints.make(aln, restraint_type='stereo', spline_on_site=False) " > > > If i follow those examples in the manual and try to read my alignement > to write the correponding model-with patches constraints. i get a > completely unfolded, linear protein as a result !
The example you give does not build a model, but simply builds an approximate model from the template and internal coordinates. There are many more steps required to build a comparative model (for example, you need to build distance restraints to restrain the model to be like the template).
Ben Webb, Modeller Caretaker
participants (2)
-
Eric Hajjar
-
Modeller Caretaker