comparison hifiasm.xml @ 2:f3c89da3af16 draft

"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/hifiasm commit 5a03c44d52d545bd23e651bfba1cc73050eec9a0"
author bgruening
date Sun, 20 Jun 2021 21:18:55 +0000
parents 6505bd37670d
children 9ef6920c3089
comparison
equal deleted inserted replaced
1:6505bd37670d 2:f3c89da3af16
1 <tool id="hifiasm" name="Hifiasm" version="@VERSION@+galaxy0"> 1 <tool id="hifiasm" name="Hifiasm" version="@VERSION@+galaxy0">
2 <description>de novo assembler</description> 2 <description>haplotype-resolved de novo assembler for PacBio Hifi reads</description>
3 <macros> 3 <macros>
4 <token name="@VERSION@">0.14</token> 4 <token name="@VERSION@">0.15.3</token>
5 <token name="@FORMATS@">fasta,fasta.gz,fastq,fastq.gz</token> 5 <token name="@FORMATS@">fasta,fasta.gz,fastq,fastq.gz</token>
6 <xml name="reads"> 6 <xml name="reads">
7 <param name="reads" type="data" format="@FORMATS@" multiple="true" label="Input reads" /> 7 <param name="reads" type="data" format="@FORMATS@" multiple="true" label="Input reads" />
8 </xml> 8 </xml>
9 </macros> 9 </macros>
11 <requirement type="package" version="@VERSION@">hifiasm</requirement> 11 <requirement type="package" version="@VERSION@">hifiasm</requirement>
12 <requirement type="package" version="0.1">yak</requirement> 12 <requirement type="package" version="0.1">yak</requirement>
13 </requirements> 13 </requirements>
14 <version_command>hifiasm --version</version_command> 14 <version_command>hifiasm --version</version_command>
15 <command detect_errors="exit_code"> 15 <command detect_errors="exit_code">
16
16 <![CDATA[ 17 <![CDATA[
17 #set $input_files = list() 18 #set $input_files = list()
18 #set $hap1_inputs = list() 19 #set $hap1_inputs = list()
19 #set $hap2_inputs = list() 20 #set $hap2_inputs = list()
20 #for idx, read in enumerate($mode.reads): 21 #for idx, read in enumerate($mode.reads):
34 ln -s '$read' $inputfile && 35 ln -s '$read' $inputfile &&
35 $hap2_inputs.append($inputfile) 36 $hap2_inputs.append($inputfile)
36 #end for 37 #end for
37 #set $hap1_filenames = ' '.join($hap1_inputs) 38 #set $hap1_filenames = ' '.join($hap1_inputs)
38 #set $hap2_filenames = ' '.join($hap2_inputs) 39 #set $hap2_filenames = ' '.join($hap2_inputs)
39 yak count -k31 -b37 -t\${GALAXY_SLOTS:-1} -o hap1.yak $hap1_filenames && 40 yak count -k$mode.yak_kmer_length -b$filter_bits -t\${GALAXY_SLOTS:-1} -o hap1.yak $hap1_filenames &&
40 yak count -k31 -b37 -t\${GALAXY_SLOTS:-1} -o hap2.yak $hap2_filenames && 41 yak count -k$mode.yak_kmer_length -b$filter_bits -t\${GALAXY_SLOTS:-1} -o hap2.yak $hap2_filenames &&
41 #end if 42 #end if
42 hifiasm -i $input_filenames -t \${GALAXY_SLOTS:-1} -o output -f $filter_bits 43 hifiasm
43 #if str($mode.mode_selector) == 'trio': 44 -t \${GALAXY_SLOTS:-1}
44 -1 hap1.yak -2 hap2.yak 45 -o output
45 #end if 46 -f $filter_bits
46 #if str($advanced_options.advanced_selector) == 'set': 47 #if str($advanced_options.advanced_selector) == 'set':
47 -z $advanced_options.adapter_length 48 -k $advanced_options.hifiasm_kmer_length
48 -k $advanced_options.kmer_length
49 -w $advanced_options.window_size 49 -w $advanced_options.window_size
50 -D $advanced_options.drop_kmers 50 -D $advanced_options.drop_kmers
51 -N $advanced_options.max_overlaps 51 -N $advanced_options.max_overlaps
52 -r $advanced_options.correction_rounds 52 -r $advanced_options.correction_rounds
53 #if $advanced_options.min_hist_cnt:
54 --min-hist-cnt $advanced_options.min_hist_cnt
55 #end if
53 #end if 56 #end if
54 #if str($assembly_options.assembly_selector) == 'set': 57 #if str($assembly_options.assembly_selector) == 'set':
55 -a $assembly_options.cleaning_rounds 58 -a $assembly_options.cleaning_rounds
59 -z $assembly_options.adapter_length
56 -m $assembly_options.pop_contigs 60 -m $assembly_options.pop_contigs
57 -p $assembly_options.pop_unitigs 61 -p $assembly_options.pop_unitigs
58 -n $assembly_options.remove_tips 62 -n $assembly_options.remove_tips
59 -x $assembly_options.max_overlap 63 -x $assembly_options.max_overlap
60 -y $assembly_options.min_overlap 64 -y $assembly_options.min_overlap
61 $assembly_options.disable_post_join 65 $assembly_options.disable_post_join
66 $assembly_options.ignore_error_corrected
62 #end if 67 #end if
63 #if str($mode.mode_selector) == 'trio': 68 #if str($mode.mode_selector) == 'trio':
64 -1 hap1.yak 69 -1 hap1.yak
65 -2 hap2.yak 70 -2 hap2.yak
66 -c $mode.max_kmers 71 -c $mode.max_kmers
71 -s $purge_options.similarity_threshold 76 -s $purge_options.similarity_threshold
72 -O $purge_options.minimum_overlap 77 -O $purge_options.minimum_overlap
73 #if $purge_options.purge_cov: 78 #if $purge_options.purge_cov:
74 --purge-cov $purge_options.purge_cov 79 --purge-cov $purge_options.purge_cov
75 #end if 80 #end if
76 $purge_options.high_het 81 #if $purge_options.n_hap:
77 #end if 82 --n-hap $purge_options.n_hap
83 #end if
84 #end if
85
86 #if str($hic_partition.hic_partition_selector) == 'set':
87 --h1 '${ ' '.join(["%s" % $x for $x in $hic_partition.h1]) }'
88 --h2 '${ ' '.join(["%s" % $x for $x in $hic_partition.h2]) }'
89 #if $hic_partition.seed:
90 --seed $hic_partition.seed
91 #end if
92 #if $hic_partition.n_weight:
93 --n-weight $hic_partition.n_weight
94 #end if
95 #if $hic_partition.n_perturb:
96 --n-perturb $hic_partition.n_perturb
97 #end if
98 #if $hic_partition.f_perturb:
99 --f-perturb $hic_partition.f_perturb
100 #end if
101 #end if
102
103 ## Changed the default outputs of hifiasm. Hifiasm outputs a primary assembly and two balanced haplotypes in default. Incorporated the option '--primary' to output primary assembly and alternate assembly.
104 --primary
105 $input_filenames
106
78 ]]> 107 ]]>
79 </command> 108 </command>
80 <inputs> 109 <inputs>
81 <conditional name="mode"> 110 <conditional name="mode">
82 <param name="mode_selector" type="select" label="Assembly mode"> 111 <param name="mode_selector" type="select" label="Assembly mode">
90 <expand macro="reads" /> 119 <expand macro="reads" />
91 <param name="hap1_reads" type="data" format="fastq,fastq.gz" multiple="true" label="Haplotype 1 reads" /> 120 <param name="hap1_reads" type="data" format="fastq,fastq.gz" multiple="true" label="Haplotype 1 reads" />
92 <param name="hap2_reads" type="data" format="fastq,fastq.gz" multiple="true" label="Haplotype 2 reads" /> 121 <param name="hap2_reads" type="data" format="fastq,fastq.gz" multiple="true" label="Haplotype 2 reads" />
93 <param name="max_kmers" argument="-c" type="integer" value="2" label="Lower bound of the binned k-mer's frequency" /> 122 <param name="max_kmers" argument="-c" type="integer" value="2" label="Lower bound of the binned k-mer's frequency" />
94 <param name="min_kmers" argument="-d" type="integer" value="5" label="Upper bound of the binned k-mer's frequency" /> 123 <param name="min_kmers" argument="-d" type="integer" value="5" label="Upper bound of the binned k-mer's frequency" />
124 <param name="yak_kmer_length" type="integer" min="0" max="64" value="31" label="Yak counter k-mer length" />
95 </when> 125 </when>
96 </conditional> 126 </conditional>
97 <param name="filter_bits" argument="-f" type="integer" min="0" value="37" label="Bits for bloom filter" help="A value of 0 disables the bloom filter" /> 127 <param name="filter_bits" argument="-f" type="integer" min="0" value="37" label="Bits for bloom filter" help="A value of 0 disables the bloom filter" />
128
98 <conditional name="advanced_options"> 129 <conditional name="advanced_options">
99 <param name="advanced_selector" type="select" label="Advanced options"> 130 <param name="advanced_selector" type="select" label="Advanced options">
100 <option value="blank">Leave default</option> 131 <option value="blank">Leave default</option>
101 <option value="set">Specify</option> 132 <option value="set">Specify</option>
102 </param> 133 </param>
103 <when value="blank" /> 134 <when value="blank" />
104 <when value="set"> 135 <when value="set">
105 <param name="adapter_length" argument="-z" type="integer" min="0" value="0" label="Length of adapters to be removed" /> 136 <param name="hifiasm_kmer_length" argument="-k" type="integer" min="0" max="64" value="51" label="HiFiasm k-mer length" />
106 <param name="kmer_length" argument="-k" type="integer" min="0" max="64" value="51" label="K-mer length" />
107 <param name="window_size" argument="-w" type="integer" min="0" value="51" label="Minimizer window size" /> 137 <param name="window_size" argument="-w" type="integer" min="0" value="51" label="Minimizer window size" />
108 <param name="drop_kmers" argument="-D" type="float" value="5.0" label="Drop k-mers" help="K-mers that occur more than this value multiplied by the coverage will be discarded" /> 138 <param name="drop_kmers" argument="-D" type="float" value="5.0" label="Drop k-mers" help="K-mers that occur more than this value multiplied by the coverage will be discarded" />
109 <param name="max_overlaps" argument="-N" type="integer" value="100" label="Maximum overlaps to consider" help="The software selects the larger of this value and the k-mer count multiplied by coverage" /> 139 <param name="max_overlaps" argument="-N" type="integer" value="100" label="Maximum overlaps to consider" help="The software selects the larger of this value and the k-mer count multiplied by coverage" />
110 <param name="correction_rounds" argument="-r" type="integer" value="3" label="Correction rounds" /> 140 <param name="correction_rounds" argument="-r" type="integer" value="3" label="Correction rounds" />
141 <param argument="--min-hist-cnt" type="integer" min="0" value="" optional="true" label="Minimum count threshold" help="When analyzing the k-mer spectrum, ignore counts below this value" />
111 </when> 142 </when>
112 </conditional> 143 </conditional>
144
113 <conditional name="assembly_options"> 145 <conditional name="assembly_options">
114 <param name="assembly_selector" type="select" label="Assembly options"> 146 <param name="assembly_selector" type="select" label="Assembly options">
115 <option value="blank">Leave default</option> 147 <option value="blank">Leave default</option>
116 <option value="set">Specify</option> 148 <option value="set">Specify</option>
117 </param> 149 </param>
118 <when value="blank" /> 150 <when value="blank" />
119 <when value="set"> 151 <when value="set">
120 <param name="cleaning_rounds" argument="-a" type="integer" value="4" label="Cleaning rounds" /> 152 <param name="cleaning_rounds" argument="-a" type="integer" value="4" label="Cleaning rounds" />
153 <param name="adapter_length" argument="-z" type="integer" min="0" value="0" label="Length of adapters to be removed" />
121 <param name="pop_contigs" argument="-m" type="integer" value="10000000" label="Minimum contig bubble size" help="Pop contig graph bubbles smaller than this value" /> 154 <param name="pop_contigs" argument="-m" type="integer" value="10000000" label="Minimum contig bubble size" help="Pop contig graph bubbles smaller than this value" />
122 <param name="pop_unitigs" argument="-p" type="integer" value="100000" label="Minimum unitig bubble size" help="Pop unitig graph bubbles smaller than this value" /> 155 <param name="pop_unitigs" argument="-p" type="integer" value="100000" label="Minimum unitig bubble size" help="Pop unitig graph bubbles smaller than this value" />
123 <param name="remove_tips" argument="-n" type="integer" value="3" label="Tip unitigs" help="Keep only tip unitigs with a number of reads greater than or equal to this value" /> 156 <param name="remove_tips" argument="-n" type="integer" value="3" label="Tip unitigs" help="Keep only tip unitigs with a number of reads greater than or equal to this value" />
124 <param name="max_overlap" argument="-x" type="float" min="0" max="1" value="0.8" label="Maximum overlap drop ratio" /> 157 <param name="max_overlap" argument="-x" type="float" min="0" max="1" value="0.8" label="Maximum overlap drop ratio" help="This option is used with -r. Given a node N in the assembly graph, let max(N) be the length of the largest overlap of N. Hifiasm iteratively drops overlaps of N if their length/max(N) are below a threshold controlled by -x. Hifiasm applies -r rounds of short overlap removal with an increasing threshold between -x and -y"/>
125 <param name="min_overlap" argument="-y" type="float" min="0" max="1" value="0.2" label="Minimum overlap drop ratio" /> 158 <param name="min_overlap" argument="-y" type="float" min="0" max="1" value="0.2" label="Minimum overlap drop ratio" help="This option is used with -r. Given a node N in the assembly graph, let max(N) be the length of the largest overlap of N. Hifiasm iteratively drops overlaps of N if their length/max(N) are over a threshold controlled by -y. Hifiasm applies -r rounds of short overlap removal with an increasing threshold between -x and -y"/>
126 <param name="disable_post_join" argument="-u" type="boolean" truevalue="-u" falsevalue="" label="Skip post join contigs step" help="May improve N50" /> 159 <param name="disable_post_join" argument="-u" type="boolean" truevalue="-u" falsevalue="" label="Skip post join contigs step" help="May improve N50" />
160 <param name="ignore_error_corrected" argument="-i" type="boolean" truevalue="-i" falsevalue="" value="False" label="Ignore error corrected reads and overlaps" help="Ignore error corrected reads and overlaps saved in prefix.*.bin files. Apart from assembly graphs, hifiasm also outputs three binary files that save alloverlap information during assembly step. With these files, hifiasm can avoid the time-consuming all-to-all overlap calculation step, and do the assembly directly and quickly. This might be helpful when users want to get an optimized assembly by multiple rounds of experiments with different parameters." />
127 </when> 161 </when>
128 </conditional> 162 </conditional>
163
129 <conditional name="purge_options"> 164 <conditional name="purge_options">
130 <param name="purge_selector" type="select" label="Options for purging duplicates"> 165 <param name="purge_selector" type="select" label="Options for purging duplicates">
131 <option value="blank">Leave default</option> 166 <option value="blank">Leave default</option>
132 <option value="set">Specify</option> 167 <option value="set">Specify</option>
133 </param> 168 </param>
134 <when value="blank" /> 169 <when value="blank" />
135 <when value="set"> 170 <when value="set">
136 <param name="purge_level" argument="-l" type="select" label="Purge level"> 171 <param name="purge_level" argument="-l" type="select" label="Purge level">
137 <option value="0" selected="true">None</option> 172 <option value="0" selected="true">None (0)</option>
138 <option value="1">Light</option> 173 <option value="1">Light (1)</option>
139 <option value="2">Aggressive</option> 174 <option value="2">Aggressive (2)</option>
175 <option value="3">Aggressive - high heterozygosity rate (3)</option>
140 </param> 176 </param>
141 <param name="similarity_threshold" argument="-s" type="float" min="0" max="1" value="0.75" label="Similarity threshold for duplicate haplotigs" /> 177 <param name="similarity_threshold" argument="-s" type="float" min="0" max="1" value="0.75" label="Similarity threshold for duplicate haplotigs" />
142 <param name="minimum_overlap" argument="-O" type="integer" value="1" label="Minimum overlapped reads for duplicate haplotigs" /> 178 <param name="minimum_overlap" argument="-O" type="integer" value="1" label="Minimum overlapped reads for duplicate haplotigs" />
143 <param argument="--purge-cov" type="integer" optional="true" label="Coverage upper bound" help="If not set, this will be determined automatically" /> 179 <param argument="--purge-cov" type="integer" optional="true" label="Coverage upper bound" help="If not set, this will be determined automatically" />
144 <param argument="--high-het" type="boolean" truevalue="--high-het" falsevalue="" label="Experimental high-heterozygosity mode" help="NB: May be unstable" /> 180 <param argument="--n-hap" type="integer" min="0" value="" optional="True" label="Assumtion of haplotype number" help="A haplotype is defined as the combination of alleles for different polymorphisms that occur on the same chromosome." />
145 </when> 181 </when>
146 </conditional> 182 </conditional>
183
184 <conditional name="hic_partition">
185 <param name="hic_partition_selector" type="select" label="Options for Hi-C-partition">
186 <option value="blank">Leave default</option>
187 <option value="set">Specify</option>
188 </param>
189 <when value="blank" />
190 <when value="set">
191 <param argument="--h1" type="data" format="fastq,fastq.gz" multiple="true" label="Hi-C R1 reads" />
192 <param argument="--h2" type="data" format="fastq,fastq.gz" multiple="true" label="Hi-C R2 reads" />
193 <param argument="--seed" type="integer" min="1" value="" optional="true" label="RNG seed" />
194 <param argument="--n-weight" type="integer" min="1" value="" optional="true" label="Rounds of reweighting Hi-C links" />
195 <param argument="--n-perturb" type="integer" min="1" value="" optional="true" label="Rounds of perturbation" />
196 <param argument="--f-perturb" type="float" min="0" max="1" value="" optional="true" label="Fraction to flip for perturbation" />
197 </when>
198 </conditional>
199
147 </inputs> 200 </inputs>
148 <outputs> 201 <outputs>
149 <data name="raw_unitigs" format="gfa1" from_work_dir="output.r_utg.gfa" label="${tool.name} on ${on_string}, haplotype-resolved raw unitig graph"> 202 <data name="raw_unitigs" format="gfa1" from_work_dir="output.r_utg.gfa" label="${tool.name} on ${on_string}, haplotype-resolved raw unitig graph">
150 <filter>mode['mode_selector'] == 'standard'</filter> 203 <filter>mode['mode_selector'] == 'standard'</filter>
151 </data> 204 </data>
152 <data name="raw_unitigs" format="gfa1" from_work_dir="output.dip.r_utg.gfa" label="${tool.name} on ${on_string}, haplotype-resolved raw unitig graph"> 205 <data name="raw_unitigs_trio" format="gfa1" from_work_dir="output.dip.r_utg.gfa" label="${tool.name} on ${on_string}, haplotype-resolved raw unitig graph">
153 <filter>mode['mode_selector'] == 'trio'</filter> 206 <filter>mode['mode_selector'] == 'trio'</filter>
154 </data> 207 </data>
155 <data name="processed_unitigs" format="gfa1" from_work_dir="output.p_utg.gfa" label="${tool.name} on ${on_string}, processed unitig graph"> 208 <data name="processed_unitigs" format="gfa1" from_work_dir="output.p_utg.gfa" label="${tool.name} on ${on_string}, processed unitig graph">
156 <filter>mode['mode_selector'] == 'standard'</filter> 209 <filter>mode['mode_selector'] == 'standard'</filter>
157 </data> 210 </data>
159 <filter>mode['mode_selector'] == 'standard'</filter> 212 <filter>mode['mode_selector'] == 'standard'</filter>
160 </data> 213 </data>
161 <data name="alternate_contig_graph" format="gfa1" from_work_dir="output.a_ctg.gfa" label="${tool.name} on ${on_string}, alternate assembly contig graph"> 214 <data name="alternate_contig_graph" format="gfa1" from_work_dir="output.a_ctg.gfa" label="${tool.name} on ${on_string}, alternate assembly contig graph">
162 <filter>mode['mode_selector'] == 'standard'</filter> 215 <filter>mode['mode_selector'] == 'standard'</filter>
163 </data> 216 </data>
164 <data name="hap1_contigs" format="gfa1" from_work_dir="output.hap1.p_ctg.gfa" label="${tool.name} ${mode.hap1_reads.name}, contig graph"> 217 <data name="hap1_contigs" format="gfa1" from_work_dir="output.hap1.p_ctg.gfa" label="${tool.name} on ${on_string}, hap1.p_ctg contig graph">
165 <filter>mode['mode_selector'] == 'trio'</filter> 218 <filter>mode['mode_selector'] == 'trio'</filter>
166 </data> 219 </data>
167 <data name="hap2_contigs" format="gfa1" from_work_dir="output.hap2.p_ctg.gfa" label="${tool.name} ${mode.hap2_reads.name}, contig graph"> 220 <data name="hap2_contigs" format="gfa1" from_work_dir="output.hap2.p_ctg.gfa" label="${tool.name} on ${on_string}, hap2.p_ctg contig graph">
168 <filter>mode['mode_selector'] == 'trio'</filter> 221 <filter>mode['mode_selector'] == 'trio'</filter>
222 </data>
223 <!-- Hi-C partition outputs -->
224 <data name="hic_contig_graph" format="gfa1" from_work_dir="output.hic.p_ctg.gfa" label="${tool.name} ${on_string}, HI-C contig graph">
225 <filter>hic_partition['hic_partition_selector'] == 'set'</filter>
226 </data>
227 <data name="hic_balanced_contig_hap1_graph" format="gfa1" from_work_dir="output.bp.hap1.p_ctg.gfa" label="${tool.name} ${on_string}, HI-C hap1 balanced contig graph hap1">
228 <filter>hic_partition['hic_partition_selector'] == 'set'</filter>
229 </data>
230 <data name="hic_balanced_contig_hap2_graph" format="gfa1" from_work_dir="output.bp.hap2.p_ctg.gfa" label="${tool.name} ${on_string}, HI-C hap2 balanced contig graph hap2">
231 <filter>hic_partition['hic_partition_selector'] == 'set'</filter>
169 </data> 232 </data>
170 </outputs> 233 </outputs>
171 <tests> 234 <tests>
172 <test> 235 <test>
173 <param name="reads" value="hifiasm-in1.fa.gz" ftype="fasta.gz" /> 236 <param name="reads" value="hifiasm-in1.fa.gz" ftype="fasta.gz" />
174 <param name="filter_bits" value="0" /> 237 <param name="filter_bits" value="0" />
175 <param name="mode_selector" value="standard" /> 238 <param name="mode_selector" value="standard" />
176 <output name="raw_unitigs" file="hifiasm-out1-raw.gfa" ftype="gfa1" /> 239 <output name="raw_unitigs" file="hifiasm-out1-raw.gfa" ftype="gfa1" />
177 <output name="processed_unitigs" file="hifiasm-out1-processed.gfa" ftype="gfa1" /> 240 <output name="processed_unitigs" file="hifiasm-out1-processed.gfa" ftype="gfa1" />
178 <output name="primary_contig_graph" file="hifiasm-out1-primary.gfa" ftype="gfa1" /> 241 <output name="primary_contig_graph" file="hifiasm-out1-primary.gfa" ftype="gfa1" />
179 <output name="alternate_contig_graph" file="hifiasm-out1-alternate.gfa" ftype="gfa1" /> 242 <output name="alternate_contig_graph" ftype="gfa1">
243 <assert_contents>
244 <has_size value="0"/>
245 </assert_contents>
246 </output>
180 </test> 247 </test>
181 <test> 248 <test>
182 <param name="reads" value="hifiasm-in2-0.fa.gz,hifiasm-in2-1.fa.gz,hifiasm-in2-2.fa.gz,hifiasm-in2-3.fa.gz,hifiasm-in2-4.fa.gz" ftype="fasta.gz" /> 249 <param name="reads" value="hifiasm-in2-0.fa.gz,hifiasm-in2-1.fa.gz,hifiasm-in2-2.fa.gz,hifiasm-in2-3.fa.gz,hifiasm-in2-4.fa.gz" ftype="fasta.gz" />
183 <param name="filter_bits" value="0" /> 250 <param name="filter_bits" value="0" />
184 <param name="mode_selector" value="standard" /> 251 <param name="mode_selector" value="standard" />
185 <output name="raw_unitigs" file="hifiasm-out2-raw.gfa" ftype="gfa1" /> 252 <output name="raw_unitigs" file="hifiasm-out2-raw.gfa" ftype="gfa1" />
186 <output name="processed_unitigs" file="hifiasm-out2-processed.gfa" ftype="gfa1" /> 253 <output name="processed_unitigs" file="hifiasm-out2-processed.gfa" ftype="gfa1" />
187 <output name="primary_contig_graph" file="hifiasm-out2-primary.gfa" ftype="gfa1" /> 254 <output name="primary_contig_graph" file="hifiasm-out2-primary.gfa" ftype="gfa1" />
188 <output name="alternate_contig_graph" file="hifiasm-out2-alternate.gfa" ftype="gfa1" /> 255 <output name="alternate_contig_graph" ftype="gfa1">
256 <assert_contents>
257 <has_size value="0"/>
258 </assert_contents>
259 </output>
260 </test>
261
262 <!-- Test Hi-C
263 <test>
264 <param name="reads" value="hifiasm-in1.fa.gz" ftype="fasta.gz" />
265 <param name="filter_bits" value="0" />
266 <param name="mode_selector" value="standard" />
267 <conditional name="hic_partition">
268 <param name="hic_partition_selector" value="set"/>
269 <param name="h1" value="r1_1.fq"/>
270 <param name="h2" value="r2_1.fq"/>
271 </conditional>
272 <output name="raw_unitigs" file="hifiasm-out3-raw.gfa" ftype="gfa1" />
273 <output name="processed_unitigs" file="hifiasm-out3-processed.gfa" ftype="gfa1" />
274 <output name="primary_contig_graph" file="hifiasm-out3-primary.gfa" ftype="gfa1" />
275 <output name="alternate_contig_graph" ftype="gfa1">
276 <assert_contents>
277 <has_size value="0"/>
278 </assert_contents>
279 </output>
280 </test>
281 -->
282 <!-- Test trio mode -->
283 <test>
284 <param name="filter_bits" value="0"/>
285 <conditional name="mode">
286 <param name="mode_selector" value="trio"/>
287 <param name="reads" value="child.fasta.gz"/>
288 <param name="hap1_reads" value="paternal.fasta.gz"/>
289 <param name="hap2_reads" value="maternal.fasta.gz"/>
290 <param name="max_kmers" value="2"/>
291 <param name="min_kmers" value="5"/>
292 </conditional>
293 <output name="raw_unitigs_trio" ftype="gfa1">
294 <assert_contents>
295 <has_size value="0"/>
296 </assert_contents>
297 </output>
298 <output name="hap1_contigs">
299 <assert_contents>
300 <has_size value="0"/>
301 </assert_contents>
302 </output>
303 <output name="hap2_contigs">
304 <assert_contents>
305 <has_size value="0"/>
306 </assert_contents>
307 </output>
308 </test>
309 <!-- Test ignore-error-corrected option -->
310 <test>
311 <param name="reads" value="hifiasm-in1.fa.gz" ftype="fasta.gz" />
312 <param name="filter_bits" value="0" />
313 <param name="mode_selector" value="standard" />
314 <conditional name="assembly_options">
315 <param name="assembly_selector" value="set"/>
316 <param name="ignore_error_corrected" value="True"/>
317 </conditional>
318 <output name="raw_unitigs" file="hifiasm-out3-raw.gfa" ftype="gfa1" />
319 <output name="processed_unitigs" file="hifiasm-out3-processed.gfa" ftype="gfa1" />
320 <output name="primary_contig_graph" file="hifiasm-out3-primary.gfa" ftype="gfa1" />
321 <output name="alternate_contig_graph" ftype="gfa1">
322 <assert_contents>
323 <has_size value="0"/>
324 </assert_contents>
325 </output>
326 </test>
327 <!-- Test expected haplotype number -->
328 <test>
329 <param name="reads" value="hifiasm-in1.fa.gz" ftype="fasta.gz" />
330 <param name="filter_bits" value="0" />
331 <param name="mode_selector" value="standard" />
332 <conditional name="purge_options">
333 <param name="purge_selector" value="set"/>
334 <param name="n_hap" value="1"/>
335 </conditional>
336 <output name="raw_unitigs" file="hifiasm-out4-raw.gfa" ftype="gfa1" />
337 <output name="processed_unitigs" file="hifiasm-out4-processed.gfa" ftype="gfa1" />
338 <output name="primary_contig_graph" file="hifiasm-out4-primary.gfa" ftype="gfa1" />
339 <output name="alternate_contig_graph" ftype="gfa1">
340 <assert_contents>
341 <has_size value="0"/>
342 </assert_contents>
343 </output>
344 </test>
345 <!-- Test min_hist_cnt option -->
346 <test>
347 <param name="reads" value="hifiasm-in1.fa.gz" ftype="fasta.gz" />
348 <param name="filter_bits" value="0" />
349 <param name="mode_selector" value="standard" />
350 <conditional name="advanced_options">
351 <param name="advanced_selector" value="set"/>
352 <param name="min_hist_cnt" value="1"/>
353 </conditional>
354 <output name="raw_unitigs" file="hifiasm-out5-raw.gfa" ftype="gfa1" />
355 <output name="processed_unitigs" file="hifiasm-out5-processed.gfa" ftype="gfa1" />
356 <output name="primary_contig_graph" file="hifiasm-out5-primary.gfa" ftype="gfa1" />
357 <output name="alternate_contig_graph" ftype="gfa1">
358 <assert_contents>
359 <has_size value="0"/>
360 </assert_contents>
361 </output>
189 </test> 362 </test>
190 </tests> 363 </tests>
191 <help><![CDATA[ 364 <help><![CDATA[
192 *********************************** 365 ***********************************
193 HiFiASM - a fast de novo assembler 366 HiFiASM - a fast de novo assembler
229 - *Similarity threshold for duplicate haplotigs* 402 - *Similarity threshold for duplicate haplotigs*
230 - *Minimum overlapped reads for duplicate haplotigs* 403 - *Minimum overlapped reads for duplicate haplotigs*
231 - *Coverage upper bound* If not set, this will be determined automatically 404 - *Coverage upper bound* If not set, this will be determined automatically
232 - *Experimental high-heterozygosity mode* enable this mode for high heterozygosity sample NB: May be unstable 405 - *Experimental high-heterozygosity mode* enable this mode for high heterozygosity sample NB: May be unstable
233 406
407 #### Hi-C-partition options
408
409 - *RNG seed*
410 - *Rounds of reweighting Hi-C links* : increasing this may improves phasing results but takes longer time.
411 - *Rounds of perturbation* : increasing this may improves phasing results but takes longer time.
412 - *Fraction to flip for perturbation* : increasing this may improves phasing results but takes longer time.
234 413
235 ### Outputs 414 ### Outputs
236 415
237 Non Trio assembly 416 Non Trio assembly
238 - Haplotype-resolved raw unitig graph in GFA format. This graph keeps all haplotype information, including somatic mutations and recurrent sequencing errors. 417 - Haplotype-resolved raw unitig graph in GFA format. This graph keeps all haplotype information, including somatic mutations and recurrent sequencing errors.
239 - Haplotype-resolved processed unitig graph without small bubbles : Small bubbles might be caused by somatic mutations or noise in data, which are not the real haplotype information. 418 - Haplotype-resolved processed unitig graph without small bubbles : Small bubbles might be caused by somatic mutations or noise in data, which are not the real haplotype information.
240 - Primary assembly contig graph : This graph collapses different haplotypes. 419 - Primary assembly contig graph : This graph collapses different haplotypes.
241 - Alternate assembly contig graph : This graph consists of all assemblies that are discarded in primary contig graph. 420 - Alternate assembly contig graph : This graph consists of all assemblies that are discarded in primary contig graph.
242 421
243 422
244 Trio assembly 423 Trio assembly
245 - Haplotype-resolved raw unitig graph in GFA format . This graph keeps all haplotype information. 424 - Haplotype-resolved raw unitig graph in GFA format . This graph keeps all haplotype information.