changeset 6:f201e8c6e004 draft default tip

Uploaded
author ben-warren
date Mon, 07 Jul 2014 19:28:17 -0400
parents b321e0517be3
children
files README.md design_primers.py design_primers.xml umelt_service.py
diffstat 4 files changed, 20 insertions(+), 11 deletions(-) [+]
line wrap: on
line diff
--- a/README.md	Thu May 22 20:30:19 2014 -0400
+++ b/README.md	Mon Jul 07 19:28:17 2014 -0400
@@ -1,15 +1,15 @@
 galaxy-pcr-markers
 ==================
 
-Scripts for design of PCR-based Marker Assays from DNA sequence variant data, and xml wrappers for use in  Galaxy  workflow environment 
+Scripts for design of PCR-based Marker Assays from DNA sequence variant data, and xml wrappers for use in the  Galaxy  workflow environment 
 
 Also available for download at Galaxy Toolshed http://toolshed.g2.bx.psu.edu/
 hg clone http://toolshed.g2.bx.psu.edu/repos/john-mccallum/pcr_markers
 
-NOTE that the primer design tool *design_primers.py*  relies on EMBOSS ePrimer3 which depends on Primer3 1.1.4.
-The updated tool *design_HRM_primers.py* does not have this restriction and should work with Primer3 V2.
+NOTE that the primer design tool *design_primers.py*  no longer relies on EMBOSS ePrimer3 (which depends on Primer3 1.1.4.)
+ and should work with Primer3 V2.
 
-Please see development branch HRM for optimised design of high-resolution melting PCR assays using the uMelt web service at University of Utah.
+This release adds optimised design of high-resolution melting PCR assays using the uMelt web service provided by the Wittwer Lab at University of Utah https://www.dna.utah.edu/umelt/umelt.html
 
 
 **CITATION**
@@ -19,6 +19,9 @@
 
 BMC Genomics 2012, 13:637  http://www.biomedcentral.com/1471-2164/13/637/abstract
 
+uMELT: prediction of high-resolution melting curves and dynamic melting profiles of PCR products in a rich web application.
+Zachary Dwight1, Robert Palais and Carl T. Wittwer http://bioinformatics.oxfordjournals.org/content/27/7/1019
+
 **Acknowledgements**
 Current development of these tools is funded by the New Zealand Ministry for Business, Innovation & Employment project 'Virtual Institute of Statistical Genetics' (VISG)
 See http://www.visg.co.nz
--- a/design_primers.py	Thu May 22 20:30:19 2014 -0400
+++ b/design_primers.py	Mon Jul 07 19:28:17 2014 -0400
@@ -159,19 +159,22 @@
 				amp_end=int(primerset['PRIMER_RIGHT'].split(',')[0])
                                 ref_melt_Tm=0
                                 var_melt_Tm=0
+                                diff_melt=0
                                 if my_args.run_uMelt:
                                     try:
                                         ref_melt_Tm=umelts.getTm(umelts.getmelt(amp_seq.tostring()[amp_start:amp_end+1]))
 					var_melt_Tm=umelts.getTm(umelts.getmelt(mutamp_seq.tostring()[amp_start:amp_end+1]))
+                                        diff_melt=abs(ref_melt_Tm - var_melt_Tm)
                                     except:
-					ref_melt_Tm=0 ##preferably something more informative?
-					var_melt_Tm=0 ##exception handling to be added
+					ref_melt_Tm="NA" ##preferably something more informative?
+					var_melt_Tm="NA" ##exception handling to be added
+                                        diff_melt="NA"
                                 reference_seq=target_feat.qualifiers['Reference_seq'][0]
                                 if target_feat.qualifiers.has_key('Variant_seq'):
                                     variant_seq=target_feat.qualifiers['Variant_seq'][0]
                                 else:
                                     variant_seq="NA"
-                                print mytarget.id, featLocation + 1 ,reference_seq, variant_seq,amp_end-amp_start,primerset['PRIMER_LEFT_SEQUENCE'],primerset['PRIMER_RIGHT_SEQUENCE'], ref_melt_Tm,var_melt_Tm,abs(ref_melt_Tm-var_melt_Tm)#, amp_seq.tostring()[amp_start:amp_end+1], mutamp_seq.tostring()[amp_start:amp_end+1]
+                                print mytarget.id, featLocation + 1 ,reference_seq, variant_seq,amp_end-amp_start,primerset['PRIMER_LEFT_SEQUENCE'],primerset['PRIMER_RIGHT_SEQUENCE'], ref_melt_Tm,var_melt_Tm,diff_melt#, amp_seq.tostring()[amp_start:amp_end+1], mutamp_seq.tostring()[amp_start:amp_end+1]
 
 my_args.gff_file.close()
 my_args.in_file.close()
--- a/design_primers.xml	Thu May 22 20:30:19 2014 -0400
+++ b/design_primers.xml	Mon Jul 07 19:28:17 2014 -0400
@@ -23,6 +23,9 @@
   <outputs>
      <data format="tabular"  name="primer_outputfile" />
   </outputs>
+  <stdio>
+        <exit_code range="1:" level="fatal" description="Fatal Error" />
+  </stdio>
 <help>
 .. class:: infomark
 
--- a/umelt_service.py	Thu May 22 20:30:19 2014 -0400
+++ b/umelt_service.py	Mon Jul 07 19:28:17 2014 -0400
@@ -22,11 +22,11 @@
     try:
         response = urllib2.urlopen(req,timeout=timeout_sec)
     except urllib2.HTTPError, e:
-        print 'The server couldn\'t fulfill the request.'
-        print 'Error code: ', e.code
+        print >> sys.stderr, 'The server couldn\'t fulfill the request.'
+        print >> sys.stderr, 'Error code: ', e.code
     except urllib2.URLError, e:
-        print 'We failed to reach a server.'
-        print 'Reason: ', e.reason
+        print >> sys.stderr, 'We failed to reach a server.'
+        print >> sys.stderr, 'Reason: ', e.reason
     else:
         melt_data = response.read()
         tree = ET.fromstring(melt_data)