-
SPAdes
SPAdes
SPAdes on lyhyiden lukujen kokoaja pienille genomeille. SPAdes toimii Illumina- tai IonTorrent-lukujen kanssa ja pystyy tuottamaan hybridikokoamisia käyttäen PacBio-, Oxford Nanopore- ja Sanger-lukuja.
SPAdes (spades.py) sisältää useita erillisiä moduuleja:
- BayesHammer – lukujen virheenkorjaustyökalu Illumina-lukuille, joka toimii hyvin sekä yksisoluisilla että tavanomaisilla aineistoilla.
- IonHammer – lukujen virheenkorjaustyökalu IonTorrent-datalle, joka toimii myös molemmilla aineistotyypeillä.
- SPAdes – iteratiivinen lyhyiden lukujen genomikokoamismoduuli; K:n arvot valitaan automaattisesti lukupituuden ja aineistotyypin perusteella.
- MismatchCorrector – työkalu, joka parantaa tuloksena syntyvien kontigien ja scaffoldien mismatch- ja lyhyiden indelien määriä; tämä moduuli käyttää BWA-työkalua [Li H. and Durbin R., 2009]; MismatchCorrector on oletuksena pois käytöstä, mutta suosittelemme ottamaan sen käyttöön.
Suosittelemme ajamaan SPAdesia yhdessä BayesHammerin/IonHammerin kanssa korkealaatuisten kokoamisten saamiseksi. Jos kuitenkin käytät omaa lukujen korjaustyökaluasi, virheenkorjausmoduuli on mahdollista kytkeä pois päältä. On myös mahdollista käyttää pelkästään lukujen virheenkorjausvaihetta, jos haluat käyttää toista kokoajaa.
Yleiskäyttöisen SPAdesin lisäksi saatavilla on erityisiä SPAdes-parametrikokonaisuuksia seuraaviin tarkoituksiin:
- Coronaspades (
coronaspades.py) - Metaviralspades (
metaviralspades.py) - Rnaviralspades (
rnaviralspades.py) - Metagenomiikka (
metaspades.py) - Plasmidikokoaminen (
plasmidspades.py) - RNA-Seq-kokoaminen (
rnaspades.py)
Katso lisätietoja SPAdesin dokumentaatiosta.
Lisenssi
Vapaasti käytettävissä ja avointa lähdekoodia GNU GPLv2 -lisenssillä.
Saatavuus
- Puhti: 3.15.5, 4.0.0
Käyttö
Puhdissa SPAdes otetaan käyttöön lataamalla spades-moduuli.
Käyttöohjeen saat komennolla:
Kokoamistehtävät voivat vaatia erittäin paljon resursseja, joten varsinaisia SPAdes-ajoja ei tule koskaan suorittaa Puhdin kirjautumissolmuilla. Kaikissa varsinaisissa analyysitehtävissä suosittelemme ajamaan SPAdesin eräajona.
Esimerkki SPAdes-eräajotiedostosta:
#!/bin/bash
#SBATCH --job-name=SPAdes
#SBATCH --account=<project>
#SBATCH --time=12:00:00
#SBATCH --ntasks=1
#SBATCH --nodes=1
#SBATCH --output==spades_out
#SBATCH --error=sprdes_err
#SBATCH --cpus-per-task=8
#SBATCH --mem=32G
#SBATCH --partition=small
module load biokit
export OMP_NUM_THREADS=$SLURM_CPUS_PER_TASK
srun spades.py --pe1-1 reads_R1.fastq.gz --pe1-2 reads_R2.fastq.gz -t $SLURM_CPUS_PER_TASK -o SpadesResult
Yllä olevassa esimerkissä <project> tulee korvata projektisi nimellä. Voit tarkistaa CSC-projektisi komennolla csc-projects.
Enimmäisajoajaksi on asetettu
12 tuntia (--time=12:00:00). Koska SPAdes käyttää säiepohjaista rinnakkaistamista, prosessia käsitellään yhtenä työnä, joka tulee suorittaa yhdellä solmulla (--ntasks=1, --nodes=1). Työ varaa kahdeksan ydintä --cpus-per-task=8, jotka voivat käyttää yhteensä enintään 32 Gt muistia (--mem=32G). Huomaa, että käytettävien ytimien määrä täytyy määritellä sekä $OMP_NUM_THREADS-ympäristömuuttujalla että varsinaisessa spades.py-komennossa (valinta -t). Tässä tapauksessa käytämme $SLURM_CPUS_PER_TASK-muuttujaa, joka sisältää --cpus-per-task-arvon. Voisimme yhtä hyvin käyttää export OMP_NUM_THREADS=8 ja -t 8, mutta silloin meidän täytyy muistaa muuttaa arvot, jos varattujen CPU-yksiköiden määrä muuttuu.
Työ lähetetään eräajo järjestelmään sbatch-komennolla. Jos esimerkiksi eräajotiedoston
nimi on spades_job.sh, lähetyskomento on:
Lisätietoja eräajojen suorittamisesta löytyy Puhdin käyttöoppaan eräajo-osiosta.