Disembl further implementation
authorpvtroshin <pvtroshin@e3abac25-378b-4346-85de-24260fe3988d>
Thu, 3 Feb 2011 10:13:15 +0000 (10:13 +0000)
committerpvtroshin <pvtroshin@e3abac25-378b-4346-85de-24260fe3988d>
Thu, 3 Feb 2011 10:13:15 +0000 (10:13 +0000)
git-svn-id: link to svn.lifesci.dundee.ac.uk/svn/barton/ptroshin/JABA2@3663 e3abac25-378b-4346-85de-24260fe3988d

conf/Executable.properties
conf/settings/DisemblParameters.xml
runner/compbio/runner/disorder/Disembl.java
testsrc/compbio/data/sequence/SequenceUtilTester.java
testsrc/compbio/runner/conservation/AAConTester.java
website/prog_docs/disembl.pdf [new file with mode: 0644]

index 2e4e419..b8e7723 100644 (file)
@@ -72,14 +72,15 @@ jronn.cluster.cpunum=4
 jronn.cluster.settings=-q 64bit-pri.q -pe smp 4 -l h_vmem=1700M -l ram=1700M -l h_cpu=24:00:00\r
 \r
 \r
-### Disembl configuration - NOT DISTRIBUTED ### \r
+### Disembl configuration Tisean - Disembl dependancy cannot be redistributed (!) ### \r
 #local.disembl.bin.windows= \r
 local.disembl.bin=/homes/pvtroshin/soft/DisEMBL-1.4raw/DisEMBL.py\r
 cluster.disembl.bin=/homes/pvtroshin/soft/DisEMBL-1.4raw/DisEMBL.py\r
-#disembl.parameters.file=conf/settings/JronnParameters.xml\r
+disembl.parameters.file=conf/settings/DisemblParameters.xml\r
 disembl.limits.file=conf/settings/DisemblLimits.xml\r
 disembl.cluster.settings=-l h_cpu=24:00:00 -l h_vmem=6000M -l ram=6000M\r
 \r
+### AACon configuration ###\r
 local.aacon.bin.windows=D:\\Java\\jdk1.6.0_14\\bin\\java.exe \r
 local.aacon.bin=/sw/java/latest/bin/java\r
 cluster.aacon.bin=/sw/java/latest/bin/java\r
index 9e50d5d..3820a35 100644 (file)
@@ -3,17 +3,82 @@
        <runnerClassName>compbio.runner.disorder.Disembl</runnerClassName>\r
        <prmSeparator>=</prmSeparator>\r
        <parameters>\r
-               <name>Default parameters should not be changed!</name>\r
-               <description>Normally the default parameters should not be changed. \r
-               If the query protein sequence is very long, >1000 residues, you can download the predictions and \r
-               use a local graph/plotting tool such as Grace or OpenOffice.org to plot and zoom the data. \r
-               Having identified the potential disordered regions, you should now have a good basis for setting \r
-               up expression vectors and/or comparing the data with obtained structural data. \r
-               </description>\r
-               <optionNames>-sg</optionNames>\r
+               <name>Savitzky-Golay smoothing frame</name>\r
+               <description>Algorithm Parameter: Savitzky-Golay smoothing frame</description>\r
+               <optionNames>sg</optionNames>\r
                <furtherDetails>prog_docs/disembl.html</furtherDetails>\r
-               <defaultValue>1</defaultValue>\r
+               <defaultValue>8</defaultValue>\r
+               <validValue>\r
+                       <type>Integer</type>\r
+                       <min>1</min>\r
+                       <max>30</max>\r
+               </validValue>\r
        </parameters>\r
-</runnerConfig>\r
+<!--  \r
+ These can be supported but not recommended to change so what's the point?\r
  \r
\ No newline at end of file
+ Manual: Normally the default parameters should not be changed.\r
+\r
+       <parameters>\r
+               <name>Minimum peak width</name>\r
+               <description>Algorithm Parameter: Minimum peak width.</description>\r
+               <optionNames>pw</optionNames>\r
+               <furtherDetails>prog_docs/disembl.html</furtherDetails>\r
+               <defaultValue>8</defaultValue>\r
+               <validValue>\r
+                       <type>Integer</type>\r
+                       <min>1</min>\r
+                       <max>30</max>\r
+               </validValue>\r
+       </parameters>\r
+       <parameters>\r
+               <name>Maximum join distance</name>\r
+               <description>Algorithm Parameter: Maximum join distance</description>\r
+               <optionNames>jd</optionNames>\r
+               <furtherDetails>prog_docs/disembl.html</furtherDetails>\r
+               <defaultValue>4</defaultValue>\r
+               <validValue>\r
+                       <type>Integer</type>\r
+                       <min>1</min>\r
+                       <max>30</max>\r
+               </validValue>\r
+       </parameters>\r
+       <parameters>\r
+               <name>Coils threshold</name>\r
+               <description>Stringency values for different predictor: Coils threshold</description>\r
+               <optionNames>ct</optionNames>\r
+               <furtherDetails>prog_docs/disembl.html</furtherDetails>\r
+               <defaultValue>1.2</defaultValue>\r
+               <validValue>\r
+                       <type>Float</type>\r
+                       <min>0.1</min>\r
+                       <max>10</max>\r
+               </validValue>\r
+       </parameters>\r
+       <parameters>\r
+               <name>Remark465 threshold</name>\r
+               <description>Stringency values for different predictor: Remark465 threshold</description>\r
+               <optionNames>rt</optionNames>\r
+               <furtherDetails>prog_docs/disembl.html</furtherDetails>\r
+               <defaultValue>1.4</defaultValue>\r
+               <validValue>\r
+                       <type>Float</type>\r
+                       <min>0.1</min>\r
+                       <max>10</max>\r
+               </validValue>\r
+       </parameters>\r
+       <parameters>\r
+               <name>Hot loops threshold</name>\r
+               <description>Stringency values for different predictor: Hot loops threshold.</description>\r
+               <optionNames>lt</optionNames>\r
+               <furtherDetails>prog_docs/disembl.html</furtherDetails>\r
+               <defaultValue>1.2</defaultValue>\r
+               <validValue>\r
+                       <type>Float</type>\r
+                       <min>0.1</min>\r
+                       <max>10</max>\r
+               </validValue>\r
+       </parameters>\r
+       -->\r
+\r
+</runnerConfig>\r
index 716859f..8f4256f 100644 (file)
@@ -20,6 +20,7 @@ import java.util.Map;
 import org.apache.log4j.Logger;\r
 \r
 import compbio.data.sequence.Score;\r
+import compbio.engine.client.CommandBuilder;\r
 import compbio.engine.client.Executable;\r
 import compbio.engine.client.PipedExecutable;\r
 import compbio.engine.client.SkeletalExecutable;\r
@@ -43,6 +44,12 @@ import compbio.runner.Util;
  *      'A default run would be: ./DisEMBL.py 8 8 4 1.2 1.4 1.2 < fasta_file'\r
  *      print 'Mode: "default"(nothing) or "scores" which will give scores per\r
  *      residue in TAB separated format'\r
+ * \r
+ *      Internal parameters names are: sj\r
+ * \r
+ *      //TODO? pw jd ct rt lt\r
+ * \r
+ *      the order is preserved\r
  */\r
 public class Disembl extends SkeletalExecutable<Disembl>\r
                implements\r
@@ -53,6 +60,7 @@ public class Disembl extends SkeletalExecutable<Disembl>
        // Cache for Limits information\r
        private static LimitsManager<Disembl> limits;\r
 \r
+       // CHECK THIS !!!\r
        public static final String KEY_VALUE_SEPARATOR = Util.SPACE;\r
 \r
        public Disembl() {\r
@@ -114,4 +122,15 @@ public class Disembl extends SkeletalExecutable<Disembl>
                return this.getClass();\r
        }\r
 \r
+       @Override\r
+       public CommandBuilder<Disembl> getParameters(ExecProvider provider) {\r
+               // If Savitzky-Golay smoothing parameter is specified then set it\r
+               String val = cbuilder.getParamValue("sg");\r
+               log.info("DisEMBL sav-gol value: " + val);\r
+               if (val != null) {\r
+                       cbuilder.removeParam("sg");\r
+                       cbuilder.setFirst(val);\r
+               }\r
+               return super.getParameters(provider);\r
+       }\r
 }\r
index 1460b52..82aa4a3 100644 (file)
@@ -123,7 +123,7 @@ public class SequenceUtilTester {
                        Map<String, Score> aseqs = SequenceUtil.readJRonn(fio);\r
                        assertNotNull(aseqs);\r
                        assertEquals(aseqs.size(), 3);\r
-                       Score aseq = aseqs.get(0);\r
+                       Score aseq = aseqs.get("Foobar");\r
                        assertNotNull(aseq);\r
                        assertNotNull(aseq.getScores());\r
                        // System.out.println(aseq);\r
index 859c4ae..a18b2c4 100644 (file)
@@ -190,7 +190,7 @@ public class AAConTester {
                        assertNotNull(al1.getResults());\r
                        HashSet<Score> annotations = confAAcon.getResults();\r
                        assertNotNull(annotations);\r
-                       assertEquals(annotations.size(), 1);\r
+                       assertEquals(annotations.size(), 18);\r
                        assertEquals(al1.getResults(), annotations);\r
                } catch (JobSubmissionException e) {\r
                        e.printStackTrace();\r
diff --git a/website/prog_docs/disembl.pdf b/website/prog_docs/disembl.pdf
new file mode 100644 (file)
index 0000000..30a667a
Binary files /dev/null and b/website/prog_docs/disembl.pdf differ