-
Velvet
Velvet
Velvet on sekvenssikokoaja hyvin lyhyille lukemille.
Lisenssi
Vapaasti käytettävissä ja avointa lähdekoodia GNU GPLv2 -lisenssillä.
Saatavuus
- Puhti: 1.2.10
- Chipster -graafinen käyttöliittymä
Käyttö
Puhdissa Velvet-komennot alustetaan komennolla:
velveth (ja vastaava colorspace-versio velveth_de) auttaa muodostamaan aineiston velvetg-ohjelmaa varten. Velveth ottaa syötteeksi joukon sekvenssitiedostoja, tuottaa hajautustaulun ja kirjoittaa sitten tuloshakemistoon kaksi tiedostoa, Sequences ja Roadmaps, joita Velvetg tarvitsee. Syntaksi on seuraava:
Esimerkiksi:
velvetg (ja vastaava colorspace-versio velvetg_de) on Velvetin ydin, jossa de Bruijn -graafi rakennetaan ja sitä sitten käsitellään. velvetg-komennon syntaksi on:
velvetg-komento voi näyttää esimerkiksi tältä:
Kun Velvet käännettiin Puhdissa, suurin sallittu k-merin pituus määriteltiin valmiiksi. Mitä pidempi suurin k-mer on, sitä enemmän muistia Velvet tarvitsee (riippumatta siitä, mitä k-merin pituutta todellisuudessa käytetään). Tämän vuoksi tarjoamme useita Velvet-versioita, jotka on lueteltu alla olevassa taulukossa. Puhdissa hajautustaulussa käytettävä oletusarvoinen suurin k-merin pituus on 100 emästä. On kuitenkin suositeltavaa käyttää versiota, jossa suurin mahdollinen k-merin pituus on mahdollisimman lyhyt. Esimerkiksi k-merin pituudelle 40 kannattaa käyttää komentoja velveth_maxk50 ja velvetg_maxk50.
Puhdissa saatavilla olevat Velvet-ohjelmat
| Ohjelma | maks. k-merin pituus | tyyppi |
|---|---|---|
velveth |
100 | normal |
velvetg |
100 | normal |
velveth_maxk75 |
75 | normal |
velvetg_maxk75 |
75 | normal |
velveth_maxk50 |
50 | normal |
velvetg_maxk50 |
50 | normal |
velveth_maxk35 |
35 | normal |
velvetg_maxk35 |
35 | normal |
velveth_de |
100 | colorspace |
velvetg_de |
100 | colorspace |
velveth_de_maxk75 |
75 | colorspace |
velvetg_de_maxk75 |
75 | colorspace |
velveth_de_maxk50 |
50 | colorspace |
velvetg_de_maxk50 |
50 | colorspace |
velveth_de_maxk35 |
35 | colorspace |
velvetg_de_maxk35 |
35 | colorspace |
Puhdissa Velvet-työt tulee suorittaa eräajojärjestelmän kautta. Alla on esimerkkieräajotiedosto Velvetille:
#!/bin/bash
#SBATCH --job-name=velvet
#SBATCH --output=put=output_velvet2.txt
#SBATCH --error=errors_velvet2.txt
#SBATCH --account=<project>
#SBATCH --time=4-00:00:00
#SBATCH --ntasks=1
#SBATCH --partition=longrun
#SBATCH --nodes=1
#SBATCH --cpus-per-task=4
#SBATCH --mem=64G
module load biokit
export OMP_NUM_THREADS=$SLURM_CPUS_PER_TASK
export OMP_THREAD_LIMIT=$SLURM_CPUS_PER_TASK
velveth_maxk50 assembly_folder 45 -shortPaired -fastq temp.fastq
velvetg_maxk50 assembly_folder -ins_length 400
Yllä olevassa eräajotiedostossa työ varaa neljä laskentaydintä (--cpus-per-task=4) ja 64 Gt muistia neljäksi päiväksi (--time=4-00:00:00). Velvet osaa hyödyntää säiepohjaista rinnakkaislaskentaa. Asetuskomennon module load biokit jälkeen Velvet-ajossa käytettävien ytimien määrä määritellään ympäristömuuttujilla $OMP_NUM_THREADS ja $OMP_THREAD_LIMIT. Tässä skriptissä nämä muuttujat asetetaan käyttämällä ympäristömuuttujaa $SLURM_CPUS_PER_TASK, joka sisältää parametrilla --cpus-per-task määritellyn arvon (joka tässä esimerkissä on 4).
Eräajon voi käynnistää komennolla:
Lisätietoja eräajojen suorittamisesta löytyy Puhdin käyttöoppaan eräajo-osiosta.
Lisätietoja
Lisätietoja Velvetistä löytyy: