Is it possible to do single residue optimization for automodels ?
Dear All,
Since, My main objective is to get a better conformational sample for a particular single point mutation, I have generated a 100 number of SPM models through automodel but Since, Automodel uses the distance restraints from the template target structure alignment there is not much variations when comparing with the original structure. So I thought to relax the restrains by doing additional optimization on mutated position alone like we see in mutate_model.py http://salilab.org/modeller/wiki/Mutate%20model.
Then, I try to modified the automodel script as same like mutate_model.py but I endup in lot of confusions that
1.what shoud I keep for : #conjugate gradient for step in sched: step.optimize(atmsel, max_iterations=200, min_atom_shift=0.001
2.Whether should I include make restraints function ?
3. Is it Ok If I do only optimize and refine step ?
def optimize(atmsel, sched): #conjugate gradient for step in sched: step.optimize(atmsel, max_iterations=200, min_atom_shift=0.001) #md refine(atmsel) cg = conjugate_gradients() cg.optimize(atmsel, max_iterations=200, min_atom_shift=0.001)
#molecular dynamics def refine(atmsel): # at T=1000, max_atom_shift for 4fs is cca 0.15 A. md = molecular_dynamics(cap_atom_shift=0.39, md_time_step=4.0, md_return='FINAL') init_vel = True for (its, equil, temps) in ((200, 20, (150.0, 250.0, 400.0, 700.0, 1000.0)), (200, 600, (1000.0, 800.0, 600.0, 500.0, 400.0, 300.0))): for temp in temps: md.optimize(atmsel, init_velocities=init_vel, temperature=temp, max_iterations=its, equilibrate=equil) init_vel = False
#use homologs and dihedral library for dihedral angle restraints def make_restraints(mdl1, aln): rsr = mdl1.restraints rsr.clear() s = selection(mdl1) for typ in ('stereo', 'phi-psi_binormal'): rsr.make(s, restraint_type=typ, aln=aln, spline_on_site=True) for typ in ('omega', 'chi1', 'chi2', 'chi3', 'chi4'): rsr.make(s, restraint_type=typ+'_dihedral', spline_range=4.0, spline_dx=0.3, spline_min_points = 5, aln=aln, spline_on_site=True)
a = MyModel(env, alnfile=current_file, knowns='3O26', sequence='R1Y', assess_methods=(assess.DOPE, assess.GA341)) a.starting_model = 1 a.ending_model = 1 a.make()
So , Could you guide me on single residue optimization on automodel structures ?
Thanking you in advance
Hi Mahesh,
I’m not an expert in modeler. But, I have carried out some modeling in the past with modeller. You can give different random seed number to get different conformation of your point mutation using the mutate_model.py
for example: env = environ(rand_seed=-49837) to env = environ(rand_seed=200)
By the way, I dont follow your logic when you say "there is not much variations”. For example, when you make changes to a surface residue you may get different side chain orientation, but if you have a buried residue surround by side chains, I believe you won’t get much changes as well as the size and charge will play a factor here.
All the best, David
> On Jun 27, 2016, at 8:08 AM, Mahesh Velusamy vmahesh@ibab.ac.in wrote: > > Dear All, > > Since, My main objective is to get a better conformational sample for a > particular single point mutation, I have generated a 100 number of SPM > models through automodel but Since, Automodel uses the distance restraints > from the template target structure alignment there is not much variations > when comparing with the original structure. So I thought to relax the > restrains by doing additional optimization on mutated position alone like > we see in mutate_model.py http://salilab.org/modeller/wiki/Mutate%20model. > > > Then, I try to modified the automodel script as same like mutate_model.py > but I endup in lot of confusions that > > 1.what shoud I keep for : > #conjugate gradient > for step in sched: > step.optimize(atmsel, max_iterations=200, min_atom_shift=0.001 > > 2.Whether should I include make restraints function ? > > 3. Is it Ok If I do only optimize and refine step ? > > def optimize(atmsel, sched): > #conjugate gradient > for step in sched: > step.optimize(atmsel, max_iterations=200, min_atom_shift=0.001) > #md > refine(atmsel) > cg = conjugate_gradients() > cg.optimize(atmsel, max_iterations=200, min_atom_shift=0.001) > > > #molecular dynamics > def refine(atmsel): > # at T=1000, max_atom_shift for 4fs is cca 0.15 A. > md = molecular_dynamics(cap_atom_shift=0.39, md_time_step=4.0, > md_return='FINAL') > init_vel = True > for (its, equil, temps) in ((200, 20, (150.0, 250.0, 400.0, 700.0, > 1000.0)), > (200, 600, > (1000.0, 800.0, 600.0, 500.0, 400.0, > 300.0))): > for temp in temps: > md.optimize(atmsel, init_velocities=init_vel, temperature=temp, > max_iterations=its, equilibrate=equil) > init_vel = False > > > #use homologs and dihedral library for dihedral angle restraints > def make_restraints(mdl1, aln): > rsr = mdl1.restraints > rsr.clear() > s = selection(mdl1) > for typ in ('stereo', 'phi-psi_binormal'): > rsr.make(s, restraint_type=typ, aln=aln, spline_on_site=True) > for typ in ('omega', 'chi1', 'chi2', 'chi3', 'chi4'): > rsr.make(s, restraint_type=typ+'_dihedral', spline_range=4.0, > spline_dx=0.3, spline_min_points = 5, aln=aln, > spline_on_site=True) > > a = MyModel(env, alnfile=current_file, knowns='3O26', sequence='R1Y', > assess_methods=(assess.DOPE, assess.GA341)) > a.starting_model = 1 > a.ending_model = 1 > a.make() > > So , Could you guide me on single residue optimization on automodel > structures ? > > Thanking you in advance > > > _______________________________________________ > modeller_usage mailing list > modeller_usage@salilab.org > https://salilab.org/mailman/listinfo/modeller_usage
participants (2)
-
david gae
-
Mahesh Velusamy