Tantan masks low complexity and short-period tandem repeats in nucleic acid and protein sequences. It either lower-cases the selected regions or replaces them with a configurable letter.
$TANTAN_TEST_DATAAllocate an interactive session and run the program. Sample session:
[user@biowulf]$ sinteractive
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 tantan
[user@cn3144]$ # mask repetitive regions with lower case letters (DNA)
[user@cn3144]$ tantan $TANTAN_TEST_DATA/CM001971.fa > test.fa
[user@cn3144]$ head -n6 test.fa
>CM001971.1 Homo sapiens mitochondrion, complete sequence, whole genome shotgun sequence
CAGGTCTATCACCCTATTAACCACTCACGGGAGCTCTCCATGCATTTGGT
ATTTTCGTCTGGGGGGTGTGCACGCGATAGCATTGCGAGACGCTGGAGCC
GGAGCACCCTATGTCGCAGTATCTGTCTTTGATTCCTGCCTCATCCTATT
ATTTATCGCACCTACGTTCAATATTACAGACGAACATACTTACTAAAGCG
TGTTAATtaattaaTGCTTGTAGGACATAATAATAACAATTGAATGTCTG
|-----| masked region
[user@cn3144]$ # same, but replace with 'N' insead
[user@cn3144]$ tantan -x N $TANTAN_TEST_DATA/CM001971.fa > test.fa
[user@cn3144]$ head -n6 test.fa
>CM001971.1 Homo sapiens mitochondrion, complete sequence, whole genome shotgun sequence
CAGGTCTATCACCCTATTAACCACTCACGGGAGCTCTCCATGCATTTGGT
ATTTTCGTCTGGGGGGTGTGCACGCGATAGCATTGCGAGACGCTGGAGCC
GGAGCACCCTATGTCGCAGTATCTGTCTTTGATTCCTGCCTCATCCTATT
ATTTATCGCACCTACGTTCAATATTACAGACGAACATACTTACTAAAGCG
TGTTAATNNNNNNNTGCTTGTAGGACATAATAATAACAATTGAATGTCTG
|-----| masked region
[user@cn3144]$ # and for proteins
[user@cn3144]$ tantan -p $TANTAN_TEST_DATA/NP_002102.fa > test.fa
[user@cn3144]$ head -n3 test.fa
>NP_002102.4 huntingtin [Homo sapiens]
MATLEKLMKAFESLKSFQqqqqqqqqqqqqqqqqqqqqqqpppppppppp
pqlpqpppqaqpllpqpqppppppppppgpavaEEPLHRPKKELSATKKD
[user@cn3144]$ exit
salloc.exe: Relinquishing job allocation 46116226
[user@biowulf]$
Create a batch input file (e.g. tantan.sh) similar to the following example:
#! /bin/bash module load tantan/13 || exit 1 tantan -p human_genome.fa > human_genome_masked.fa
Submit this job using the Slurm sbatch command.
sbatch --cpus-per-task=2 --mem=4g tantan.sh
Create a swarmfile (e.g. tantan.swarm). For example:
tantan -p seq1.fa > seq1_masked.fa tantan -p seq2.fa > seq2_masked.fa tantan -p seq3.fa > seq3_masked.fa
Submit this job using the swarm command.
swarm -f tantan.swarm -g 2 -t 1 -p 2 --module tantan/13where
| -g # | Number of Gigabytes of memory required for each process (1 line in the swarm command file) |
| -t # | Number of threads/CPUs required for each process (1 line in the swarm command file). |
| --module tantan | Loads the tantan module for each subjob in the swarm |