annotate smap_design.xml @ 0:fe9f46c3bd28 draft default tip

Uploaded
author ieguinoa
date Mon, 25 Apr 2022 12:08:35 +0000
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
1 <tool id="smap_design" name="SMAP-design" version="0.1.0" python_template_version="3.5">
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
2 <requirements>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
3 <!--<requirement type="package">smap-design</requirement>-->
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
4 <requirement type="package">primer3-py</requirement>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
5 <requirement type="package">pandas</requirement>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
6 <requirement type="package">biopython</requirement>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
7 <requirement type="package">matplotlib</requirement>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
8 <requirement type="package">gffutils</requirement>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
9 </requirements>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
10 <command detect_errors="exit_code"><![CDATA[
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
11 #if $input_source_conditional.input_source == "pregenerated_inputs":
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
12 design_input_fasta=$input_source_conditional.input_fasta;
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
13 design_input_gff3=$input_source_conditional.input_gff3;
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
14 #else:
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
15 ln -s $input_source_conditional.fasta_file species_fasta.fasta;
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
16 ln -s $input_source_conditional.gff_file species.gff3;
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
17 ln -s $input_source_conditional.gene_families_file families_file.txt;
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
18 #if $input_source_conditional.interest_input_selector.interest_input == "genes":
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
19 ln -s $input_source_conditional.interest_input_selector.genes_file genes_file.txt;
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
20 #else
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
21 ln -s $input_source_conditional.interest_input_selector.homology_groups_file hom_groups_file.txt;
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
22 #end if
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
23 python3 $__tool_directory__/Get_fasta_and_gff_for_selected_hom_groups_extended_flanking_region.py ./species.gff3 ./species_fasta.fasta ./families_file.txt $input_source_conditional.species --region $input_source_conditional.region
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
24 #if $input_source_conditional.interest_input_selector.interest_input == "genes":
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
25 --genes genes_file.txt
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
26 #else
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
27 --hom_groups hom_groups_file.txt
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
28 #end if
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
29 &&
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
30 ###### need to set the design_input_fasta and design_input_gff3 vars
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
31 design_input_fasta=`ls *_bp.fasta` &&
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
32 design_input_gff3=`ls *_bp.gff`;
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
33 #end if
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
34 python3 $__tool_directory__/smap_design/SMAPdesign.py
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
35 --output 'OUTPUT'
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
36 --minimumAmpliconLength $min_amplicon_length
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
37 --maximumAmpliconLength $max_amplicon_length
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
38 --numbergRNAs $number_grnas
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
39 --numberAmplicons $number_amplicons
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
40 #if $print_summary:
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
41 --summary
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
42 #end if
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
43 $bordersOnly
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
44 --distance $distance
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
45 $print_summary
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
46 $allAmplicons
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
47 --gRNAfile $gRNAfile
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
48 --gRNAsource $gRNAsource.value
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
49 #if $selectGenes:
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
50 --selectGenes $selectGenes
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
51 #end if
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
52 --gRNAoverlap $gRNAoverlap
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
53 --generateAmplicons $generateAmplicons
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
54 --threshold $threshold
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
55 --borderLength $borderLength
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
56 $ampliconLabel
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
57 --targetRegion5 $targetRegion5
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
58 --targetRegion3 $targetRegion3
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
59 #if $targetSpecificRegion:
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
60 --targetSpecificRegion $targetSpecificRegion
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
61 #end if
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
62 $misPrimingAllowed
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
63 $restrictPrimerDesign
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
64 --promoter '$promoter'
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
65 --scaffold '$scaffold'
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
66 \$design_input_fasta \$design_input_gff3;
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
67 mv OUTPUT.gff3 $gff_output;
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
68 mv OUTPUT_primers.tsv $primers_output;
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
69 mv OUTPUT_gRNAs.tsv $gRNA_per_gene;
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
70 #if $print_summary:
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
71 mv OUTPUT_SMAPdesign_summary.tsv $summary;
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
72 #end if
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
73 #if $bordersOnly:
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
74 mv OUTPUT_SMAPdesign_borders.gff3 $borders_output;
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
75 #end if
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
76 ;
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
77 ]]></command>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
78 <inputs>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
79 <conditional name="input_source_conditional">
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
80 <param name="input_source" type="select">
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
81 <option value="smap_selector">Generate the target gene using SMAP selector</option>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
82 <option value="pregenerated_inputs">Use pregenerated inputs</option>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
83 </param>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
84 <when value="smap_selector">
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
85 <param name="species" type="text" label="Species, corresponding with species indicated in the gene family info file"/>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
86 <param name="gene_families_file" type="data" format="tsv,tabular" label="gene family information file (tab-delimited) for the (coding) genes, separated per gene family type"/>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
87 <param name="fasta_file" type="data" format="fasta" label="FASTA file containing the genomic sequence of the species"/>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
88 <param name="gff_file" type="data" format="gff,gff3" label="gff3 file (tab-delimited) of the species containing gene, CDS, and exon features with positions relative to the fasta file"/>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
89 <conditional name="interest_input_selector">
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
90 <param name="interest_input" type="select">
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
91 <option value="genes">list with genes of interest</option>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
92 <option value="homology_groups">list with homology groups of interest</option>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
93 </param>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
94 <when value="genes">
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
95 <param name="genes_file" type="data" format="txt" label="Genes file"/>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
96 </when>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
97 <when value="homology_groups">
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
98 <param name="homology_groups_file" type="data" format="txt" label="Homology groups file"/>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
99 </when>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
100 </conditional>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
101 <param argument="--region" type="integer" value="0" label="Region to extend the FASTA sequence of the genes of interest on both sides with the given number of basepairs or with the maximum possible" help="default: 0"/>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
102
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
103 </when>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
104 <when value="pregenerated_inputs">
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
105 <param name="input_fasta" type="data" optional="false" label="FASTA file containing all genes to screen" format="fasta"/>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
106 <param name="input_gff3" type="data" optional="false" label="GFF3 File" help="GFF3 file with at least the CDS feature with positions relative to the FASTA file " format="gff3,gff"/>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
107 </when>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
108 </conditional>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
109
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
110 <param name="number_amplicons" type="integer" value="2" label="The maximum number of non-overlapping amplicons in the output (default = 2)" help="sets the seed for the random number generator"/>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
111 <param name="number_grnas" type="integer" value="2" label="Maximum number of gRNAs to retain per amplicon (default = 2)" help=""/>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
112 <param name="min_amplicon_length" type="integer" value="120" label="The minimum length of the amplicons in base pairs (default = 120)" help=""/>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
113 <param name="max_amplicon_length" type="integer" value="150" label="The maximum length of the amplicons in base pairs (default = 120)" help=""/>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
114 <param name="distance" type="integer" optional="true" value="15" label="Minimum number of bases between primer and gRNA (default = 15)" help=""/>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
115 <param name="print_summary" type="boolean" truevalue="--summary" falsevalue="" label="Write summary file and plot of the output"/>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
116 <param argument='--allAmplicons' type="boolean" truevalue="--allAmplicons" falsevalue="" label='Return all amplicons with their respective gRNAs per gene (extra file)'/>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
117 <param name='bordersOnly' type="boolean" truevalue="-bo" falsevalue="" checked="false" label='Write additional GFF file with only borders (for SMAP)'/>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
118 <param argument='--gRNAfile' type="data" format="tsv,tabular" label='CRISPOR, FlashFry or other gRNA design program output file' help="The CRISPOR and Flashfry file must contain a header and 12 columns. Check the manual for specifics"/>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
119 <param name='gRNAsource' type="select" label="What is the source of the gRNA file?">
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
120 <option value="crispor">CRISPOR</option>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
121 <option value="flashfry">FlashFry</option>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
122 <option value="other">Other</option>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
123 </param>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
124 <param argument='--selectGenes' type="data" optional="true" format="txt" label="OPTIONAL List of genes (one per line) to which amplicons and guides must be designed" help='The other genes in the fasta file will be used to check for specificity only. default: if no list is used then, for all genes in the fasta the design is done'/>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
125 <param argument='--gRNAoverlap' label='The minimum number of bases between the start of two gRNAs' type="integer" value="5"/>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
126 <param argument='--generateAmplicons' label="Number of amplicons to generate per gene by Primer3." help="To generate 50 amplicons per 1000 bases per gene enter -1" value="150" type="integer"/>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
127 <param argument='--threshold' label='Minimum gRNA MIT score allowed (default = 80)' value="80" type="integer"/>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
128 <param argument='--borderLength' value="10" type="integer" label='The length of the borders (for SMAP)'/>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
129 <param argument='--ampliconLabel' type="boolean" truevalue="--ampliconLabel" falsevalue="" checked="false" label='Number the amplicons from left to right instead of from best to worst'/>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
130 <param argument='--gRNAlabel' type="boolean" truevalue="--gRNAlabel" falsevalue="" checked="false" label='Number the gRNAs from left to right instead of from best to worst (based on specificity scores)'/>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
131 <param argument='--targetRegion5' label="The fraction of the coding sequencing that cannot be targeted at the 5' end as indicated by a float between 0 and 1 (default = 0.2)" value="0.2" type="float"/>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
132 <param argument='--targetRegion3' label="The fraction of the coding sequencing that cannot be targeted at the 3' end as indicated by a float between 0 and 1 (default = 0.2)" value="0.2" type="float"/>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
133 <param argument='--targetSpecificRegion' label='Only target a specific region in the gene indicated by the feature name in the GFF file' value="" type="text"/>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
134 <param argument='--misPrimingAllowed' type="boolean" truevalue="--misPrimingAllowed" falsevalue="" label='Do not check for mispriming in the gene set when designing primers' help='By default Primer3 will not allow primers that can prime at other genes in the gene set' checked="false"/>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
135 <param argument='--restrictPrimerDesign' type="boolean" truevalue="--restrictPrimerDesign" falsevalue="" label='Restrict primer design in large introns' help="Increases the speed of amplicon design. This should have no impact on the output" checked="false"/>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
136 <param argument="--promoter" type="text" label='Give the last 6 bases of the promoter that will be used to express the gRNA. This will be taken into account when checking for BsaI or BbsI sites in the gRNA' help="default: U6 promoter = GTAGTG)" value="GTAGTG" />
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
137
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
138 <param argument="--scaffold" type="text" label="Give the first 6 bases of the scaffold that will be used. This will be taken into account when checking for BsaI or BbsI sites in the gRNA" value="GTTTTA"/>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
139
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
140 </inputs>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
141 <outputs>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
142 <data format="gff3" name="gff_output" label="GFF3 design" />
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
143 <data format="tsv" name="primers_output" label="Primers sequences per gene" />
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
144 <data format="tsv" name="gRNA_per_gene" label="gRNA sequences per gene" />
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
145 <data format="tsv" name="summary" label="Summary">
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
146 <filter>print_summary == "--summary"</filter>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
147 </data>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
148 <data format="gff3" name="borders_output" label="Borders">
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
149 <filter>bordersOnly == "-bo"</filter>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
150 </data>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
151 </outputs>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
152 <help><![CDATA[
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
153 TODO: Fill in help.
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
154 ]]></help>
fe9f46c3bd28 Uploaded
ieguinoa
parents:
diff changeset
155 </tool>