BFAST on Helix
Blat-like Fast Accurate Search Tool (BFAST) facilitates the fast and accurate mapping of short reads to reference sequences. Some advantages of BFAST include:
- Speed: enables billions of short reads to be mapped quickly.
- Accuracy: A priori probabilities for mapping reads with defined set of
variants.
- An easy way to measurably tune accuracy at the expense of speed.
Specifically, BFAST was designed to facilitate whole-genome resequencing, where mapping billions of short reads with variants is of utmost importance. BFAST supports both Illumina and ABI SOLiD data, as well as any other Next-Generation Sequencing Technology (454, Helicos), with particular emphasis on sensitivity towards errors, SNPs and especially indels. Other algorithms take short-cuts by ignoring errors, certain types of variants (indels), and even require further alignment, all to be the "fastest" (but still not complete). BFAST is able to be tuned to find variants regardless of the error-rate, polymorphism rate, or other factors.
Programs location
/usr/local/bfast/bin
The environmental variable(s) need to be set correctly first:
The bfast executables need to be added to your path. The easiest way to do this is by using the modules commands, as in the example below.
If you use this application very often, you can set the environmental variables in your /home/UserID/.bashrc or /home/userID/.cshrc file so that it will be done automatically when you login and you don't need to set the environmental variable(s) everytime.
For bash users:
For tcsh/csh users:
How To Use
Example files below assume that you have the full hg18 reference in the fasta format in a file called hg18.fa. It is to align sensitively to the human genome and outputting in the sam format. Illumina QSEQ data format is assumed below (files end with qseq.txt) and we wish to align lane <N>.
Although '-n' option for multi-threaded alignment is possible but please note helix users share all processors on Helix so it's better to run bfast and use '-n' option on biowulf cluster instead of on Helix.
The help documentation has detailed information regarding how to run bfast.
Example
First add bfast to your path:
Convert the reads:
Convert the reference:
Create the indexes:
Search the indexes:
Perform local alignment:

