Also - apologies for all the questions - is there any way to easily get the first and last residue of a given chain from the scripting interface?
This would be handy for scripting using functions that take a residue range where one might want to apply the function to an entire arbitrary chain (e.g. fit_residue_range_to_map_by_simplex or score_residue_range_fit_to_map). Cheers, Oliver. On Dec 29, 2013, at 1:34 PM, Oliver Clarke <olibcla...@gmail.com> wrote: > Maybe something like this - where by default it just does a rigid body, but > if morph is set to “Y” it does a more extensive morph at three different > radii: > > set_refinement_immediate_replacement(1) #Accept rigid body without prompting. > mol_id=13 #Which molecule should we modify? > r1=20 > r2=10 > r3=5 > r1_cycles=10 > r2_cycles=5 > r3_cycles=5 > morph="N" #Do extensive morph? > do_rigid="Y" > if do_rigid=="Y": > for ch_id in chain_ids(mol_id): #Rigid body refine each chain first. > rigid_body_refine_by_atom_selection(mol_id, "//%s//"%(ch_id)) > accept_regularizement() > if morph=="Y": #Sequential morph_chain at three radii. > for ch_id in chain_ids(mol_id): > for n1 in range(1,r1_cycles): > morph_fit_chain(mol_id, "%s"%(ch_id), r1) > for n2 in range(1,r2_cycles): > morph_fit_chain(mol_id, "%s"%(ch_id), r2) > for n3 in range(1,r3_cycles): > morph_fit_chain(mol_id, "%s"%(ch_id), r3) > set_refinement_immediate_replacement(0) #Return to default behavior. > > > On Dec 29, 2013, at 9:51 AM, Oliver Clarke <olibcla...@gmail.com> wrote: > >> Thanks Paul - Initially I tried rigid body + 10 cycles of morph_fit_chain at >> a radius of 11 Å - that seemed to work better than rigid body alone, >> although some of the larger domain shifts are still not corrected. >> >> Perhaps I need a larger radius for that - I’ll try doing 10 cycles at a >> radius of 20 Å, followed by 5 each at 10 Å and 5 Å. >> >> Regarding blurred maps, is there any way to adjust the sharpening factor on >> the fly in a script, in such a manner that it can be returned to normal >> afterwards? >> >> Also, Coot seems to write out a copy of the pdb to the coot-backup directory >> after every cycle of morph_chain - is there any way to turn off this >> behavior? Normally it would be fine, but with a few hundred operations that >> adds up to several GB of backup files, which probably slows down the whole >> process somewhat. >> >> Cheers, >> Oliver. >> On Dec 29, 2013, at 6:21 AM, Paul Emsley <pems...@mrc-lmb.cam.ac.uk> wrote: >> >>> On 29/12/13 02:51, Oliver Clarke wrote: >>>> >>>> >>>> I agree that normally rigid body refinement of each chain wouldn’t be very >>>> useful - I’m using this script in a situation where we have a large >>>> complex of many subunits that we need to fit to a quite low-resolution map >>>> (of a related complex from another species), >>> >>> Sounds familiar :-) (... as may be apparent at the Study Weekend). >>> >>>> and an initial round of rigid body fitting seemed to be helpful on >>>> individual chains but was quite laborious when performed manually for each >>>> chain. >>> >>> Eeek. Yes... >>> >>> Also consider Jiggle Fit. >>> >>>> This script seemed to help with that, and I was adding morph_fit_chain in >>>> the hope that it would correct errors in the curvature of helices, or the >>>> orientation of two domains within a multi-domain protein. >>> >>> OK, for the orientation of domains you need a larger radius, performed on >>> the chain. For the curvature of helices you need (I would imagine) a >>> smaller radius performed on a residue selection. >>> >>>> >>>> Yes, that was the problem - It works when I replace chain_id with ch_id. >>>> >>> >>> good. >>> >>>> So you would suggest calling morph_chain several times in succession? >>> >>> Definitely. That and the residue selection version. >>> >>>> That makes sense, because the modifications from one round were quite >>>> subtle. I’ll give it a go with 5-10 rounds and see how it works. >>>> >>>> >>> >>> Also, I found that fitting into blurred maps at the early stages (large >>> radius) was beneficial. >>> >>> It is not yet clear to me what's the best relationship of the round number, >>> resolution, and the radii. >>> >>> Paul. >>> >>> >>> <morph-residues-gui.scm> >> >