--
ChadFreer - 2017-12-19
Content Sigma Quality Test
This twiki is meant only to describe the Content Sigma quality test.
For documentation on all quality tests see
Quality tests
What is the content sigma quality test
The content sigma quality test is designed to test histogram bins/blocks of bins against their neighboring bins to compare the statistics of a run (visualization below).
The workflow for the test:
- Get the content of bin or block to be tested
- Get the average of neighbors with the associated deviation
- compare content to neighbor average using poisson statistics and thresholds set in the xml file
- Noisy/Dead Probability = poissonCDF[Content,Neighbor+unc]
- calculate tolerance
- Tolerance =normalCDF(tolerance) {set in xml file}
- Calculate if block fails
- Noisy/Dead probability < Noisy/Dead Threshold
Test uses poisson statistics to test thresholds and standard deviation to calculate uncertainty.
Test Parameter and Flags
toleranceNoisy: The poisson threshold for noisy bins/blocks
toleranceDead: The poisson threshold for dead bins/blocks
Xblocks: the number of blocks for x axis that will be used. For example XBlocks=5 means that the x bins will be split into 5 blocks.
- FLAG: XBlocks=999 sets it to binwise
Yblocks: the number of blocks for y axis that will be used. For example YBlocks=5 means that the y bins will be split into 5 blocks.
- FLAG: YBlocks=999 sets it to binwise
neighboursX: the number of neighbor blocks in x that you wich to compare against. Neighbors do not wrap around histogram edges, they merely stop as shown above
- FLAG: neighboursX=999 means that neighbors in that dimension will be suppressed
neighboursY: the number of neighbor blocks in y that you wich to compare against. Neighbors do not wrap around histogram edges, they merely stop as shown above
- FLAG: neighboursY=999 means that neighbors in that dimension will be suppressed
noisy: 1 means this will use noisy test. 0 supresses noisy test
dead: 1 means this will use dead test. 0 supresses dead test
error: the percentage of failed bins/blocks required for the test to throw an error flag (between 0-1)
warning: the percentage of failed bins/blocks required for the test to throw a warning flag (between 0-1)
xMin: specify a specific lower x value for histogram. Anything lower will be ignored
- FLAG: xMin=0 uses lowest natural bin for test
xMax: specify a specific upper x value for histogram. Anything higher will be ignored
- FLAG: xMax=0 uses highest natural bin for test
yMin: specify a specific lower y value for histogram. Anything lower will be ignored
- FLAG: yMin=0 uses lowest natural bin for test
yMax: specify a specific upper y value for histogram. Anything higher will be ignored
- FLAG: yMax=0 uses highest natural bin for test
XML declaration and Implentation
The following is the creation of a content sigma test
<QTEST name="ContentSigma_Noisy">
<TYPE>ContentSigma</TYPE>
<PARAM name="toleranceNoisy">3</PARAM>
<PARAM name="toleranceDead">1</PARAM>
<PARAM name="Xblocks">999</PARAM>
<PARAM name="Yblocks">999</PARAM>
<PARAM name="neighboursX">10</PARAM>
<PARAM name="neighboursY">10</PARAM>
<PARAM name="noisy">1</PARAM>
<PARAM name="dead">0</PARAM>
<PARAM name="error">0.94</PARAM>
<PARAM name="warning">0.97</PARAM>
<PARAM name="xMin">0</PARAM> <!-- specify area of histogram to be analyzed -->
<PARAM name="xMax">0</PARAM>
<PARAM name="yMin">0</PARAM>
<PARAM name="yMax">0</PARAM>
</QTEST>
The following is the application of the test on specific histograms
<LINK name="*emtfTrackPhi">
<TestName activate="true">ContentSigma_Noisy</TestName>
<TestName activate="true">ContentSigma_Dead</TestName>
</LINK>