- Notifications
You must be signed in to change notification settings - Fork16
🌈Scaffold genome sequence assemblies using linked or long read sequencing data
License
bcgsc/arcs
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Scaffolding genome sequence assemblies using linked or long read sequencing data
- Description
- Run modes - cheat sheet
- Install
- Dependencies
- Installation
- ARCS+LINKS pipeline
- Running ARCS with linked reads
- Running ARCS with long reads
- Running alignment-free ARKS with linked reads
- Running alignment-free ARKS with long reads
- Simulating pseudo-linked reads from long reads
- Demo
- Using stLFR linked reads
- About ARCS/ARKS
- Citing ARCS/ARKS/LINKS
- License
ARCS and ARKS are genome sequence assembly scaffolders using linked and long read sequencing data
ARCS can be run in 4 modes:
- ARCS (default) uses alignments of linked reads to the input contigs
- ARCS-long (
arcs-long
) uses alignments of long reads to the input contigs - ARKS (
--arks
) uses exact k-mer mapping to associate linked reads to input contigs - ARKS-long (
arks-long
) uses exact k-mer mapping to associate long reads to input contigs
Because ARKS is not dependent on read alignments, it is generally much faster than ARCS. However, ARCS is recommended for use with very fragmented assemblies and/or large genomes.
- Boost (tested on 1.61)
- GCC (6+)
- Autotools (if cloning directly from repository)
- LINKS (tested on 1.8)
- Google SparseHash
- ABySS (if using long reads)
- btllib (1.4.3+)
If cloning directly from the repository run:
./autogen.sh
To compile ARCS run:
./configure && make
To install ARCS in a specified directory:
./configure --prefix=/ARCS/PATH && make install
If your boost library headers are not in your PATH you can specify their location:
./configure –-with-boost=/boost/path --prefix=/ARCS/PATH && make install
If you compiled btllib from source (as opposed to installation using conda), you can specify the location of the btllib library files:
export CXXFLAGS+=" -I /path/to/btllib/include"export LDFLAGS+=" -L /path/to/btllib/install/lib"./configure && make
If using thearcs-make
Makefile, ensure that the directory where thearcs
binary is located is on your PATH.
The ARCS+LINKS pipeline requires two input files:
- Draft assembly fasta file
- Reads file in fastq format
*.fq.gz
(or fasta format*.fa.gz
if using long reads)- For linked reads, ARCS expects an interleaved linked reads file (Barcode sequence expected in the BX tag of the read header or in the form "@readname_barcode" ; RunLong Ranger basic on raw chromium reads to produce this interleaved file)
The Makefile located here: bin/arcs-make will run the full ARCS pipeline. It will also optionally run the misassembly correctorTigmint prior to scaffolding with ARCS. If you are running Tigmint in your pipeline, please ensure that all input files are in your current working directory.
There are three steps to the pipeline:
Run ARCS to generate a Graphviz Dot file (.gv). Nodes in the graph are the sequences to scaffold, and edges show that there is evidence to suggest nodes are linked based on the data obtained from the GemCode/Chromium reads.
Run the python script bin/makeTSVfile.py to generate a file named XXX.tigpair_checkpoint file from the ARCS graph file. The XXX.tigpair_checkpoint file will be provided to LINKS in step 3.
Run LINKS with the XXX.tigpair_checkpoint file as input. To do this, the base name (-b) must be set to the same name as XXX.
When using the-D
/--dist_est
ARCS option to estimate gap sizes, the user is recommended to use LINKS v1.8.6 or later.
The default mode uses alignments of linked reads to contigs to scaffold the input contigs.
To run the pipeline in default mode, runbin/arcs-make arcs
. For example, to scaffold the assemblymy_scaffolds.fa
with the interleaved, longranger processed readsmy_reads.fq.gz
, specifying a minimum contig length of 1000bp:
arcs-make arcs draft=my_scaffolds reads=my_reads z=1000
For more info checkbin/arcs-make help
.
To run thearcs
executable in default mode, runarcs <alignments>
. For descriptions of all arguments, runarcs --help
.
The arcs-long mode first segments and assigns barcodes to the long reads, yielding pseudo-linked reads. Alignments of the pseudo-linked reads are then used to scaffold the input contigs.
To run the pipeline in arcs-long mode, runbin/arcs-make arks-long
. For example, to scaffold the assemblymy_scaffolds.fa
with long readsmy_reads.fa.gz
ormy_reads.fq.gz
, specifying a minimum contig length of 1000bp:
arcs-make arcs-long draft=my_scaffolds reads=my_reads z=1000
The input long reads can be gzipped or uncompressed. For more info checkbin/arcs-make help
.
Parameters: To account for the higher error rates in long reads vs linked reads, we suggest starting with the following values:
m=8-10000
s=70
c=4
l=4
a=0.3
Note that loweringc
,l
and increasinga
may increase contiguity, but will likely increase the number of misassemblies as well.
To run the pipeline in ARKS mode, runbin/arcs-make arcs
. For example, to scaffold the assemblymy_scaffolds.fa
with the interleaved, longranger processed readsmy_reads.fq.gz
, specifying a kmer size of 60:
arcs-make arks draft=my_scaffolds reads=my_reads k=60
For more info checkbin/arcs-make help
.
To run thearcs
executable in ARKS mode, runarcs --arks
. For descriptions of all arguments, runarcs --help
.
The arks-long mode first segments and assigns barcodes to the long reads, yielding pseudo-linked reads. Scaffolding is performed based on exact k-mer mapping of pseudo-linked reads to the input contigs.
To run the pipeline in arks-long mode, runbin/arcs-make arks-long
. For example, to scaffold the assemblymy_scaffolds.fa
with long readsmy_reads.fa.gz
ormy_reads.fq.gz
, specifying a kmer size of 20 andj
of 0.05:
arcs-make arks-long draft=my_scaffolds reads=my_reads k=20 j=0.05
Parameters: To account for the higher error rates in long reads vs linked reads, we suggest starting with the following values:
m=8-10000
j=0.05
k=20
c=4
l=4
a=0.3
The input long reads can be gzipped or uncompressed.
You can test your installation by running one of our supplied demos:
- ARCS:
Examples/arcs_test-demo
- ARCS-long:
Examples/arcs-long_test-demo
- ARKS:
Examples/arks_test-demo
- ARKS-long:
Examples/arks-long_test-demo
You can compare your output to the files provided in theoutput
folders within the above directories.
To use stLFR linked reads with ARCS, you will need to re-format the reads to have the barcode in aBX:Z:
tag in the read header.For example, this format
@V100002302L1C001R017000000#0_0_0/1 01TGTCTTCCTGGACAGCTGACATCCCTTTTGTTTTTCTGTTTGCTCAGATGCTGTCTCTTATACACATCTTAGGAAGACAAGCACTGACGACATGATCACC+FFFFFFFGFGFFGFDFGFFFFFFFFFFFGFFF@FFFFFFFFFFFF@FFFFFFFFFGGFFEFEFFFF?FFFFGFFFGFFFFFFFGFFEFGFGGFGFFFGFF
should be changed to:
@V100002302L1C001R017000000 BX:Z:0_0_0TGTCTTCCTGGACAGCTGACATCCCTTTTGTTTTTCTGTTTGCTCAGATGCTGTCTCTTATACACATCTTAGGAAGACAAGCACTGACGACATGATCACC+FFFFFFFGFGFFGFDFGFFFFFFFFFFFGFFF@FFFFFFFFFFFF@FFFFFFFFFGGFFEFEFFFF?FFFFGFFFGFFFFFFFGFFEFGFGGFGFFFGFF
Thank you for your and for using, developing and promoting this free software!
If you use ARCS/ARKS/LINKS in your research, please cite:
ARKS: chromosome-scale scaffolding of human genome drafts with linked read kmers.Coombe L, Zhang J, Vandervalk BP, Chu J, Jackman SD, Birol I, Warren RL.BMC Bioinformatics. 2018 Jun 20;19(1):234. doi: 10.1186/s12859-018-2243-x.
ARCS: scaffolding genome drafts with linked reads.Yeo S, Coombe L, Warren RL, Chu J, Birol I.Bioinformatics. 2018 Mar 1;34(5):725-731. doi: 10.1093/bioinformatics/btx675.
NOTE: The supplementary data and scripts have been moved tohttp://www.bcgsc.ca/downloads/supplementary/ARCS/
LINKS: Scalable, alignment-free scaffolding of draft genomes with long reads.Warren RL, Yang C, Vandervalk BP, Behsaz B, Lagman A, Jones SJ, Birol I.Gigascience. 2015 Aug 4;4:35. doi: 10.1186/s13742-015-0076-3. eCollection 2015.
ARCS Copyright (c) 2016-present British Columbia Cancer Agency Branch. All rights reserved.
ARCS is released under the GNU General Public License v3
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, seehttp://www.gnu.org/licenses/.
For commercial licensing options, please contact Patrick Rebsteinprebstein@bccancer.bc.ca
About
🌈Scaffold genome sequence assemblies using linked or long read sequencing data