├── smalt
├── reads.fastq
├── reference.fasta
├── Dockerfile
├── instructions.sh
├── README.md
└── smalt_wrapper.xml
├── catDocker.xml
└── README.md
/smalt/reads.fastq:
--------------------------------------------------------------------------------
1 | @1
2 | AAAA
3 | +
4 | IIII
5 | @2
6 | AAAA
7 | +
8 | IIII
9 |
--------------------------------------------------------------------------------
/smalt/reference.fasta:
--------------------------------------------------------------------------------
1 | >a
2 | AAAAGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG
3 |
--------------------------------------------------------------------------------
/catDocker.xml:
--------------------------------------------------------------------------------
1 |
2 | tail-to-head
3 |
4 | busybox:ubuntu-12.04
5 |
6 |
7 | echo "Galaxy slots passed through contain as \$GALAXY_SLOTS";
8 | cat $input1
9 | #for $q in $queries
10 | ${q.input2}
11 | #end for
12 | > $out_file1;
13 | echo "Work dir output" > working_file
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
--------------------------------------------------------------------------------
/smalt/Dockerfile:
--------------------------------------------------------------------------------
1 | # Galaxy - SMALT
2 | # From https://toolshed.g2.bx.psu.edu/repository/view_repository?sort=Repository.name&operation=view_or_manage_repository&changeset_revision=54855bd8d107&id=ec70d959cc6d865d
3 |
4 | FROM debian:wheezy
5 |
6 | MAINTAINER Aaron Petkau, aaron.petkau@gmail.com
7 |
8 | # make sure the package repository is up to date
9 | RUN DEBIAN_FRONTEND=noninteractive apt-get -qq update
10 |
11 | RUN DEBIAN_FRONTEND=noninteractive apt-get install -y python
12 | RUN DEBIAN_FRONTEND=noninteractive apt-get install -y wget
13 | RUN DEBIAN_FRONTEND=noninteractive apt-get install -y mercurial
14 |
15 | RUN mkdir /tmp/smalt
16 | WORKDIR /tmp/smalt
17 |
18 | RUN wget ftp://ftp.sanger.ac.uk/pub4/resources/software/smalt/smalt-0.7.3.tgz
19 | RUN tar -xvvzf smalt-0.7.3.tgz
20 | RUN cp smalt-0.7.3/smalt_x86_64 /usr/bin/smalt_unknown
21 |
22 | RUN hg clone https://toolshed.g2.bx.psu.edu/repos/cjav/smalt smalt_deps
23 | RUN cp smalt_deps/smalt_wrapper.py /usr/bin/smalt_wrapper.py
24 | RUN chmod a+x /usr/bin/smalt_wrapper.py
25 |
26 | RUN apt-get clean && rm -rf /tmp/smalt && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
27 |
--------------------------------------------------------------------------------
/smalt/instructions.sh:
--------------------------------------------------------------------------------
1 | # Run docker image 'debian/wheezy' in interactive mode
2 | sudo docker run -i -t debian:wheezy
3 |
4 | # Run the below in this image
5 |
6 | apt-get update
7 | apt-get install python
8 | apt-get install wget
9 | apt-get install mercurial
10 |
11 | mkdir tool
12 | cd tool
13 |
14 | wget ftp://ftp.sanger.ac.uk/pub4/resources/software/smalt/smalt-0.7.3.tgz
15 | tar -xvvzf smalt-0.7.3.tgz
16 |
17 | # because the smalt_wrapper.py finds the binary name based on `uname -i` which is unknown in docker
18 | mv smalt-0.7.3/smalt_x86_64 smalt_unknown
19 |
20 | hg clone https://toolshed.g2.bx.psu.edu/repos/cjav/smalt smalt_deps
21 | cp smalt_deps/smalt_wrapper.py .
22 |
23 | # add smalt tools to PATH (probably different ways to do this)
24 | ln -s /tool/smalt_unknown /usr/bin
25 | ln -s /tool/smalt_wrapper.py /usr/bin
26 |
27 | # make smalt_wrapper executable
28 | chmod a+x /tool/smalt_wrapper.py
29 |
30 | # exit out of docker image and run the below to commit to new container. replace the number '07b...' with container id for the above docker container.
31 | sudo docker commit -m "make smalt_wrapper executable" -a "Aaron Petkau" 07b937918961 apetkau/smalt:v3
32 |
33 | # push to dockerhub
34 | # please see instructions at http://docs.docker.com/userguide/dockerimages/#push-an-image-to-docker-hub
35 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | Integrating Docker-based tools within Galaxy
2 | ============================================
3 |
4 | This document describes a method for integrating [Docker](http://www.docker.com/) based tools within [Galaxy](http://galaxyproject.org/). Docker is a method for wrapping up a tool along with all of it's dependencies into a single container which can be distrubted with the help of [Dockerhub](https://hub.docker.com/). A method to run docker based tools was added to Galaxy in https://bitbucket.org/galaxy/galaxy-central/pull-request/401/allow-tools-and-deployers-to-specify/diff.
5 |
6 | Initial Galaxy and Docker Setup
7 | -------------------------------
8 |
9 | ### Setup Latest Galaxy
10 |
11 | Please download and setup the latest Galaxy from galaxy-central. More detailed instructions are found at https://wiki.galaxyproject.org/Admin/GetGalaxy but the two main commands you need to run are:
12 |
13 | ```bash
14 | $ hg clone https://bitbucket.org/galaxy/galaxy-central
15 | $ cd galaxy-central
16 | $ sh run.sh
17 | ```
18 |
19 | ### Setup Docker Test Tool
20 |
21 | A test tool configuration file `catDocker.xml` is included with Galaxy (or at [catDocker.xml](catDocker.xml)). This can be setup with the following commands (run within `galaxy-central` directory).
22 |
23 | 1. Setup `catDocker.xml` tool
24 |
25 | ```bash
26 | $ mkdir tools/docker
27 | $ cp test/functional/tools/catDocker.xml tools/docker/
28 | ```
29 |
30 | Now, in the `tool_conf.xml` file please add a new section for this tool:
31 |
32 | ```xml
33 |
34 |
35 |
36 | ```
37 |
38 | 2. Construct a `job_conf.xml` which instructs Galaxy to run tools docker-based tools using docker.
39 |
40 | Construct a basic `job_conf.xml` with the following command.
41 |
42 | ```bash
43 | cp job_conf.xml.sample_basic job_conf.xml
44 | ```
45 |
46 | Add a docker destination in `job_conf.xml` to enable running through docker:
47 |
48 | ```xml
49 |
50 |
51 |
52 | true
53 |
54 |
55 | ```
56 |
57 | More information can be found in the `job_conf.xml.sample_advanced` file that comes with Galaxy.
58 |
59 | 3. Enable docker to run using sudo without a password.
60 |
61 | Add docker runner to sudoers file (replace `galaxy` with the username you are running galaxy under):
62 |
63 | ```
64 | galaxy ALL = (root) NOPASSWD: SETENV: /usr/bin/docker
65 | ```
66 |
67 | 4. Start up Galaxy
68 |
69 | ```bash
70 | $ sh run.sh
71 | ```
72 |
73 | 5. Test
74 |
75 | Run test tool **Concatenate datasets (in docker)**
76 |
77 | Check log file. If the tool ran you should see entries with `docker` like:
78 |
79 | ```
80 | command is: sudo docker run -e "GALAXY_SLOTS=$GALAXY_SLOTS" -v /home/aaron/Projects/galaxy-central:/home/aaron/Proje
81 | cts/galaxy-central:ro -v /home/aaron/Projects/galaxy-central/tools/docker:/home/aaron/Projects/galaxy-central/tools/docker:ro -v /home/aaron/Projects/galaxy-central/datab
82 | ase/job_working_directory/000/6:/home/aaron/Projects/galaxy-central/database/job_working_directory/000/6:rw -v /home/aaron/Projects/galaxy-central/database/files:/home/aa
83 | ron/Projects/galaxy-central/database/files:rw -w /home/aaron/Projects/galaxy-central/database/job_working_directory/000/6 --net none busybox:ubuntu-14.04 /home/aaron/Projects/galaxy-central/database/job_working_directory/000/6/container.sh; return_code=$?; if [ -f /home/aaron/Projects/galaxy-central/database/job_working_directory/000/6/wo
84 | rking_file ] ; then cp /home/aaron/Projects/galaxy-central/database/job_working_directory/000/6/working_file /home/aaron/Projects/galaxy-central/database/files/000/dataset_10.dat ; fi; sh -c "exit $return_code"
85 | ```
86 |
87 | Integrating SMALT with Docker
88 | -----------------------------
89 |
90 | This contains information on how to integrated a more complicated tool (SMALT) with Docker. Please see documentation at [SMALT+Docker](smalt/).
91 |
--------------------------------------------------------------------------------
/smalt/README.md:
--------------------------------------------------------------------------------
1 | Integration of SMALT into Galaxy and Docker
2 | ===========================================
3 |
4 | This describes a way to construct a docker image and modify a tool within Galaxy to work with Docker. The tool I use is SMALT from https://toolshed.g2.bx.psu.edu/repository/find_tools?sort=Repository.name&operation=view_or_manage_repository&id=61631a13f8a13237.
5 |
6 | 1. Building a Docker Image
7 | ==========================
8 |
9 | There are two different methods to construct a docker image for a tool:
10 |
11 | 1. Interactively
12 | 2. Using a `Dockerfile`
13 |
14 | 1. Building a Docker Image Interactively
15 | ----------------------------------------
16 |
17 | The interactive method of constructing a docker image is a good method for installing all the dependencies for a tool if you're not quite sure exactly what commands you need to run to get the tool working. This method involves starting up a docker container, and running commands within this container to get your tool working. Then, you can **commit** this container to an image and save to dockerhub for re-use.
18 |
19 | ### Step 1: Starting up a Docker base Image
20 |
21 | To build a docker image we need a starting point. The base image we will use is **debian/wheezy** since it contains `apt-get` for installing more software. To start up this image in an interactive mode please run:
22 |
23 | ```bash
24 | $ sudo docker run -i -t debian:wheezy
25 | ```
26 |
27 | This should bring up a prompt that looks like:
28 |
29 | ```
30 | root@2c1077a38bce:/#
31 | ```
32 |
33 | Note that the id `2c1077a38bce` can be used later for saving this container to an image.
34 |
35 | ### Step 2: Installing Basic Dependencies
36 |
37 | A few dependencies are required to install SMALT. These can be installed with:
38 |
39 | ```bash
40 | $ apt-get update
41 | $ apt-get install python
42 | $ apt-get install wget
43 | $ apt-get install mercurial
44 | ```
45 |
46 | ### Step 3: Installing SMALT
47 |
48 | We will install SMALT by downloading the necessary software and copying to `/usr/bin`. This can be accomplished with:
49 |
50 | ```bash
51 | $ mkdir tool
52 | $ cd tool
53 |
54 | $ wget ftp://ftp.sanger.ac.uk/pub4/resources/software/smalt/smalt-0.7.3.tgz
55 | $ tar -xvvzf smalt-0.7.3.tgz
56 |
57 | # because the smalt_wrapper.py finds the binary name based on `uname -i` which is unknown in docker
58 | $ mv smalt-0.7.3/smalt_x86_64 smalt_unknown
59 |
60 | $ hg clone https://toolshed.g2.bx.psu.edu/repos/cjav/smalt smalt_deps
61 | $ cp smalt_deps/smalt_wrapper.py .
62 |
63 | # add smalt tools to /usr/bin so they're on the PATH
64 | $ ln -s /tool/smalt_unknown /usr/bin
65 | $ ln -s /tool/smalt_wrapper.py /usr/bin
66 |
67 | # make smalt_wrapper executable
68 | $ chmod a+x /tool/smalt_wrapper.py
69 | ```
70 |
71 | You can test out SMALT by trying to run `smalt_unknown` and `smalt_wrapper.py` in the docker container.
72 |
73 | ### Step 4: Building an Image
74 |
75 | To build the docker image from the container, please exit the container and run the following:
76 |
77 | ```bash
78 | $ sudo docker commit -m "make smalt image" -a "Aaron Petkau" 2c1077a38bce apetkau/smalt-galaxy
79 | ```
80 |
81 | Please fill in the appropriate information for your image. In particular, make sure the container id `2c1077a38bce` is correct.
82 |
83 | To push this image to dockerhub you can run:
84 |
85 | ```bash
86 | $ sudo docker push apetkau/smalt-galaxy
87 | ```
88 |
89 | 2. Building an image using a `Dockerfile`
90 | -----------------------------------------
91 |
92 | Alternatively, instead of building an image interactively, you can build an image with a `Dockerfile`. An example Dockerfile can be found in this repository at [Dockerfile](Dockerfile). To build an image please run:
93 |
94 | ```bash
95 | $ sudo docker build -t apetkau/smalt-galaxy .
96 | ```
97 |
98 | More information on Dockerfiles can be found at https://docs.docker.com/reference/builder/.
99 |
100 | 2. Installing Tool configuration
101 | ================================
102 |
103 | ### Installing Example file
104 |
105 | Once a Docker image has been built, it can be integrated into a tool by modifying the tool configuration XML file. For SMALT, the configuration file is [smalt_wrapper.xml](smalt_wrapper.xml). This is based on https://toolshed.g2.bx.psu.edu/repos/cjav/smalt/file/54855bd8d107/smalt_wrapper.xml. And can be installed by running:
106 |
107 | ```bash
108 | $ cp smalt_wrapper.xml galaxy-central/tools/docker/smalt_wrapper.xml
109 | ```
110 |
111 | Then, please add this tool to the `tool_conf.xml` by adding:
112 |
113 | ```xml
114 |
115 | ```
116 |
117 | ### List of Changes
118 |
119 | The exact changes you I needed to make are:
120 |
121 | 1. I added the specific docker image name to the requirements by changing:
122 |
123 | ```xml
124 |
125 | smalt
126 |
127 | ```
128 |
129 | To
130 |
131 | ```xml
132 |
133 | apetkau/smalt-galaxy
134 |
135 | ```
136 |
137 | 2. I had to remove `interpreter` from the command attribute by changing
138 |
139 | ```xml
140 |
141 | smalt_wrapper.py
142 | ```
143 |
144 | To
145 |
146 | ```xml
147 |
148 | smalt_wrapper.py
149 | ```
150 |
151 | 3. Running Galaxy
152 | =================
153 |
154 | Once the tool is installed, please run Galaxy. And test out the tool. Some example files (reference.fasta and reads.fastq) are included. To make sure it's running in docker you can look for the following `sudo docker run` in the logs:
155 |
156 | ```
157 | galaxy.jobs.runners DEBUG 2014-06-28 16:50:00,930 (18) command is: sudo docker run -e "GALAXY_SLOTS=$GALAXY_SLOTS" -v /home/aaron/Projects/galaxy-central:/home/aaron/Proj
158 | ects/galaxy-central:ro -v /home/aaron/Projects/galaxy-central/tools/docker:/home/aaron/Projects/galaxy-central/tools/docker:ro -v /home/aaron/Projects/galaxy-central/data
159 | base/job_working_directory/000/18:/home/aaron/Projects/galaxy-central/database/job_working_directory/000/18:rw -v /home/aaron/Projects/galaxy-central/database/files:/home
160 | /aaron/Projects/galaxy-central/database/files:rw -w /home/aaron/Projects/galaxy-central/database/job_working_directory/000/18 --net none apetkau/smalt:v3 /home/aaron/Proj
161 | ects/galaxy-central/database/job_working_directory/000/18/container.sh
162 | ```
163 |
--------------------------------------------------------------------------------
/smalt/smalt_wrapper.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | apetkau/smalt-galaxy
4 |
5 | maps query reads onto the reference sequences
6 |
7 | smalt_wrapper.py
8 | --threads="4"
9 |
10 | ## reference source
11 | --fileSource=$genomeSource.refGenomeSource
12 | #if $genomeSource.refGenomeSource == "history":
13 | ##build index on the fly
14 | --ref="${genomeSource.ownFile}"
15 | --dbkey=$dbkey
16 | #else:
17 | ##use precomputed indexes
18 | --ref="${genomeSource.indices.fields.path}"
19 | --do_not_build_index
20 | #end if
21 |
22 | ## input file(s)
23 | --input1=$paired.input1
24 | #if $paired.sPaired == "paired":
25 | --input2=$paired.input2
26 | #end if
27 |
28 | ## output file
29 | --output=$output
30 |
31 | ## run parameters
32 | --genAlignType=$paired.sPaired
33 | --params=$params.source_select
34 | #if $params.source_select != "pre_set":
35 | --scorDiff=$params.scorDiff
36 | #if $paired.sPaired == "paired":
37 | --insertMax=$params.insertMax
38 | --insertMin=$params.insertMin
39 | --pairTyp=$params.pairTyp
40 | #end if
41 | --minScor=$params.minScor
42 | --partialAlignments=$params.partialAlignments
43 | --minBasq=$params.minBasq
44 | --seed=$params.seed
45 | --complexityWeighted=$params.complexityWeighted
46 | --exhaustiveSearch=$params.cExhaustiveSearch.exhaustiveSearch
47 | #if $params.cExhaustiveSearch.exhaustiveSearch == "true"
48 | --minCover=$params.cExhaustiveSearch.minCover
49 | #end if
50 | --minId=$params.minId
51 | #end if
52 |
53 | ## suppress output SAM header
54 | --suppressHeader=$suppressHeader
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 |
110 |
111 |
112 |
113 |
114 |
115 |
116 |
117 |
118 |
119 |
120 |
121 |
125 |
126 |
127 |
128 |
129 |
130 |
131 |
132 |
133 |
134 |
135 |
136 |
137 |
138 | **What it does**
139 |
140 | SMALT is a pairwise sequence alignment program for the experimentingcient mapping of DNA sequencing reads onto genomic reference sequences. It uses a combination of short-word hashing and dynamic programming. Most types of sequencing platforms are supported including paired-end sequencing reads.
141 |
142 | ------
143 |
144 | Please cite the website "http://www.sanger.ac.uk/resources/software/smalt/".
145 |
146 | ------
147 |
148 | **Know what you are doing**
149 |
150 | .. class:: warningmark
151 |
152 | There is no such thing (yet) as an automated gearshift in short read mapping. It is all like stick-shift driving in San Francisco. In other words = running this tool with default parameters will probably not give you meaningful results. A way to deal with this is to **understand** the parameters by carefully reading the `documentation`__ and experimenting. Fortunately, Galaxy makes experimenting easy.
153 |
154 | .. __: http://www.sanger.ac.uk/resources/software/smalt/
155 |
156 | ------
157 |
158 | **Input formats**
159 |
160 | SMALT accepts files in Sanger FASTQ format (galaxy type *fastqsanger*). Use the FASTQ Groomer to prepare your files.
161 |
162 | ------
163 |
164 | **A Note on Built-in Reference Genomes**
165 |
166 | The default variant for all genomes is "Full", defined as all primary chromosomes (or scaffolds/contigs) including mitochondrial plus associated unmapped, plasmid, and other segments. When only one version of a genome is available in this tool, it represents the default "Full" variant. Some genomes will have more than one variant available. The "Canonical Male" or sometimes simply "Canonical" variant contains the primary chromosomes for a genome. For example a human "Canonical" variant contains chr1-chr22, chrX, chrY, and chrM. The "Canonical Female" variant contains the primary chromosomes excluding chrY.
167 |
168 | ------
169 |
170 | **Outputs**
171 |
172 | The output is in SAM format.
173 |
174 | -------
175 |
176 | **SMALT parameter list**
177 |
178 | This is an exhaustive list of SMALT options:
179 |
180 | For **map**::
181 |
182 | -a
183 | Output explicit alignments along with the mappings.
184 |
185 | -c <mincover>
186 | Only consider mappings where the k-mer word seeds cover the query read to
187 | a minimum extent. If <mincover> is an integer or floating point > 1.0, at
188 | least this many bases of the read must be covered by k-mer word seeds. If
189 | <mincover> is a floating point <= 1.0, it specifies the fraction of the
190 | query read length that must be covered by k-mer word seeds. This option
191 | is only valid in conjunction with the '-x' flag.
192 |
193 | -d <scordiff>
194 | Set a threshold of the Smith-Waterman alignment score relative to the
195 | maximum score. When mapping single reads, all alignments are reported
196 | that have Smith-Waterman scores within <scorediff> of the maximum.
197 | Mappings with lower scores are skipped. If <scorediff> is set to to a
198 | value < 0, all alignments are printed that have scores above the
199 | threshold specified with the '-m <minscor>' option.
200 | For paired reads, only a value of 0 is supported. With the option '-d 0'
201 | all aligments (pairings) with the best score are output. By default
202 | (without the option '-d 0') single reads/mates with multiple best mappings
203 | are reported as 'not mapped'.
204 |
205 | -f <format>
206 | Specifies the output format. <format> can be either 'bam', 'cigar', 'gff',
207 | 'sam' (default), 'samsoft' or 'ssaha'. Optional extension 'sam:nohead,clip'
208 | (see manual)
209 |
210 | -F <inform>
211 | Specifies the input format. <inform> can be either 'fastq' (default),
212 | 'sam' or 'bam' (see: samtools.sourceforge.net). SAM and BAM formats
213 | require additional libraries to be installed.
214 |
215 | -g <insfil>
216 | Use the distribution of insert sizes stored in the file <insfil>. This
217 | file is in ASCII format and can be generated using the 'sample' task see
218 | 'smalt sample -H' for help).
219 |
220 | -H
221 | Print these instructions.
222 |
223 | -i <insertmax>
224 | Maximum insert size (only in paired-end mode). The default is 500.
225 |
226 | -j <insertmin>
227 | Minimum insert size (only in paired-end mode). The default is 0.
228 |
229 | -l <pairtyp>
230 | Type of read pair library. <pairtyp> can be either 'pe', i.e. for
231 | the Illumina paired-end library for short inserts (|--> <--|). 'mp'
232 | for the Illumina mate-pair library for long inserts (<--| |-->) or
233 | 'pp' for mates sequenced on the same strand (|--> |-->). 'pe' is the
234 | default.
235 |
236 | -m <minscor>
237 | Sets an absolute threshold of the Smith-Waterman scores. Mappings with
238 | scores below that threshold will not be reported. The default is
239 | <minscor> = <wordlen> + <stepsiz> - 1
240 |
241 | -n <nthreads>
242 | Run smalt using mutiple threads. <nthread> is the number of additional
243 | threads forked from the main thread. The order of the reads in the
244 | input files is not preserved for the output unless '-O' is also specified.
245 |
246 | -o <oufilnam>
247 | Write mapping output (e.g. SAM lines) to a separate file. If this option
248 | is not specified, mappings are written to standard output together with
249 | other messages.
250 |
251 | -O
252 | Output mappings in the order of the reads in the input files when using
253 | multiple threads (option '-n <nthreads>').
254 |
255 | -p
256 | Report partial alignments if they are complementary on the read (split
257 | reads).
258 |
259 | -q <minbasq>
260 | Sets a base quality threshold (0 <= minbasq <= 10, default 0).
261 | K-mer words of the read with nucleotides that have a base quality below
262 | this threshold are not looked up in the hash index.
263 |
264 | -r <seed>
265 | If <seed> >= 0 report an alignment selected at random where there are
266 | multiple mappings with the same best alignment score. With <seed> = 0
267 | (default) a seed is derived from the current calendar time. If <seed>
268 | < 0 reads with multiple best mappings are reported as 'not mapped'.
269 |
270 | -T <tmp_dir>
271 | Write temporary files to directory <tmp_dir> (used with input files in
272 | SAM/BAM format).
273 |
274 | -w
275 | Smith-Waterman scores are complexity weighted.
276 |
277 | -x
278 | This flag triggers a more exhaustive search for alignments at the cost
279 | of decreased speed. In paired-end mode each mate is mapped independently.
280 | (By default the mate with fewer hits in the hash index is mapped first
281 | and the vicinity is searched for mappings of its mate.)
282 |
283 | -y <minid>
284 | Sets an identity threshold for a mapping to be reported (default: 0).
285 | <minid> specifies the number of exactly matching nucleotides either as
286 | a positive integer or as a fraction of the read length (<= 1.0).
287 |
288 |
289 |
290 |
291 |
292 |
--------------------------------------------------------------------------------