three_to_one = dict(res_codes)
+def load_pdbid(pdbid,dirname):
+ os.mkdir(dirname)
+ if len(pdbid)==4:
+ file,header=urllib.urlretrieve('http://files.rcsb.org/download/'+pdbid+'.pdb',
+ dirname+'/plik.pdb')
+ else:
+ chain=pdbid[5]
+ pdbid=pdbid[:4]
+ pdb_tmp=urllib.urlopen('http://files.rcsb.org/download/'+pdbid+'.pdb')
+ with open(dirname+'/plik.pdb', 'w') as outfile:
+ for line in pdb_tmp:
+ if line[0:6] == 'SSBOND' and line[15] == chain and line[29] == chain:
+ outfile.write(line)
+ if line[0:6] == 'ATOM ' and line[21] == chain:
+ outfile.write(line)
+ pdb_tmp.close()
+ file=dirname+'/plik.pdb'
+
+ return(file)
+
+
def seq_2d_from_pdb(seq_2d,seq):
if seq_2d =='':
return(seq_2d)
unres_shift = {}
chain_sorted=[]
newchain = True
-
+ i=''
for line in file:
if line[0:6] == 'ATOM ' and line[13:15] == 'CA':
aa = three_to_one.get(line[17:20])
chain_start[ch]=i
chain_sorted.extend(ch)
newchain = False
- if line[0:3] == 'TER':
+ if line[0:3] == 'TER' and i != '':
sequence.append('XX')
chain_end[ch]=i
newchain = True
task.jobdirname = "_".join([basename, suffix])
if pdbid:
- os.mkdir(task.jobdirname)
- task.myfile1,header=urllib.urlretrieve('http://files.rcsb.org/download/'+pdbid+'.pdb',
- task.jobdirname+'/plik.pdb')
+ task.myfile1=load_pdbid(pdbid,task.jobdirname)
task.pdbcode=pdbid
else:
task.myfile1=form.cleaned_data["file1"]
pdbid=form.cleaned_data["pdbid"]
if pdbid:
- os.mkdir(task.jobdirname)
- task.myfile1,header=urllib.urlretrieve('http://files.rcsb.org/download/'+pdbid+'.pdb',
- task.jobdirname+'/plik.pdb')
+ task.myfile1=load_pdbid(pdbid,task.jobdirname)
task.pdbcode=pdbid
else:
task.myfile1=form.cleaned_data["file1"]
pdbid=form.cleaned_data["pdbid"]
if pdbid:
- os.mkdir(task.jobdirname)
- task.myfile1,header=urllib.urlretrieve('http://files.rcsb.org/download/'+pdbid+'.pdb',
- task.jobdirname+'/plik.pdb')
+ task.myfile1=load_pdbid(pdbid,task.jobdirname)
task.pdbcode=pdbid
else:
task.myfile1=form.cleaned_data["file1"]
pdbid=form.cleaned_data["pdbid"]
if pdbid:
- os.mkdir(task.jobdirname)
- task.myfile1,header=urllib.urlretrieve('http://files.rcsb.org/download/'+pdbid+'.pdb',
- task.jobdirname+'/plik.pdb')
+ task.myfile1=load_pdbid(pdbid,task.jobdirname)
task.pdbcode=pdbid
else:
task.myfile1=form.cleaned_data["file1"]
pdbid=form.cleaned_data["pdbid"]
if pdbid:
- os.mkdir(task.jobdirname)
- task.myfile1,header=urllib.urlretrieve('http://files.rcsb.org/download/'+pdbid+'.pdb',
- task.jobdirname+'/plik.pdb')
+ task.myfile1=load_pdbid(pdbid,task.jobdirname)
task.pdbcode=pdbid
else:
task.myfile1=form.cleaned_data["file1"]
task = get_object_or_404(Task, id=task_id)
if request.method == 'POST':
if '_example' in request.POST:
- data= {'name':task.name,'pdbid':'1E0G','md_pdbref':True,
- 'md_nstep':500000,'md_lang':'berendsen','unres_ff':'opt-wtfsa-2',
- 'remd_cluter_temp':280}
- form = TaskForm_remd_a(initial=data)
+ data= {'name':task.name,'pdbid':'5G3Q:B','md_pdbref':True,
+ 'md_nstep':2000000,'md_lang':'berendsen','unres_ff':'FF2',
+ 'remd_cluter_temp':290,'md_2d':'--EEEEEEE------EEEEEE------EEEEEE------HHHHHHHHHHH---HHHHHHHHHHHHHHHHHHHHHHH---'}
+ form = TaskForm_remd_a(initial=data)
+ task.example='casp12'
+ 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',
pdbid=form.cleaned_data["pdbid"]
if pdbid:
- os.mkdir(task.jobdirname)
- task.myfile1,header=urllib.urlretrieve('http://files.rcsb.org/download/'+pdbid+'.pdb',
- task.jobdirname+'/plik.pdb')
+ task.myfile1=load_pdbid(pdbid,task.jobdirname)
task.pdbcode=pdbid
else:
task.myfile1=form.cleaned_data["file1"]
else:
return redirect('/')
else:
- if task.unres_ff == 'FF2':
+ if task.example == 'casp12':
+ data= {'name':task.name,'nrep':task.remd_nrep,'multiplexing':
+ '["2", "2", "2", "2", "2", "2", "2", "2"]',
+ 'temperatures':
+ '["270", "280", "290", "300", "310", "320", "330", "340"]'
+ }
+ elif task.unres_ff == 'FF2':
data= {'name':task.name,'nrep':task.remd_nrep,'multiplexing':
'["1", "1", "1", "1", "1", "1", "1", "1"]',
'temperatures':