55 lines
1.9 KiB
Bash
55 lines
1.9 KiB
Bash
#!/bin/bash
|
|
#
|
|
# Align reads against reference genome.
|
|
|
|
PROJECT_DIRECTORY="/groups/umcg-griac/tmp01/rawdata/$(whoami)/rnaseq"
|
|
# Store genome index in this location:.
|
|
GENOME_INDEX="${PROJECT_DIRECTORY}/step3/genome_index"
|
|
mkdir -p "${GENOME_INDEX}"
|
|
# Store the generated `Aligned.sortedByCoord.out.bam` in this dir.
|
|
ALIGNMENT_OUTPUT="${PROJECT_DIRECTORY}/step3/alignment/"
|
|
mkdir -p "${ALIGNMENT_OUTPUT}"
|
|
|
|
# 1) Generate genome index.
|
|
#
|
|
# N.B.:
|
|
# - We're assuming a read size of 100 bp (--sjdbOverhang 100). An alternative
|
|
# cut-off is 150, for low-input methods. In general, refer back to the
|
|
# previous quality control steps if you are unsure about the size. In case of
|
|
# reads of varying length, the ideal value is max(ReadLength)-1.
|
|
# - We're using gzip compressed reference data (--readFilesCommand zcat), i.e.,
|
|
# .gtf.gz and fa.gz. If not, you can remove the `zcat` flag.
|
|
|
|
# Storage location reference data (in this case on Gearshift).
|
|
REFERENCE_DATA="/groups/umcg-griac/prm03/rawdata/reference/genome"
|
|
GTF_FILE="${REFERENCE_DATA}/Homo_sapiens.GRCh38.100.gtf.gz"
|
|
FASTA_FILE="${REFERENCE_DATA}/Homo_sapiens.GRCh38.dna.primary_assembly.fa.gz"
|
|
|
|
STAR \
|
|
--runThreadN 8 \
|
|
--runMode genomeGenerate \
|
|
--readFilesCommand zcat \
|
|
--sjdbOverhang 100 \
|
|
--genomeFastaFiles ${FASTA_FILE} \
|
|
--sjdbGTFfile ${GTF_FILE} \
|
|
--genomeDir ${GENOME_INDEX}
|
|
|
|
|
|
# 2) Do the actual alignment.
|
|
#
|
|
# N.B.:
|
|
# - We are assuming paired-end, gzip compressed (--readFilesCommand zcat) FastQ
|
|
# files.
|
|
|
|
# The compressed, paired-end, FastQ's after trimming (step 2).
|
|
R1="${PROJECT_DIRECTORY}/step2/sample1_R1_paired.fastq.gz"
|
|
R2="${PROJECT_DIRECTORY}/step2/sample1_R2_paired.fastq.gz"
|
|
|
|
STAR \
|
|
--runThreadN 8 \
|
|
--readFilesCommand zcat \
|
|
--readFilesIn "${R1}" "${R2}" \
|
|
--outSAMtype BAM SortedByCoordinate \
|
|
--genomeDir ${GENOME_INDEX} \
|
|
--outFileNamePrefix "${ALIGNMENT_OUTPUT}"
|