PageRenderTime 24ms CodeModel.GetById 14ms app.highlight 4ms RepoModel.GetById 2ms app.codeStats 0ms

/tools/new_operations/tables_arithmetic_operations.xml

https://bitbucket.org/cistrome/cistrome-harvard/
XML | 105 lines | 77 code | 28 blank | 0 comment | 0 complexity | 9f7206507262c7b46d28491813ee3141 MD5 | raw file
  1<tool id="tables_arithmetic_operations" name="Arithmetic Operations " version="1.0.0">
  2  <description>on tables</description>
  3  
  4  <command interpreter="perl">
  5  	tables_arithmetic_operations.pl $inputFile1 $inputFile2 $inputArithmeticOperation3 $outputFile1
  6  </command>
  7
  8  <inputs>
  9  	<param format="tabular" name="inputFile1" type="data" label="Select the first input tabular file"/>
 10  	<param format="tabular" name="inputFile2" type="data" label="Select the second input tabular file"/>
 11  	
 12    <param name="inputArithmeticOperation3" type="select" label="Choose the arithmetic operation:">
 13    	<option value="Addition">Addition</option>
 14      	<option value="Subtraction">Subtraction</option>
 15      	<option value="Multiplication">Multiplication</option>
 16      	<option value="Division">Division</option>
 17    </param>
 18  </inputs>
 19  
 20  <outputs>
 21    <data format="tabular" name="outputFile1"/>
 22  </outputs>
 23  
 24  <tests>
 25  	<test>
 26  		<param name="inputFile1" value="numericalTable1.tabular" />
 27  		<param name="inputFile2" value="numericalTable1.tabular" />
 28    	<param name="inputArithmeticOperation3" value="Addition" />
 29    	<output name="outputFile1" file="table_addition_result.tabular" />
 30  	</test>
 31  	
 32  	<test>
 33  		<param name="inputFile1" value="numericalTable1.tabular" />
 34  		<param name="inputFile2" value="numericalTable1.tabular" />
 35    	<param name="inputArithmeticOperation3" value="Subtraction" />
 36    	<output name="outputFile1" file="table_subtraction_result.tabular" />
 37  	</test>
 38  	
 39  	<test>
 40  		<param name="inputFile1" value="numericalTable1.tabular" />
 41  		<param name="inputFile2" value="numericalTable1.tabular" />
 42    	<param name="inputArithmeticOperation3" value="Multiplication" />
 43    	<output name="outputFile1" file="table_multiplication_result.tabular" />
 44  	</test>
 45  	
 46  	<test>
 47  		<param name="inputFile1" value="numericalTable1.tabular" />
 48  		<param name="inputFile2" value="numericalTable1.tabular" />
 49    	<param name="inputArithmeticOperation3" value="Division" />
 50    	<output name="outputFile1" file="table_division_result.tabular" />
 51  	</test>
 52  	
 53  </tests>
 54  
 55  
 56  <help> 
 57
 58.. class:: infomark
 59
 60**What it does**
 61
 62This program implements arithmetic operations on tabular files data. The program takes three inputs:
 63
 64- The first input is a TABULAR format file containing numbers only.
 65- The second input is a TABULAR format file containing numbers only.
 66- The third input is an arithmetic operation: +, -, x, or / for addition, subtraction, multiplication, or division, respectively. 
 67- The output file is a TABULAR format file containing the result of implementing the arithmetic operation on both input files.
 68
 69
 70Notes: 
 71
 72- The two files must have the same number of columns and the same number of rows.
 73- The output file has the same number of columns and the same number of rows as each of the two input files.
 74- In case of division, none of the values in the second input file could be 0, otherwise the program will stop and report an error.
 75
 76**Example**
 77
 78Let us have the first input file as follows::
 79
 80	5	4	0
 81	10	11	12
 82	1	3	1
 83	1	2	1
 84	2	0	4
 85	
 86And the second input file as follows::
 87
 88	5	4	4
 89	2	5	8
 90	1	2	1
 91	3	2	5
 92	2	4	4
 93
 94Running the program and choosing "Addition" as an arithmetic operation will give the following output::
 95
 96	10	8	4
 97	12	16	20
 98	2	5	2
 99	4	4	6
100	4	4	8
101
102
103  </help>  
104  
105</tool>