MAJIQ build jobs require a configuration file. A typical configuration file may look something like this:
[info] readlen=50 samdir=/data/$USER/my_project genome=hg19 genome_path=/fdb/igenomes/Homo_sapiens/Ensembl/GRCh37/Sequence/Bowtie2Index/ [experiments] WT=S1,S2 KO=S4,S5
See the MAJIQ Tutorial for more info.
You also need an annotation file in GFF3 format. See more on the MAJIQ home page.
Once you've written the configuration file and obtained the annotation file, you can start a MAJIQ build session like so:
Allocate an interactive session and run the program. Sample session:
[user@biowulf]$ sinteractive -c 8 --mem 10g salloc.exe: Pending job allocation 46116226 salloc.exe: job 46116226 queued and waiting for resources salloc.exe: job 46116226 has been allocated resources salloc.exe: Granted job allocation 46116226 salloc.exe: Waiting for resource configuration salloc.exe: Nodes cn3144 are ready for job [user@cn3144 ~]$ module load majiq [user@cn3144 ~]$ majiq build ensembl.hg19.gff3 -conf config.file --nthreads 8 --output ./build/
Once MAJIQ build has finished running, MAJIQ psi can be called on the output like so:
:[user@cn3144 ~]$ majiq psi ./build/S1.majiq ./build/S2.majiq --nthreads 8 --output ./psi --name WT [user@cn3144 ~]$ majiq psi ./build/S3.majiq ./build/S4.majiq --nthreads 8 --output ./psi --name KO
Then the deltapsi can be calculated like so:
[user@cn3144 ~]$ majiq deltapsi -grp1 ./build/S1.majiq ./build/S2.majiq --nthreads 8 --output ./dpsi --name WT [user@cn3144 ~]$ majiq deltapsi -grp1 ./build/S3.majiq ./build/S4.majiq --nthreads 8 --output ./dpsi --name KO
When MAJIQ deltapsi has finished, VOILA can be called in turn to visualize the analyzed data. For this step, an X11 connection will be necessary. See the MAJIQ Tutorial for more details.
After setting the correct files as described above, set up a batch script along the following lines:
#!/bin/bash # this script is called myjob.bat module load majiq cd /data/$USER/my_project majiq build ensembl.hg19.gff3 -conf config.file --nthreads 8 --output ./build/
Submit this job with:
[user@biowulf ~]$ sbatch --cpus-per-task=8 myjob.bat
Note that the --cpus-per-task argument in sbatch must match the --nthreads argument in the MAJIQ batch script. Depending on the data, memory requirements may also need to be increased using the --mem or --mem-per-cpu option. See the documentation on Job Submission for more info on how to use sbatch.
Set up a swarm command file containing one line for each of your MAJIQ runs. You will also have to generate a separate configuration file for each swarm command so that different experiments are run in different jobs.
Sample swarm command file
majiq build ensembl.hg19.gff3 -conf config.file0 --nthreads 8 --output ./build/ majiq build ensembl.hg19.gff3 -conf config.file1 --nthreads 8 --output ./build/ majiq build ensembl.hg19.gff3 -conf config.file2 --nthreads 8 --output ./build/ majiq build ensembl.hg19.gff3 -conf config.file3 --nthreads 8 --output ./build/
Submit this set of runs to the batch system by typing:
[user@biowulf ~]$ swarm --threads-per-process 8 --module majiq -f myjobs.swarm
For details on using swarm see Swarm on Biowulf.