public class RepGenAlignerPlugin
extends AbstractPlugin
This plugin takes an existing repGen db, grabs the tags whose depth meets that specified in the minCount parameter, makes kmer seeds from these tags. Window for kmer seeds is default 20. The ref genome is walked with a sliding window of 1. Reference tags are created based on peaks within clusters where kmer seeds align. The kmerLen field should match the length of the kmers stored as tags during the RepGenLoadSeqToDBPlugin step. The default is 150. The refKmerLen() should minimally be the length of the db kmer tags, but can be longer. Our defaults are 150 for kmer tags, and twice this length (300) for the refKmerLen. There are 2 count parameters: minTagCount specifies the minimum depth of a tag for it to be used when creating seed kmers. minHitCount specifies the number of "hits" that must occur within a sliding window (window size = refKmerLen) for the window to remain part of a cluser. When sliding, if the hit count drops below the minhitCount threshold, the cluster ends. A new cluster does not begin until the hit count is back up to threshold. See createRefTagsForAlignment() and storeRefTagPositions() for specifics. This plugin creates and stores the reference tags in the refTag table in the database. Both the tagMapping and the physicalMapPosition table will we populated with the reference tag information. Once the tables have been populated with the reference information, Smith Waterman is run to align all the nonreference tags in the db against each other; each non-reference tag against the reference tags; finally each refTag against all other refTags. ALignment data is stored in the tagAlignments table. Smith Waterman from SourceForge neobio project is used to determine alignment score. Settings for match rewards, mismatch penalty and gap penalty may be changed by user via plugin parameters.
public RepGenAlignerPlugin()
public RepGenAlignerPlugin(java.awt.Frame parentFrame)
public RepGenAlignerPlugin(java.awt.Frame parentFrame,
boolean isInteractive)
public void postProcessParameters()
public static void writeToFile(java.lang.String chrom,
com.google.common.collect.Multimap<java.lang.String,java.lang.Integer> chromMaximaMap,
int minCount)
public static void writePeakPositions(java.lang.String chrom,
int peak,
java.util.List<java.lang.Integer> peakPositions)
public static void writeChrom9Bits(java.util.List<java.lang.Integer> peakPositions)
public javax.swing.ImageIcon getIcon()
public java.lang.String getButtonName()
public java.lang.String getToolTipText()
public static void main(java.lang.String[] args)
public java.lang.String inputDB()
Input database file with tags and taxa distribution
public RepGenAlignerPlugin inputDB(java.lang.String value)
Set Input DB. Input database file with tags and taxa distribution
value - Input DBpublic java.lang.String refGenome()
Output fastq file to use as input for BWA or bowtie2
public RepGenAlignerPlugin refGenome(java.lang.String value)
Set Output File. Output fastq file to use as input for BWA or bowtie2
value - Output Filepublic java.lang.Integer minTagCount()
Minimum count of reads for a tag to be output
public RepGenAlignerPlugin minTagCount(java.lang.Integer value)
Set Min Count. Minimum count of reads for a tag to be output
value - Min Countpublic java.lang.Integer minHitCount()
Minimum count of hits in a cluster for a reference tag to be created for this cluster
public RepGenAlignerPlugin minHitCount(java.lang.Integer value)
Set Min Count. Minimum count of hits in a cluster for a reference tag to be created fro this cluster
value - Min Countpublic java.lang.Integer seedLen()
Length of seed kmers
public RepGenAlignerPlugin seedLen(java.lang.Integer value)
Set Seed kmer length. Length of seeds to use in aligning.
value - seed lengthpublic java.lang.Integer seedWindow()
Length of window between positions when creating seed from DB tags
public RepGenAlignerPlugin seedWindow(java.lang.Integer value)
Set Seed window length. Length of window between positions when creating seed from DB tags
value - seed lengthpublic java.lang.Integer kmerLen()
Length of kmers as tag sequences in the db
public RepGenAlignerPlugin kmerLen(java.lang.Integer value)
Set Kmer length. Length of kmers to be stored as tag sequences in the db
value - kmer lengthpublic java.lang.Integer refKmerLen()
Length of kmers as tag sequences in the db
public RepGenAlignerPlugin refKmerLen(java.lang.Integer value)
Set Kmer length. Length of kmers to be stored as tag sequences in the db
value - kmer lengthpublic java.lang.Integer match_reward()
Parameter sent to Smith Waterman aligner for use in calculating reward when base pairs match.
public RepGenAlignerPlugin match_reward(java.lang.Integer value)
Set Match Reward Amount. Parameter sent to Smith Waterman aligner for use in calculating reward when base pairs match.
value - Match Reward Amountpublic java.lang.Integer mismatch_penalty()
Parameter sent to Smith Waterman aligner for use in calculating penalty when base pairs are mis-matched.
public RepGenAlignerPlugin mismatch_penalty(java.lang.Integer value)
Set Mismatch Penalty Amount. Parameter sent to Smith Waterman aligner for use in calculating penalty when base pairs are mis-matched.
value - Mismatch Penalty Amountpublic java.lang.Integer gap_penalty()
Parameter sent to Smith Waterman aligner for use in calculating penalty when when a gap is identified.
public RepGenAlignerPlugin gap_penalty(java.lang.Integer value)
Set Gap Penalty Amount. Parameter sent to Smith Waterman aligner for use in calculating penalty when when a gap is identified.
value - Gap Penalty Amount