public class BandPassActivityProfile extends ActivityProfile
Modifier and Type | Field and Description |
---|---|
static double |
DEFAULT_SIGMA |
static int |
MAX_FILTER_SIZE |
activeProbThreshold, contigLength, maxProbPropagationDistance, regionStartLoc, regionStopLoc, samHeader, stateList
Constructor and Description |
---|
BandPassActivityProfile(int maxProbPropagationDistance,
double activeProbThreshold,
int maxFilterSize,
double sigma,
boolean adaptiveFilterSize,
htsjdk.samtools.SAMFileHeader samHeader)
Create an activity profile that implements a band pass filter on the states
|
BandPassActivityProfile(int maxProbPropagationDistance,
double activeProbThreshold,
int maxFilterSize,
double sigma,
htsjdk.samtools.SAMFileHeader samHeader)
sets adaptiveFilterSize to true
|
Modifier and Type | Method and Description |
---|---|
protected static int |
determineFilterSize(double[] kernel,
double minProbToKeepInFilter) |
int |
getBandSize()
Get the size (in bp) of the band pass filter
|
int |
getFilteredSize()
Get the filter size (which is the size of each wing of the band, minus the center point)
|
protected double[] |
getKernel()
Get the kernel of this band pass filter.
|
int |
getMaxProbPropagationDistance()
Our maximize propagation distance is whatever our parent's is, plus our filter size
Stops the profile from interpreting sites that aren't yet fully determined due to
propagation of the probabilities.
|
double |
getSigma()
Get the Gaussian kernel sigma value
|
protected static double[] |
makeKernel(int filterSize,
double sigma) |
protected java.util.Collection<ActivityProfileState> |
processState(ActivityProfileState justAddedState)
Band pass the probabilities in the ActivityProfile, producing a new profile that's band pass filtered
|
add, getContig, getEnd, getLocForOffset, getProbabilitiesAsArray, getSpan, getStateList, isEmpty, popReadyAssemblyRegions, size, toString
public static final int MAX_FILTER_SIZE
public static final double DEFAULT_SIGMA
public BandPassActivityProfile(int maxProbPropagationDistance, double activeProbThreshold, int maxFilterSize, double sigma, htsjdk.samtools.SAMFileHeader samHeader)
public BandPassActivityProfile(int maxProbPropagationDistance, double activeProbThreshold, int maxFilterSize, double sigma, boolean adaptiveFilterSize, htsjdk.samtools.SAMFileHeader samHeader)
maxProbPropagationDistance
- region probability propagation distance beyond it's maximum sizeactiveProbThreshold
- threshold for the probability of a profile state being activemaxFilterSize
- the maximum size of the band pass filter we are allowed to create, regardless of sigmasigma
- the variance of the Gaussian kernel for this band pass filteradaptiveFilterSize
- if true, use the kernel itself to determine the best filter sizeprotected static int determineFilterSize(double[] kernel, double minProbToKeepInFilter)
protected static double[] makeKernel(int filterSize, double sigma)
public int getMaxProbPropagationDistance()
getMaxProbPropagationDistance
in class ActivityProfile
public int getBandSize()
public int getFilteredSize()
public double getSigma()
protected double[] getKernel()
protected java.util.Collection<ActivityProfileState> processState(ActivityProfileState justAddedState)
processState
in class ActivityProfile
justAddedState
- the state our client provided to use to add to the list