Repository 'mcl'
hg clone https://toolshed.g2.bx.psu.edu/repos/iuc/mcl

Changeset 0:649b9cb20668 (2022-06-13)
Next changeset 1:e092787c0a29 (2023-11-12)
Commit message:
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/mcl commit 6fcfaa3d5fefc854ec7398c2848e8db669593b71
added:
mcl.xml
test-data/mcl-simple-pruning.out
test-data/mcl-simple.mci
test-data/mcl-simple.mci-no-tab.out
test-data/mcl-simple.mci.tab
test-data/mcl-simple.out
test-data/mcl-simple.sif
test-data/mcl-simple.tabular
b
diff -r 000000000000 -r 649b9cb20668 mcl.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/mcl.xml Mon Jun 13 17:34:32 2022 +0000
[
b'@@ -0,0 +1,262 @@\n+<tool id="mcl" name="MCL" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="21.05">\n+    <description>Markov Cluster Algorithm for graphs</description>\n+    <macros>\n+        <token name="@TOOL_VERSION@">14.137</token>\n+        <token name="@VERSION_SUFFIX@">0</token>\n+    </macros>\n+    <xrefs>\n+        <xref type="bio.tools">mcl</xref>\n+    </xrefs>\n+    <requirements>\n+        <requirement type="package" version="@TOOL_VERSION@">mcl</requirement>\n+    </requirements>\n+    <version_command>mcl --version</version_command>\n+    <command detect_errors="aggressive">\n+        <![CDATA[\n+\n+mcl \'$input\'\n+\t-I \'$inflation\'\n+\t$input_type_select.input_type\n+\t-V all -te \\${GALAXY_SLOTS:-1}\n+\t$sum_loops\n+\t$discard_loops\n+\t#if $verbosity\n+        #for $v in $verbosity\n+                -v $v\n+        #end for\n+\t#end if\n+\t#if $reweight\n+\t\t\t-c $reweight\n+\t#end if\n+\t#if $transform\n+        #if $input_type_select.input_type == "--abc" or $input_type_select.input_type == "--sif"\n+                -abc-tf \'$transform\'\n+        #else if $input_type_select.input_type == ""\n+                -tf \'$transform\'\n+        #end if\n+\t#end if\n+\t#if $input_type_select.input_type == "--sif"\n+        $input_type_select.expect_values\n+\t#else if $input_type_select.input_type == "" and $input_type_select.use_tab\n+\t\t-use-tab $input_type_select.use_tab\n+\t#end if\n+\t#if $pruning_options.cutoff\n+        -P $pruning_options.cutoff\n+\t#end if\n+\t#if $pruning_options.selection_number\n+        -S $pruning_options.selection_number\n+\t#end if\n+\t#if $pruning_options.recover_number\n+        -R $pruning_options.recover_number\n+\t#end if\n+\t#if $pruning_options.recover_percentage\n+        -pct $pruning_options.recover_percentage\n+\t#end if\n+\t-o \'$output\'\n+\n+\t]]>\n+    </command>\n+    <inputs>\n+        <conditional name="input_type_select">\n+            <param name="input_type" type="select" label="Input type">\n+                <option value="--abc" selected="true">Labeled</option>\n+                <option value="--sif">SIF</option>\n+                <option value="">Matrix</option>\n+            </param>\n+            <when value="">\n+                <param type="data" format="tabular" name="use_tab" argument="-use-tab" label="tabular label input" optional="true" help="use tab file to convert the output to labels"/>\n+            </when>\n+            <when value="--sif">\n+                <param type="boolean" name="expect_values" checked="false" truevalue="--expect-values" falsevalue="" argument="--expect-values" label="expect label:weight format" optional="true" help="accept extended SIF (label:weight fields)" />\n+            </when>\n+            <when value="--abc" />\n+        </conditional>\n+        <param type="data" format="txt,tabular,sif" name="input" label="Input" optional="false" />\n+        <param name="inflation" argument="-I" type="float" value="2.0" label="Inflation" min="1" max="6" help="This value is the main handle for affecting cluster granularity. It is usually chosen somewhere in the range [1.2-5.0]. -I 5.0 will tend to result in fine-grained clusterings, and -I 1.2 will tend to result in very coarse grained clusterings. Your mileage will vary depending on the characteristics of your data. That is why it is a good idea to test the quality and coherency of your clusterings using clm dist and clm info. This will most likely reveal that certain values of -I are simply not right for your data." />\n+        <param name="transform" type="text" area="true" label="Transform input matrix values" help="See https://micans.org/mcl/man/mcxio.html#trans for the transformation syntax" >\n+            <sanitizer>\n+                <valid initial="default">\n+                  <add value="#" />\n+                </valid>\n+              </sanitizer>\n+        </param>\n+        <param argument="--discard-loops" type="boolean" checked="true" truevalue="--discard-loops=y" falsevalue="--discard-loops=n" label="Discard loops in input" help="Remove any loops that are prese'..b'ight fields)\n+\t\n+\tMatrix\n+\t\tMCL internal matrix representation. See https://micans.org/mcl/man/mcxio.html#gspec for detailed informa.\n+\t\ttion. Use -use-tab to write label output using dictionary file\n+\n+\t  -use-tab <fname> (use mapping to write)\n+\t\t-use-tab is only useful when matrix input is used. It will use the tab file to convert the output to lab-\n+\t\tels; it does not fail on indices missing from the tab file, but will bind these to generated dummy labels. \n+\n+**Options**::\n+\n+\t-I <num> (inflation)\n+\t\tSets the main inflation value to <num>. This value is the main handle for affecting cluster granularity.\n+\t\tIt is usually chosen somewhere in the range [1.2-5.0]. -I 5.0 will tend to result in fine-grained clust-\n+\t\terings, and -I 1.2 will tend to result in very coarse grained clusterings. Your mileage will vary depen-\n+\t\tding on the characteristics of your data.\n+\n+\t-tf <tf-spec> (transform)\n+\t\ttransforms the values of the input matrix according to <tf-spec>\n+\n+\t-c <num> (reweight loops)\n+\t\tincrease loop-weights <num>-fold\n+\t--sum-loops (set loops to sum of other arcs weights)\n+\t\twith the -c <num> option, as the final step of loop computation (i.e. after initialization and shadowing)\n+\t\tall loop weights are multiplied by <num>, if supplied.\n+\t\t\n+\t--discard-loops=<y/n> (discard loops in input)\n+\t\tBy default mcl will remove any loops that are present in the input. Use --discard-loops=n to turn this \n+\t\toff. Bear in mind that loops will still be modified in all cases where the loop weight is not maximal a-\n+\t\tmong the list of edge weights for a given node.\n+\t\t\n+**Pruning options**\n+\n+After computing a new (column stochastic) matrix vector during expansion (which is matrix multiplication c.q. squaring), the vector is successively exposed to different pruning strategies.The intent of pruning is that many small entries are removed while retaining much of the stochastic mass of the original vector. After pruning, vectors are rescaled to be stochastic again.MCL iterands are theoretically known to be sparse in a weighted sense, and this manoever effectively perturbs the MCL process a little in order to obtain matrices that are genuinely sparse, thus keeping the computation tractable.\n+\n+mcl proceeds as follows. First, entries that are smaller than cutoff are removed, resulting in a vector with at most 1/cutoff entries. The cutoff can be supplied as the inverse value (1/cutoff) by **-P**.\n+\n+Second, if the remaining stochastic mass (i.e. the sum of all remaining entries) is less than <pct>/100 (specified by the **-pct** flag) and the number of remaining entries is less than <r> (as specified by the **-R** flag), mcl will try to regain ground by recovering the largest discarded entries. The total number of entries is not allowed to grow larger than <r>. If recovery was not necessary, mcl tries to prune the vector further down to at most s entries (if applicable), as specified by the **-S** flag. If this results in a vector that satisfies the recovery condition then recovery is attempted, exactly as described above. The latter will not occur of course if <r> <= <s>.::\n+\n+    -P <int> (1/cutoff)\n+        (inverted) rigid pruning threshold\n+\n+    -S <int> (selection number)\n+        select down to <int> entries if needed\n+\n+    -R <int> (recover number)\n+        recover to maximally <int> entries if needed\n+\n+    -pct <pct> (recover percentage)\n+        try recovery if mass is less than <pct>\n+\n+**Output**\n+\n+The output is then a file where each line is a cluster of tab-separated labels.\n+\n+\n+\t\t]]>\n+    </help>\n+    <citations>\n+        <citation type="doi">10.5281/zenodo.3364789</citation>\n+        <citation type="bibtex">\n+            <![CDATA[\n+\t\t\t@article{dongen29graph,\n+\t\t\t\ttitle={Graph Clustering by Flow Simulation. 2000},\n+\t\t\t\tauthor={Dongen, SV},\n+\t\t\t\tjournal={Domplein},\n+\t\t\t\tvolume={29},\n+\t\t\t\tpages={3512}\n+\t\t\t}\n+\t\t\t]]>\n+        </citation>\n+        <citation type="doi">10.1093/nar/30.7.1575</citation>\n+    </citations>\n+</tool>\n'
b
diff -r 000000000000 -r 649b9cb20668 test-data/mcl-simple-pruning.out
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/mcl-simple-pruning.out Mon Jun 13 17:34:32 2022 +0000
b
@@ -0,0 +1,7 @@
+F G
+H J
+A
+B
+C
+D
+E
b
diff -r 000000000000 -r 649b9cb20668 test-data/mcl-simple.mci
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/mcl-simple.mci Mon Jun 13 17:34:32 2022 +0000
b
@@ -0,0 +1,16 @@
+(mclheader
+mcltype matrix
+dimensions 9x9
+)
+(mclmatrix
+begin
+0 1:35 2:10 3:15 4:40 5:20 6:10 8:13 $
+1 0:35 2:35 4:30 5:5 7:5 $
+2 0:10 1:35 3:55 6:15 $
+3 0:15 2:55 4:30 7:5 8:25 $
+4 0:40 1:30 3:30 7:10 $
+5 0:20 1:5 6:55 7:45 8:27 $
+6 0:10 2:15 5:55 7:75 8:30 $
+7 1:5 3:5 4:10 5:45 6:75 8:38 $
+8 0:13 3:25 5:27 6:30 7:38 $
+)
b
diff -r 000000000000 -r 649b9cb20668 test-data/mcl-simple.mci-no-tab.out
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/mcl-simple.mci-no-tab.out Mon Jun 13 17:34:32 2022 +0000
b
@@ -0,0 +1,10 @@
+# cline: mcl test.mci "-V" "all" "-o" "test_out.mci"
+(mclheader
+mcltype matrix
+dimensions 9x2
+)
+(mclmatrix
+begin
+0 0 1 2 3 4 $
+1 5 6 7 8 $
+)
b
diff -r 000000000000 -r 649b9cb20668 test-data/mcl-simple.mci.tab
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/mcl-simple.mci.tab Mon Jun 13 17:34:32 2022 +0000
b
@@ -0,0 +1,9 @@
+0 A
+1 B
+2 C
+3 D
+4 E
+5 F
+6 G
+7 H
+8 J
b
diff -r 000000000000 -r 649b9cb20668 test-data/mcl-simple.out
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/mcl-simple.out Mon Jun 13 17:34:32 2022 +0000
b
@@ -0,0 +1,3 @@
+F G H J
+A B E
+C D
b
diff -r 000000000000 -r 649b9cb20668 test-data/mcl-simple.sif
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/mcl-simple.sif Mon Jun 13 17:34:32 2022 +0000
b
@@ -0,0 +1,9 @@
+A x A:0 B:35 C:10 D:15 E:40
+B x A:35 B:0 C:35 D:0 E:30
+C x A:10 B:35 C:0 D:55 E:0
+D x A:15 B:0 C:55 D:0 E:30
+E x A:40 B:30 C:0 D:30 E:0
+F x A:20 G:55 H:45 B:5
+G x H:75 C:15 J:30 A:10
+H x J:38 D:5 E:10 B:5
+J x A:13 D:25 F:27
\ No newline at end of file
b
diff -r 000000000000 -r 649b9cb20668 test-data/mcl-simple.tabular
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/mcl-simple.tabular Mon Jun 13 17:34:32 2022 +0000
b
@@ -0,0 +1,40 @@
+A A 0
+A B 35
+A C 10
+A D 15
+A E 40
+B A 35
+B B 0
+B C 35
+B D 0
+B E 30
+C A 10
+C B 35
+C C 0
+C D 55
+C E 0
+D A 15
+D B 0
+D C 55
+D D 0
+D E 30
+E A 40
+E B 30
+E C 0
+E D 30
+E E 0
+F A 20
+F G 55
+F H 45
+F B 5
+G H 75
+G C 15
+G J 30
+G A 10
+H J 38
+H D 5
+H E 10
+H B 5
+J A 13
+J D 25
+J F 27
\ No newline at end of file