task.md_start=form.cleaned_data["md_start"]
task.md_temp=form.cleaned_data["md_temp"]
task.md_nstep=form.cleaned_data["md_nstep"]
+ task.md_total_steps=task.md_nstep
basename = str(task.owner)
suffix = datetime.datetime.now().strftime("%y%m%d_%H%M%S")
task.md_temp=form.cleaned_data["md_temp"]
task.md_nstep=form.cleaned_data["md_nstep"]
+ task.md_total_steps=task.md_nstep
task.md_ntwe=form.cleaned_data["md_ntwe"]
task.md_ntwx=form.cleaned_data["md_ntwx"]
task.md_dt=form.cleaned_data["md_dt"]
task.md_seed=form.cleaned_data["md_seed"]
task.md_nstep=form.cleaned_data["md_nstep"]
+ task.md_total_steps=task.md_nstep
if any(c.islower() for c in seq):
task.md_respa=False
task.md_seed=form.cleaned_data["md_seed"]
task.md_nstep=form.cleaned_data["md_nstep"]
+ task.md_total_steps=task.md_nstep
task.md_dt=form.cleaned_data["md_dt"]
task.md_lang=form.cleaned_data["md_lang"]
task.md_tau=form.cleaned_data["md_tau"]
Task.objects.get(id=task_id).delete()
return redirect('/')
+@login_required
+def restart(request, task_id):
+ task = get_object_or_404(Task, id=task_id)
+ if os.path.isfile(task.jobdirname+'/finished'):
+ os.remove(task.jobdirname+'/finished')
+ task.running =1
+ task.done=False
+ task.md_total_steps = task.md_total_steps+task.md_nstep
+ task.save()
+ if task.type == 'md':
+ os.chdir(task.jobdirname)
+ ret_code = subprocess.Popen(' /opt/torque/bin/qsub pbs.csh', shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
+ os.chdir('..')
+ elif task.type == 'remd':
+ os.chdir(task.jobdirname)
+ tmp1=json.loads(task.remd_multi_m)
+ nreplicas=sum(map(int, tmp1))
+ with open('file_wham.inp','r') as f1, open ('file_wham.tmp','w') as f2:
+ for line in f1:
+ if 'rec_end=' in line:
+ rec=task.md_total_steps/task.md_ntwx
+ f2.write('nfile_cx=1 rec_start='+str(rec/10)
+ +' rec_end='+str(rec)+' totraj='+str(nreplicas)+'\n')
+ elif 'isampl=' in line:
+ if task.md_total_steps/task.md_ntwx*nreplicas<=8000:
+ isampl=1
+ else:
+ isampl=int(task.md_total_steps/task.md_ntwx*nreplicas/8000)
+ f2.write('{:79}'.format(' isampl='+str(isampl))+'&\n')
+ else:
+ f2.write(line)
+ os.remove('file_wham.inp')
+ os.rename('file_wham.tmp','file_wham.inp')
+ ret_code = subprocess.Popen(' /opt/torque/bin/qsub pbs8.csh', shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
+ os.chdir('..')
+ return redirect('/')
+
+
def refresh_done1(request, task_id):
task = get_object_or_404(Task, id=task_id)
user = task.owner