#!/bin/bash

# https://www-nature-com.proxy-ub.rug.nl/articles/s41596-022-00738-y
# Metagenome analysis using the Kraken software suite

#SBATCH --nodes=1
#SBATCH --ntasks-per-node=16
#SBATCH --mem=128GB
#SBATCH --time=12:00:00


# Personal stuff; Change this to your personal settings 
#SBATCH --job-name=Kraken2
#SBATCH --output=slurm-Kraken-%j.log

export KRAKEN2_DEFAULT_DB="/scratch/public/genomes/kraken2db"
module load Kraken2/2.1.2-gompi-2022a

cpu=$SLURM_JOB_CPUS_PER_NODE

##############################################   Functions   ######################################################################

function my_kraken {
   name=$1
   filename=$2
   kraken2 --threads $cpu --quick --report $resultsdir/$name.report $datadir/$filename > $resultsdir/$name.kraken.table
   rm -Rf $resultsdir/$name.kraken.table 
}

function my_mkdir {
	if [ ! -d $1 ]; then
		mkdir $1 ;
	fi
}

##############################################   Pipeline   ######################################################################

datadir=/scratch/p127804/PROJECTS/PrimBio/20240113/fastq
resultsdir=/scratch/p127804/PROJECTS/PrimBio/20240113/kraken2

my_mkdir $resultsdir

# NOTE to get all filenames use :  ls -aR >TOC.txt

# my_kraken parameters
	# 1) name of your sample e.g. kraken_sample1
	# 2) fasta files including the path
	# e.g., my_kraken kraken_sample1 sample.fasta

# report headers; Percentage  Reads  Taxon            Rank        TaxID

# Percentage: The percentage of reads classified at that taxonomic level.
# Reads: The number of reads classified at that taxonomic level.
# Taxon: The taxonomic identifier or name of the organism at that level.
# Rank: The taxonomic rank of the classification (e.g., species, genus, family).
# TaxID: The unique identifier assigned to the taxon in the Kraken database.





	
# my_kraken Bd1 Bd1_6321_S84_R1_001.fastq.gz
# my_kraken Cm10 Cm10_6291_S54_R1_001.fastq.gz
# my_kraken Cm11 Cm11_6292_S55_R1_001.fastq.gz
# my_kraken Cm12 Cm12_6293_S56_R1_001.fastq.gz
# my_kraken Cm13 Cm13_6294_S57_R1_001.fastq.gz
# my_kraken Cm14 Cm14_6295_S58_R1_001.fastq.gz
# my_kraken Cm15 Cm15_6296_S59_R1_001.fastq.gz
# my_kraken Cm1 Cm1_6282_S45_R1_001.fastq.gz
# my_kraken Cm16 Cm16_6297_S60_R1_001.fastq.gz
# my_kraken Cm17 Cm17_6298_S61_R1_001.fastq.gz
# my_kraken Cm18 Cm18_6299_S62_R1_001.fastq.gz
# my_kraken Cm19 Cm19_6300_S63_R1_001.fastq.gz
# my_kraken Cm20 Cm20_6301_S64_R1_001.fastq.gz
# my_kraken Cm21 Cm21_6302_S65_R1_001.fastq.gz
# my_kraken Cm22 Cm22_6303_S66_R1_001.fastq.gz
# my_kraken Cm23 Cm23_6304_S67_R1_001.fastq.gz
# my_kraken Cm2 Cm2_6283_S46_R1_001.fastq.gz
# my_kraken Cm3 Cm3_6284_S47_R1_001.fastq.gz
# my_kraken Cm4 Cm4_6285_S48_R1_001.fastq.gz
# my_kraken Cm5 Cm5_6286_S49_R1_001.fastq.gz
# my_kraken Cm6 Cm6_6287_S50_R1_001.fastq.gz
# my_kraken Cm7 Cm7_6288_S51_R1_001.fastq.gz
# my_kraken Cm8 Cm8_6289_S52_R1_001.fastq.gz
# my_kraken Cm9 Cm9_6290_S53_R1_001.fastq.gz

my_kraken Dg1 Dg1_6278_S41_R1_001.fastq.gz
my_kraken Dg2 Dg2_6279_S42_R1_001.fastq.gz
my_kraken Dg3 Dg3_6280_S43_R1_001.fastq.gz
my_kraken Dg4 Dg4_6281_S44_R1_001.fastq.gz
my_kraken Fx1 Fx1_6316_S79_R1_001.fastq.gz
my_kraken Fx2 Fx2_6317_S80_R1_001.fastq.gz
my_kraken Po10 Po10_6314_S77_R1_001.fastq.gz
my_kraken Po11 Po11_6315_S78_R1_001.fastq.gz
my_kraken Po1 Po1_6305_S68_R1_001.fastq.gz
my_kraken Po2 Po2_6306_S69_R1_001.fastq.gz
my_kraken Po3 Po3_6307_S70_R1_001.fastq.gz
my_kraken Po4 Po4_6308_S71_R1_001.fastq.gz
my_kraken Po5 Po5_6309_S72_R1_001.fastq.gz
my_kraken Po6 Po6_6310_S73_R1_001.fastq.gz
my_kraken Po7 Po7_6311_S74_R1_001.fastq.gz
my_kraken Po8 Po8_6312_S75_R1_001.fastq.gz
my_kraken Po9 Po9_6313_S76_R1_001.fastq.gz
my_kraken Ra10 Ra10_6247_S10_R1_001.fastq.gz
my_kraken Ra11 Ra11_6248_S11_R1_001.fastq.gz
my_kraken Ra12 Ra12_6249_S12_R1_001.fastq.gz
my_kraken Ra13 Ra13_6250_S13_R1_001.fastq.gz
my_kraken Ra14 Ra14_6251_S14_R1_001.fastq.gz
my_kraken Ra15 Ra15_6252_S15_R1_001.fastq.gz
my_kraken Ra1 Ra1_6238_S1_R1_001.fastq.gz
my_kraken Ra16 Ra16_6253_S16_R1_001.fastq.gz
my_kraken Ra17 Ra17_6254_S17_R1_001.fastq.gz
my_kraken Ra18 Ra18_6255_S18_R1_001.fastq.gz
my_kraken Ra19 Ra19_6256_S19_R1_001.fastq.gz
my_kraken Ra20 Ra20_6257_S20_R1_001.fastq.gz
my_kraken Ra21 Ra21_6258_S21_R1_001.fastq.gz
my_kraken Ra22 Ra22_6259_S22_R1_001.fastq.gz
my_kraken Ra23 Ra23_6260_S23_R1_001.fastq.gz
my_kraken Ra24 Ra24_6261_S24_R1_001.fastq.gz
my_kraken Ra25 Ra25_6262_S25_R1_001.fastq.gz
my_kraken Ra2 Ra2_6239_S2_R1_001.fastq.gz
my_kraken Ra26 Ra26_6263_S26_R1_001.fastq.gz
my_kraken Ra27 Ra27_6264_S27_R1_001.fastq.gz
my_kraken Ra28 Ra28_6265_S28_R1_001.fastq.gz
my_kraken Ra29 Ra29_6266_S29_R1_001.fastq.gz
my_kraken Ra30 Ra30_6267_S30_R1_001.fastq.gz
my_kraken Ra31 Ra31_6268_S31_R1_001.fastq.gz
my_kraken Ra32 Ra32_6269_S32_R1_001.fastq.gz
my_kraken Ra33 Ra33_6270_S33_R1_001.fastq.gz
my_kraken Ra34 Ra34_6271_S34_R1_001.fastq.gz
my_kraken Ra35 Ra35_6272_S35_R1_001.fastq.gz
my_kraken Ra3 Ra3_6240_S3_R1_001.fastq.gz
my_kraken Ra36 Ra36_6273_S36_R1_001.fastq.gz
my_kraken Ra37 Ra37_6274_S37_R1_001.fastq.gz
my_kraken Ra38 Ra38_6275_S38_R1_001.fastq.gz
my_kraken Ra39 Ra39_6276_S39_R1_001.fastq.gz
my_kraken Ra40 Ra40_6277_S40_R1_001.fastq.gz
my_kraken Ra4 Ra4_6241_S4_R1_001.fastq.gz
my_kraken Ra5 Ra5_6242_S5_R1_001.fastq.gz
my_kraken Ra6 Ra6_6243_S6_R1_001.fastq.gz
my_kraken Ra7 Ra7_6244_S7_R1_001.fastq.gz
my_kraken Ra8 Ra8_6245_S8_R1_001.fastq.gz
my_kraken Ra9 Ra9_6246_S9_R1_001.fastq.gz
my_kraken Sk1 Sk1_6318_S81_R1_001.fastq.gz
my_kraken Sk2 Sk2_6319_S82_R1_001.fastq.gz
my_kraken Sk3 Sk3_6320_S83_R1_001.fastq.gz
my_kraken Wc1 Wc1_6322_S85_R1_001.fastq.gz
my_kraken Wc2 Wc2_6323_S86_R1_001.fastq.gz
my_kraken Wc3 Wc3_6324_S87_R1_001.fastq.gz
my_kraken Wc4 Wc4_6325_S88_R1_001.fastq.gz
my_kraken Wc5 Wc5_6326_S89_R1_001.fastq.gz
my_kraken Wc6 Wc6_6327_S90_R1_001.fastq.gz
  
