comparison plates_generator.xml @ 0:5735a13c1f5b draft

planemo upload for repository https://github.com/brsynth/icfree-ml commit e908694368c306390bc9253f81a9249ad988970d
author tduigou
date Tue, 28 Mar 2023 12:35:56 +0000
parents
children bd72cb677e4e
comparison
equal deleted inserted replaced
-1:000000000000 0:5735a13c1f5b
1 <tool id="icfree_plates_generator" name="iCFree plates generator" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" license="@LICENCE@">
2 <description>Generates a list of Echo-compatible source and destination plates according a set of samples to test</description>
3 <macros>
4 <import>macros.xml</import>
5 </macros>
6 <expand macro="requirements"/>
7 <expand macro="stdio"/>
8 <command detect_errors="exit_code"><![CDATA[
9 #set factors = []
10 #for $x in $adv.rep
11 #silent factors.append(str($x.optimize_well_volumes))
12 #end for
13 #set sfactors = ' '.join(['"' + $x + '"' for $x in $factors])
14 python -m icfree.plates_generator
15 '$cfps_file'
16 '$volume_file'
17 --sample_volume '$adv.sample_volume'
18 --source_plate_dead_volume '$adv.source_plate_dead_volume'
19 --dest_plate_dead_volume '$adv.dest_plate_dead_volume'
20 --dest-starting_well '$adv.dest_starting_well'
21 --src-starting_well '$adv.src_starting_well'
22 --nplicate '$adv.nplicate'
23 --keep-nil-vol '$adv.keep_nil_vol'
24 --source_plate_well_capacity '$adv.source_plate_well_capacity'
25 --dest_plate_well_capacity '$adv.dest_plate_well_capacity'
26 #if len(factors) > 0
27 --optimize-well-volumes ${sfactors}
28 #end if
29 --plate-dimensions '$adv.plate_dimensions'
30 --output-folder '.'
31 --output-format 'tsv' &&
32 mv volumes_summary.tsv '$volumes_summary'
33 ]]></command>
34 <inputs>
35 <param name="cfps_file" type="data" format="tabular" label="CFPS parameters and features" />
36 <param name="volume_file" type="data" format="tabular" label="Volumes" />
37
38 <section name="adv" title="Advanced Options" expanded="false">
39
40 <param name="sample_volume" type="integer" value="1000" label="Final sample volume in each well in nL" />
41 <param name="source_plate_dead_volume" type="integer" value="15000" label="Dead volume to add in the source plate in nL"/>
42 <param name="dest_plate_dead_volume" type="integer" value="15000" label="Dead volume to add in the destination plate in nL"/>
43
44 <param name="dest_starting_well" type="text" value="A1" label="Starter well of destination plate to begin filling the 384 well-plate">
45 <validator type="empty_field" message="Not empty"/>
46 <validator type="regex" message="Some letters followed by a number">^(?:[A-K]{1}([1-9]|1[0-2]))$</validator>
47 </param>
48 <param name="src_starting_well" type="text" value="A1" label="Starter well of source plate to begin filling the 384 well-plate">
49 <validator type="empty_field" message="Not empty"/>
50 <validator type="regex" message="Some letters followed by a number">^(?:[A-K]{1}([1-9]|1[0-2]))$</validator>
51 </param>
52
53 <param name="nplicate" type="integer" value="3" min="1" max="12" label="Numbers of copies of volume sets"/>
54 <param name="keep_nil_vol" type="boolean" truevalue="True" falsevalue="False" checked="true" display="checkboxes" label="Keep nil volumes in instructions or not"/>
55
56 <param name="source_plate_well_capacity" type="integer" value="60000" label="Maximum volume capacity of the source plate in nL" />
57 <param name="dest_plate_well_capacity" type="integer" value="60000" label="Maximum volume capacity of the dest plate in nL" />
58 <param name="plate_dimensions" type="text" value="16x24" label="Dimensions of plate separated by a 'x'">
59 <validator type="empty_field" message="Not empty"/>
60 <validator type="regex" message="An 'x' separator is expected">^(?:\d+x\d+)$</validator>
61 </param>
62 <repeat name="rep" title="Optimize well volumes" min="0">
63 <param name="optimize_well_volumes" type="text" value="" label="Save volumes in source plate for all factors">
64 <validator type="empty_field" message="Not empty"/>
65 </param>
66 </repeat>
67
68 </section>
69 </inputs>
70 <outputs>
71 <data name="volumes_summary" format="tabular" label="${tool.name} - Volumes" />
72 <collection name="output_source_dest" type="list" label="${tool.name} - Source Destination Plate">
73 <discover_datasets pattern="(?P&lt;name&gt;source_plate_\d+\.json)$" format="json" />
74 <discover_datasets pattern="(?P&lt;name&gt;source_plate_\d+\.tsv)$" format="tabular" />
75 <discover_datasets pattern="(?P&lt;name&gt;destination_plate_\d+\.json)$" format="json" />
76 <discover_datasets pattern="(?P&lt;name&gt;destination_plate_\d+\.tsv)$" format="tabular" />
77 </collection>
78 </outputs>
79 <tests>
80 <!-- test 1: check if identical outputs are produced with default parameters -->
81 <test>
82 <param name="cfps_file" value="converter_proCFPS_parameters.tsv" />
83 <param name="volume_file" value="converter_sampling_concentrations.tsv" />
84 <output name="volumes_summary" file="plates_generator_volumes_summary.test-1.tsv" ftype="tabular" compare="diff" />
85 <output_collection name="output_source_dest" type="list" count="4">
86 <element name="source_plate_1.json" ftype="json">
87 <assert_contents>
88 <has_n_lines n="26"/>
89 </assert_contents>
90 </element>
91 <element name="source_plate_1.tsv" file="plates_generator_source_plate_1.test-1.tsv" ftype="tabular" compare="diff" />
92 <element name="destination_plate_1.json" ftype="json">
93 <assert_contents>
94 <has_n_lines n="26"/>
95 </assert_contents>
96 </element>
97 <element name="destination_plate_1.tsv" file="plates_generator_destination_plate_1.test-1.tsv" ftype="tabular" compare="diff" />
98 </output_collection>
99 </test>
100 <!-- test 2: advance arguments -->
101 <test>
102 <param name="cfps_file" value="converter_proCFPS_parameters.tsv" />
103 <param name="volume_file" value="converter_sampling_concentrations.tsv" />
104 <param name="source_plate_dead_volume" value="1500" />
105 <param name="dest_plate_dead_volume" value="1000" />
106 <param name="dest_starting_well" value="C3" />
107 <param name="src_starting_well" value="A2" />
108 <param name="nplicate" value="2" />
109 <param name="keep_nil_vol" value="False" />
110 <param name="plate_dimensions" value="32x32" />
111 <repeat name="rep">
112 <param name="optimize_well_volumes" value="RBS" />
113 </repeat>
114 <repeat name="rep">
115 <param name="optimize_well_volumes" value="Promoter" />
116 </repeat>
117 <output_collection name="output_source_dest" type="list" count="4">
118 <element name="destination_plate_1.tsv" file="plates_generator_destination_plate_1.test-2.tsv" ftype="tabular" compare="diff" />
119 </output_collection>
120 </test>
121 </tests>
122 <help><![CDATA[
123 Plates Generator
124 ================
125
126 This module generates a list of source and destination plates according to the set of samples to test.
127
128 Input
129 -----
130 * **CFPS Parameters File**: The first column is the parameter (or factor) names. The second column is the maxValue of the parameter that will be used in the sampling. The third column is the concnetration of the stock. The fourth column is the deadVolume of the parameter. This is used to calculate the volume of the parameter that will not be pipetted by the robot (because of viscosity). The fifth column is the specific ratios we want to have for this parameter. If nothing defined, then take ratios given in program options. If one single number is given, then take this number as a const value.
131 * Volume File**: File containing volumes
132
133 Advanced Options:
134 -----------------
135 * **Sample Volume**: Final sample volume in each well in nL (default: 10000)
136 * **Source Plate Dead Volume**: dead volume to add in the source plate in nL (default: 15000)
137 * **Destination Plate Dead Volume**: dead volume to add in the dest plate in nL (default: 15000)
138 * **Destination Starting Well**: starter well of destination plate to begin filling the 384 well-plate. (default: A1)
139 * **Source Starting Well**: starter well of source plate to begin filling the 384 well-plate. (default: A1)
140 * **Number of replicate**: Numbers of copies of volume sets (default: 3)
141 * **Keep nil volumes**: Keep nil volumes in instructions or not (default: yes)
142 * **Source Plate Well Capacity**: Maximum volume capacity of the source plate in nL (default: 60000)
143 * **Destiantion Plate Well Capacity**: Maximum volume capacity of the dest plate in nL (default: 60000)
144 * **Optimize Well Volumes**: Save volumes in source plate for all factors. It may trigger more volume pipetting warnings. If list of factors is given (separated by blanks), save: only for these ones (default: []).
145 * **Plate Dimensions**: Dimensions of plate separated by a 'x', e.g. nb_rows x nb_cols (default: 16x24).
146
147 Output
148 ------
149 * **Collection**: Collection of files describing source/destination plates/wells
150 ]]></help>
151 <expand macro="creator"/>
152 <expand macro="citation"/>
153 </tool>