switch for respa, D aminoacids, saxs tutorial, license
authorCezary Czaplewski <czarek@chem.univ.gda.pl>
Fri, 22 Dec 2017 13:40:47 +0000 (14:40 +0100)
committerCezary Czaplewski <czarek@chem.univ.gda.pl>
Fri, 22 Dec 2017 13:40:47 +0000 (14:40 +0100)
19 files changed:
django_simple/todo/forms.py
django_simple/todo/jobfiles.py
django_simple/todo/templates/about.html
django_simple/todo/templates/details1.html
django_simple/todo/templates/input.html
django_simple/todo/templates/tutorial.html
django_simple/todo/views.py
static/saxs1.png [new file with mode: 0644]
static/saxs10.png [new file with mode: 0644]
static/saxs11.png [new file with mode: 0644]
static/saxs12.png [new file with mode: 0644]
static/saxs2.png [new file with mode: 0644]
static/saxs3.png [new file with mode: 0644]
static/saxs4.png [new file with mode: 0644]
static/saxs5.png [new file with mode: 0644]
static/saxs6.png [new file with mode: 0644]
static/saxs7.png [new file with mode: 0644]
static/saxs8.png [new file with mode: 0644]
static/saxs9.png [new file with mode: 0644]

index 5eb67fb..16d942a 100644 (file)
@@ -254,6 +254,7 @@ class TaskForm_md_a(forms.Form):
                   help_text='coupling to the thermal bath (Berendsen)')
      md_scal_fric = forms.FloatField(label='scal_froc',initial=0.02,
                   help_text='scaling of the friction coefficients (Langevin)')
                   help_text='coupling to the thermal bath (Berendsen)')
      md_scal_fric = forms.FloatField(label='scal_froc',initial=0.02,
                   help_text='scaling of the friction coefficients (Langevin)')
+     md_respa = forms.BooleanField(required=False,initial=True,label='RESPA')
      md_mdpdb = forms.BooleanField(required=False,label='trajectory as PDB')
 
      boxx = forms.FloatField(label='Box X',initial=1000.0,
      md_mdpdb = forms.BooleanField(required=False,label='trajectory as PDB')
 
      boxx = forms.FloatField(label='Box X',initial=1000.0,
@@ -403,6 +404,8 @@ class TaskForm_remd_a(forms.Form):
 #     remd_traj1file = forms.BooleanField(required=False,label='single trajectory file',initial='true')
 #     remd_rest1file = forms.BooleanField(required=False,label='single restart file',initial='true')
 
 #     remd_traj1file = forms.BooleanField(required=False,label='single trajectory file',initial='true')
 #     remd_rest1file = forms.BooleanField(required=False,label='single restart file',initial='true')
 
+     md_respa = forms.BooleanField(required=False,initial=True,label='RESPA')
+
      boxx = forms.FloatField(label='Box X',initial=1000.0,
                        help_text='box x dimension')
      boxy = forms.FloatField(label='Box Y',initial=1000.0,
      boxx = forms.FloatField(label='Box X',initial=1000.0,
                        help_text='box x dimension')
      boxy = forms.FloatField(label='Box Y',initial=1000.0,
index fd7fd7c..2badbc2 100644 (file)
@@ -90,7 +90,7 @@ CUTOFF=7.00000 WCORR4=0.00000"""
           if seq[-1]=='X':
             dimen3-=1
   
           if seq[-1]=='X':
             dimen3-=1
   
-       nogly ='CDSQKIPTFNHLRWAVEYM'
+       nogly ='CDSQKIPTFNHLRWAVEYMcdsqkiptfnhlrwaveym'
        seq2 = ''.join([c for c in seq if c in nogly])
   
        dimen3=(dimen3+len(seq2))*3
        seq2 = ''.join([c for c in seq if c in nogly])
   
        dimen3=(dimen3+len(seq2))*3
index 1bc49fb..62d24d9 100644 (file)
@@ -55,6 +55,14 @@ medium-resolution force field.
 </li>
 
 <li>
 </li>
 
 <li>
+A. Liwo, S. Ołdziej, C. Czaplewski, D. Kleinerman, P. Blood and H.A.
+Scheraga. Implementation of molecular dynamics and its extensions with the
+coarse-grained UNRES force field on massively parallel systems; towards
+millisecond-scale simulations of protein structure, dynamics, and
+thermodynamics. <i>J. Chem. Theory Comput.<i> 2010, 6, 890-909.
+</li>
+
+<li>
 A. Liwo, M. Baranowski, C. Czaplewski, E. Gołaś, Y. He, D. Jagieła, 
 P. Krupa, M. Maciejczyk, M. Makowski, M.A. Mozolewska, A. Niadzvedtski, 
 S. Ołdziej, H.A. Scheraga, A.K. Sieradzan, R. Ślusarz, T. Wirecki, Y. Yin, 
 A. Liwo, M. Baranowski, C. Czaplewski, E. Gołaś, Y. He, D. Jagieła, 
 P. Krupa, M. Maciejczyk, M. Makowski, M.A. Mozolewska, A. Niadzvedtski, 
 S. Ołdziej, H.A. Scheraga, A.K. Sieradzan, R. Ślusarz, T. Wirecki, Y. Yin, 
@@ -79,8 +87,44 @@ Protein Structure and Dynamics.
 <i>J. Chem. Inf. Model.</i> 2017, 57, 2364–2377.
 </li>
 
 <i>J. Chem. Inf. Model.</i> 2017, 57, 2364–2377.
 </li>
 
+<li>
+A. Karczyńska, M.A. Mozolewska, P. Krupa, A. Giełdoń, A. Liwo, C.
+Czaplewski.Prediction of protein structure with the coarse-grained UNRES
+force field assisted by small X-ray scattering data and knowledge-based
+information.
+<i>Proteins: Struct. Funct. Bioinf.</i> 2017, CASP12 special issue DOI: 10.1002/prot.25421
+</li>
+
 </ol>
 
 </ol>
 
+<p>
+License terms of UNRES package implemented in the server
+<ul>
+<li>
+     This software is provided free of charge to academic users, subject to
+     the condition that no part of it be sold or used otherwise for
+     commercial purposes, including, but not limited to its incorporation
+     into commercial software packages, without written consent from the
+     authors. For permission contact Prof. H. A. Scheraga, Cornell
+     University.
+<li>
+     This software package is provided on an "as is" basis. We in no way
+     warrant either this software or results it may produce.
+<li>             
+     Reports or publications using this software package must
+     contain an acknowledgment to the authors and the NIH Resource
+     in the form commonly used in academic research.
+</ul>             
+
+Third party software employed in the server
+<ul> 
+<li> <a href="http://pymol.org"> pymol </a>
+<li> convpdb.pl from <a href="http://www.mmtsb.org/">MMTSB Tool Set</a>
+<li> tleap, sander and ambpdb from <a href="ambermd.org">Amber Tools</a>
+<li> <a href="http://cssb.biology.gatech.edu/PULCHRA"> pulchra </a>
+<li> <a href="http://dunbrack.fccc.edu/scwrl4/"> Scwrl4</a>
+<li> <a href="https://zhanglab.ccmb.med.umich.edu/TM-score/">tmscore</a>
+</ul>
 </div>
 
 </div>
 </div>
 
 </div>
index eaf6ff3..7cc82df 100644 (file)
@@ -194,6 +194,12 @@ Created {{ task.created_date  }}
                            <div class="col-xs-10"> mdpdb </div>
                            <div class="col-xs-10">{{ task.md_mdpdb}}</div>
                        </li>           
                            <div class="col-xs-10"> mdpdb </div>
                            <div class="col-xs-10">{{ task.md_mdpdb}}</div>
                        </li>           
+                       <li class="list-group-item task-item">
+                           <div class="col-xs-10"> RESPA </div>
+                           <div class="col-xs-10">{{ task.md_respa}}</div>
+                       </li>           
+                       
+                       
         {% endif %}
 
         {% if task.type == "remd" %}
         {% endif %}
 
         {% if task.type == "remd" %}
@@ -267,6 +273,11 @@ Created {{ task.created_date  }}
                        </li>   
                        
                        {% endif %}
                        </li>   
                        
                        {% endif %}
+
+                       <li class="list-group-item task-item">
+                           <div class="col-xs-10"> RESPA </div>
+                           <div class="col-xs-10">{{ task.md_respa}}</div>
+                       </li>           
                                
                        <li class="list-group-item task-item">
                            <div class="col-xs-10"> temperatures </div>
                                
                        <li class="list-group-item task-item">
                            <div class="col-xs-10"> temperatures </div>
index 9189f6b..b667f4a 100644 (file)
@@ -22,11 +22,24 @@ server).
 <li>
 Disulfide bonds are read from PDB based on SSBOND records and for multichain
 protein COMPND record with propers CHAIN: tokens listing all chains in the
 <li>
 Disulfide bonds are read from PDB based on SSBOND records and for multichain
 protein COMPND record with propers CHAIN: tokens listing all chains in the
-PDB file.
+PDB file. See example:
+<pre>
+COMPND   3 CHAIN: A, B, C, D;
+SSBOND   1 CYS C  107    CYS C  138
+SSBOND   2 CYS C  124    CYS C  139
+SSBOND   3 CYS C  137    CYS C  149
+SSBOND   4 CYS D  107    CYS D  138
+SSBOND   5 CYS D  124    CYS D  139
+SSBOND   6 CYS D  137    CYS D  149
+</pre>
 <li> A protein structure with disulfide bonds and no corresponding 
 SSBOND records will result in clashes and a very high energy 
 which can crash calculations.
 <li>
 TER records in PDB file are read to recognize chain's ends.
 <li> A protein structure with disulfide bonds and no corresponding 
 SSBOND records will result in clashes and a very high energy 
 which can crash calculations.
 <li>
 TER records in PDB file are read to recognize chain's ends.
+<li>
+Distance distribution (from SAXS experiment) cam be added for MREMD
+simulations in advanced mode. First column distance, second column
+distribution function value (separated by space).
 </ol>
 {% endblock %}
 </ol>
 {% endblock %}
index d59175c..6e9bbde 100644 (file)
@@ -122,7 +122,7 @@ of temperature are shown. Replica exchanges are analyzed.
 <p>
 Finally cluster analysis is performed to select 5 families of conformations,
 and representative model from each family is converted to all-atom
 <p>
 Finally cluster analysis is performed to select 5 families of conformations,
 and representative model from each family is converted to all-atom
-and refined. 
+and refined. PDB files can be downloaded by clicking on the picture.
 <p>
 <a href="static/remd9.png"><img src="static/remd9.png" width="300px"></a>
 
 <p>
 <a href="static/remd9.png"><img src="static/remd9.png" width="300px"></a>
 
@@ -138,6 +138,60 @@ dissulfide bonds, MD simulations of 1L2Y starting from extended chain
 and replica exchange simulations of 1E0G starting form extended chain 
 using new UNRES force field and Berendsen thermostat.
 
 and replica exchange simulations of 1E0G starting form extended chain 
 using new UNRES force field and Berendsen thermostat.
 
+<hr>
+<h4><li>
+Distance distribution restrained (simulated SAXS data)
+replica exchange molecular dynamics of 
+Bacteriocin CbnXY (PDB code:5UJQ) starting from the extended chain.
+<br>
+(Use <i>Load example SAXS data</i> button in advanced mode)
+</h4>  
+<div>
+    <fieldset class="majorpoints">
+        <legend class="majorpointslegend"
+            style="background-color:#d3d3d3;cursor: pointer;">Show</legend>
+    
+    <div class="hiders" style="display:none" >
+<img src="static/saxs1.png" style="border:2px solid blueviolet">
+<br>
+...
+<br>
+<img src="static/saxs2.png" style="border:2px solid blueviolet">
+<p>
+
+Plots of histograms of UNRES energy for each temperature, and
+energy vs temperature are presented.
+The weighted histogram analysis (WHAM) is applied to compute the
+probabilities of the obtained conformations to occur at particular
+temperatures, plots of heat capacity and average RMSD as a functions
+of temperature are shown. Replica exchanges are analyzed.
+<p>
+<a href="static/saxs3.png"><img src="static/saxs3.png" width="300px"></a>
+<a href="static/sasx4.png"><img src="static/saxs4.png" width="300px"></a>
+<a href="static/saxs5.png"><img src="static/saxs5.png" width="300px"></a>
+<a href="static/saxs6.png"><img src="static/saxs6.png" width="300px"></a>
+<a href="static/saxs7.png"><img src="static/saxs7.png" width="300px"></a>
+<a href="static/saxs8.png"><img src="static/saxs8.png" width="300px"></a>
+<a href="static/saxs9.png"><img src="static/saxs9.png" width="300px"></a>
+<a href="static/saxs10.png"><img src="static/saxs10.png" width="300px"></a>
+<p>
+Finally cluster analysis is performed to select 5 families of conformations,
+and representative model from each family is converted to all-atom
+and refined. 
+<p>
+<a href="static/saxs12.png"><img src="static/saxs12.png" width="300px"></a>
+
+<p>
+Additionaly the input reference distance distribution and 
+distance distributions for 5 final models are plotted.
+<p>
+<a href="static/saxs11.png"><img src="static/saxs11.png" width="300px"></a>
+
+
+</div>
+</div>
+
+
 <script src="/static/jquery.min.js"></script>
 
 <script>
 <script src="/static/jquery.min.js"></script>
 
 <script>
index c513fbf..2f358cc 100644 (file)
@@ -25,11 +25,11 @@ res_codes = [
 three_to_one = dict(res_codes)
 
 def seq_add_x(sequence):
 three_to_one = dict(res_codes)
 
 def seq_add_x(sequence):
-    if sequence[0] != 'G':
+    if sequence[0] != 'G' and sequence[0] != 'g':
         sequence='X'+sequence
         sequence='X'+sequence
-    if sequence[-1] != 'G':
+    if sequence[-1] != 'G' and sequence[-1] != 'g':
         sequence=sequence+'X'
         sequence=sequence+'X'
-    set ='CDSQKIPTFNGHLRWAVEYMX'
+    set ='CDSQKIPTFNGHLRWAVEYMXcdsqkiptfnghlrwaveym'
     sequence = ''.join([c for c in sequence if c in set])
 
     return(sequence)    
     sequence = ''.join([c for c in sequence if c in set])
 
     return(sequence)    
@@ -332,6 +332,7 @@ def add_md_a(request,task_id):
              task.md_scal_fric=form.cleaned_data["md_scal_fric"]
              task.md_mdpdb=form.cleaned_data["md_mdpdb"]
              task.unres_ff=form.cleaned_data["unres_ff"]
              task.md_scal_fric=form.cleaned_data["md_scal_fric"]
              task.md_mdpdb=form.cleaned_data["md_mdpdb"]
              task.unres_ff=form.cleaned_data["unres_ff"]
+             task.md_respa=form.cleaned_data["md_respa"]             
              task.boxx=form.cleaned_data["boxx"]
              task.boxy=form.cleaned_data["boxy"]             
              task.boxz=form.cleaned_data["boxz"]             
              task.boxx=form.cleaned_data["boxx"]
              task.boxy=form.cleaned_data["boxy"]             
              task.boxz=form.cleaned_data["boxz"]             
@@ -506,6 +507,7 @@ def add_remd_a(request,task_id):
              task.remd_nstex=form.cleaned_data["remd_nstex"]
              task.md_ntwx=form.cleaned_data["md_ntwx"]             
              task.md_ntwe=form.cleaned_data["md_ntwe"]
              task.remd_nstex=form.cleaned_data["remd_nstex"]
              task.md_ntwx=form.cleaned_data["md_ntwx"]             
              task.md_ntwe=form.cleaned_data["md_ntwe"]
+             task.md_respa=form.cleaned_data["md_respa"]
 #             task.remd_traj1file=form.cleaned_data["remd_traj1file"]
 #             task.remd_rest1file=form.cleaned_data["remd_rest1file"]
 
 #             task.remd_traj1file=form.cleaned_data["remd_traj1file"]
 #             task.remd_rest1file=form.cleaned_data["remd_rest1file"]
 
diff --git a/static/saxs1.png b/static/saxs1.png
new file mode 100644 (file)
index 0000000..4906cd0
Binary files /dev/null and b/static/saxs1.png differ
diff --git a/static/saxs10.png b/static/saxs10.png
new file mode 100644 (file)
index 0000000..02c19a9
Binary files /dev/null and b/static/saxs10.png differ
diff --git a/static/saxs11.png b/static/saxs11.png
new file mode 100644 (file)
index 0000000..765bf97
Binary files /dev/null and b/static/saxs11.png differ
diff --git a/static/saxs12.png b/static/saxs12.png
new file mode 100644 (file)
index 0000000..1a37850
Binary files /dev/null and b/static/saxs12.png differ
diff --git a/static/saxs2.png b/static/saxs2.png
new file mode 100644 (file)
index 0000000..b5da815
Binary files /dev/null and b/static/saxs2.png differ
diff --git a/static/saxs3.png b/static/saxs3.png
new file mode 100644 (file)
index 0000000..f01c227
Binary files /dev/null and b/static/saxs3.png differ
diff --git a/static/saxs4.png b/static/saxs4.png
new file mode 100644 (file)
index 0000000..0174768
Binary files /dev/null and b/static/saxs4.png differ
diff --git a/static/saxs5.png b/static/saxs5.png
new file mode 100644 (file)
index 0000000..8039452
Binary files /dev/null and b/static/saxs5.png differ
diff --git a/static/saxs6.png b/static/saxs6.png
new file mode 100644 (file)
index 0000000..648fede
Binary files /dev/null and b/static/saxs6.png differ
diff --git a/static/saxs7.png b/static/saxs7.png
new file mode 100644 (file)
index 0000000..70db5b1
Binary files /dev/null and b/static/saxs7.png differ
diff --git a/static/saxs8.png b/static/saxs8.png
new file mode 100644 (file)
index 0000000..b362a16
Binary files /dev/null and b/static/saxs8.png differ
diff --git a/static/saxs9.png b/static/saxs9.png
new file mode 100644 (file)
index 0000000..ddf93b8
Binary files /dev/null and b/static/saxs9.png differ