from .models import Task
import datetime
import os
+#---
+from django.core.files import File
+#---
import subprocess
import json
from lazysignup.decorators import allow_lazy_user
return seq,json.dumps(ssbond)
+#---
+def from_nmr(file):
+ linijek_nmr=0
+ for line in file:
+ linijek_nmr += 1
+ return(linijek_nmr)
+#---
@login_required
def index(request):
data= {'name':task.name,'pdbid':'1L2Y','md_start':'extconf',
'md_pdbref':True,'md_mdpdb':True,'md_seed':-39912345}
form = TaskForm_md_a(initial=data)
+ elif '_example_nmr' in request.POST:
+ data= {'name':task.name,'file1':'files/6msp-from-THR.pdb','md_pdbref':True,
+ 'md_nstep':20000,'md_lang':'berendsen','unres_ff':'NEWCT-9P','md_seed':-19712641,
+ 'boxx':1000,'boxy':1000,'boxz':1000,'use_nmr':True,'file3':'files/N1008_AmbiR-trunc.txt',
+ 'md_seq':'TDELLERLRQLFEELHERGTEIVVEVHINGERDEIRVRNISKEELKKLLERIREKIEREGSSEVEVNVHSGGQTWTFNEK'}
+ form = TaskForm_md_a(initial=data)
else:
form = TaskForm_md_a(request.POST,request.FILES)
if form.is_valid():
suffix = datetime.datetime.now().strftime("%y%m%d_%H%M%S")
task.jobdirname = "_".join([basename, suffix])
+#---v
+ seq_chk=form.cleaned_data["md_seq"]
+#---^
pdbid=form.cleaned_data["pdbid"]
if pdbid:
task.myfile1=load_pdbid(pdbid,task.jobdirname)
task.pdbcode=pdbid
else:
- task.myfile1=form.cleaned_data["file1"]
+#---v
+#zastapione linijkami ponizej task.myfile1=form.cleaned_data["file1"]
+ if (seq_chk == 'TDELLERLRQLFEELHERGTEIVVEVHINGERDEIRVRNISKEELKKLLERIREKIEREGSSEVEVNVHSGGQTWTFNEK' and not form.cleaned_data["file1"]):
+ reopn1 = open('files/6msp-from-THR.pdb', 'r')
+ task.myfile1 = File(reopn1)
+# task.myfile1.name='files/6msp-from-THR.pdb'
+ task.save()
+ else:
+ task.myfile1 = form.cleaned_data["file1"]
+#---^
task.md_start=form.cleaned_data["md_start"]
task.md_pdbref=form.cleaned_data["md_pdbref"]
if task.md_start != "pdbstart":
task.ssbond=''
+#---v
+ task.use_nmr=form.cleaned_data["use_nmr"]
+ task.nmr_fordepth=form.cleaned_data["nmr_fordepth"]
+ task.nmr_slope=form.cleaned_data["nmr_slope"]
+ task.nmr_scal=form.cleaned_data["nmr_scal"]
+ if (task.use_nmr):
+ if (seq_chk == 'TDELLERLRQLFEELHERGTEIVVEVHINGERDEIRVRNISKEELKKLLERIREKIEREGSSEVEVNVHSGGQTWTFNEK' and not form.cleaned_data["file3"]):
+ reopn = open('files/N1008_AmbiR-trunc.txt', 'r')
+ task.myfile3 = File(reopn)
+# task.myfile3.name='files/N1008_AmbiR-trunc.txt'
+ task.linijek_nmr=from_nmr(task.myfile3)
+ task.save()
+ else:
+ task.myfile3 = form.cleaned_data["file3"]
+ task.linijek_nmr=from_nmr(form.cleaned_data["file3"])
+
+
+ if (seq_chk == 'TDELLERLRQLFEELHERGTEIVVEVHINGERDEIRVRNISKEELKKLLERIREKIEREGSSEVEVNVHSGGQTWTFNEK' and not form.cleaned_data["file1"]):
+ reopn1 = open('files/6msp-from-THR.pdb', 'r')
+ task.myfile1 = File(reopn1)
+# task.myfile1.name='files/6msp-from-THR.pdb'
+ task.save()
+ else:
+ task.myfile1 = form.cleaned_data["file1"]
+#---^
+
task.md_seed=form.cleaned_data["md_seed"]
task.md_temp=form.cleaned_data["md_temp"]
form = TaskForm_remd_a(initial=data)
task.example='casp12'
task.save()
+ elif '_example_nmr' in request.POST:
+ data= {'name':task.name,'file1':'files/6msp-from-THR.pdb','md_pdbref':True,
+ 'md_nstep':200000,'md_lang':'berendsen','unres_ff':'NEWCT-9P','md_seed':-39712241,
+ 'remd_nrep':4,'boxx':1000,'boxy':1000,'boxz':1000,'use_nmr':True,'file3':'files/N1008_AmbiR-trunc.txt',
+ 'remd_cluter_temp':290,'md_seq':'TDELLERLRQLFEELHERGTEIVVEVHINGERDEIRVRNISKEELKKLLERIREKIEREGSSEVEVNVHSGGQTWTFNEK'}
+ form = TaskForm_remd_a(initial=data)
+ task.example='nmr'
+ task.save()
elif '_example_saxs' in request.POST:
data= {'name':task.name,'pdbid':'5UJQ','md_pdbref':True,
'md_nstep':200000,'md_lang':'langevin','unres_ff':'FF2','md_seed':-39912345,
task.jobdirname = "_".join([basename, suffix])
pdbid=form.cleaned_data["pdbid"]
+#---v
+ seq_chk=form.cleaned_data["md_seq"]
+#---^
if pdbid:
task.myfile1=load_pdbid(pdbid,task.jobdirname)
task.pdbcode=pdbid
else:
- task.myfile1=form.cleaned_data["file1"]
+#---v
+#zastapione linijkami ponizej task.myfile1=form.cleaned_data["file1"]
+ if (seq_chk == 'TDELLERLRQLFEELHERGTEIVVEVHINGERDEIRVRNISKEELKKLLERIREKIEREGSSEVEVNVHSGGQTWTFNEK' and not form.cleaned_data["file1"]):
+ reopn1 = open('files/6msp-from-THR.pdb', 'r')
+ task.myfile1 = File(reopn1)
+# task.myfile1.name='files/6msp-from-THR.pdb'
+ task.save()
+ else:
+ task.myfile1 = form.cleaned_data["file1"]
+#---^
task.md_start=form.cleaned_data["md_start"]
task.md_pdbref=form.cleaned_data["md_pdbref"]
if task.md_start != "pdbstart":
task.ssbond=''
+#---v
+ task.use_nmr=form.cleaned_data["use_nmr"]
+ task.nmr_fordepth=form.cleaned_data["nmr_fordepth"]
+ task.nmr_slope=form.cleaned_data["nmr_slope"]
+ task.nmr_scal=form.cleaned_data["nmr_scal"]
+ if (task.use_nmr):
+ if (seq_chk == 'TDELLERLRQLFEELHERGTEIVVEVHINGERDEIRVRNISKEELKKLLERIREKIEREGSSEVEVNVHSGGQTWTFNEK' and not form.cleaned_data["file3"]):
+ reopn = open('files/N1008_AmbiR-trunc.txt', 'r')
+ task.myfile3 = File(reopn)
+# task.myfile3.name='files/N1008_AmbiR-trunc.txt'
+ task.linijek_nmr=from_nmr(task.myfile3)
+ task.save()
+ else:
+ task.myfile3 = form.cleaned_data["file3"]
+ task.linijek_nmr=from_nmr(form.cleaned_data["file3"])
+
+
+ if (seq_chk == 'TDELLERLRQLFEELHERGTEIVVEVHINGERDEIRVRNISKEELKKLLERIREKIEREGSSEVEVNVHSGGQTWTFNEK' and not form.cleaned_data["file1"]):
+ reopn1 = open('files/6msp-from-THR.pdb', 'r')
+ task.myfile1 = File(reopn1)
+# task.myfile1.name='files/6msp-from-THR.pdb'
+ task.save()
+ else:
+ task.myfile1 = form.cleaned_data["file1"]
+#---^
task.md_seed=form.cleaned_data["md_seed"]
task.md_nstep=form.cleaned_data["md_nstep"]
task.md_total_steps=task.md_nstep
'temperatures':
'["270", "280", "290", "300", "310", "320", "330", "345"]'
}
+ elif task.example == 'nmr':
+ data= {'name':task.name,'nrep':task.remd_nrep,'multiplexing':
+ '["2", "2", "2", "2"]',
+ 'temperatures':
+ '["280", "290", "300", "310"]'
+ }
elif task.unres_ff == 'FF2' and task.type=="dock":
data= {'name':task.name,'nrep':task.remd_nrep,'multiplexing':
'["3", "3", "3", "3", "3", "3", "3", "3"]',