Difference between revisions of "LE algo"

From GlueXWiki
Jump to: navigation, search
Line 153: Line 153:
 
|}
 
|}
  
With nothing added to tzero, pick out events with large -ve residual and look at amplitude, could well be noise.  
+
With nothing added to tzero, pick out events with large -ve residual and look at amplitude.  
 
{| border="0" cellpadding="2"
 
{| border="0" cellpadding="2"
 
|width="420pt"|
 
|width="420pt"|

Revision as of 11:05, 26 May 2011

  • Work in progress - intended more as a logbook than presentation of results*

Results using Gerard's leading edge algo to extract drift-time from CDC prototype cosmics data

  • 50/50 mixed Ar, CO2
  • Recalibrated MFCs
  • Outer plenum added to CDC prototype to prevent leaks
  • New modified HVB
  • 2050V
  • Modified preamp4 (terminating resistors removed)
  • Prototype tilted at 45o to enclosing scintillators (scints trigger the daq)


The original algorithm is here LE algo It takes a number of samples from the ADC data, interpolates 4 extra points between each sample, convolutes them with the filter to give an approximation to the original pre-sampled data, and returns the first value above a predefined threshold. There are a variety of implementations below. The "without interpolation" results are from a simple comparison between ADC data and threshold.

Below: excerpt from one event in one straw showing interpolated and sampled fADC data

Interpolated (blue) and raw (black circles) ADC data

Below: Events with ADC data going above pedestal mean + 5 pedestal sigma are selected. 20 samples starting 10 samples before the threshold crossing are sent to the LE algo after subtracting mean pedestal. Pedestal mean is for 10 samples starting 15 samples before the threshold crossing. The threshold for the LE algo is 2 pedestal sigma. Pedestal sigma is for 100 early samples in 100 events. Left: all samples Right: zoomed

Event 11, ADC data, LE with interpolation, green=threshold, pink=pedestal (horiz.) and pedestal window (vert.), blue=LE threshold (horiz.) and LE window (vert.), grey=LE extracted
Event 11, ADC data, LE with interpolation, green=threshold, pink=pedestal (horiz.) and pedestal window (vert.), blue=LE threshold (horiz.) and LE window (vert.), grey=LE extracted
Event 29, Ch23, ADC data, LE with interpolation, green=threshold, pink=pedestal (horiz.) and pedestal window (vert.), blue=LE threshold (horiz.) and LE window (vert.), grey=LE extracted
Event 29, Ch23, ADC data, LE with interpolation, green=threshold, pink=pedestal (horiz.) and pedestal window (vert.), blue=LE threshold (horiz.) and LE window (vert.), grey=LE extracted
Event 45, Ch23, ADC data, LE with interpolation, green=threshold, pink=pedestal (horiz.) and pedestal window (vert.), blue=LE threshold (horiz.) and LE window (vert.), grey=LE extracted
Event 45, Ch23, ADC data, LE with interpolation, green=threshold, pink=pedestal (horiz.) and pedestal window (vert.), blue=LE threshold (horiz.) and LE window (vert.), grey=LE extracted

Left: drift-time with interpolation; Right: no interpolation

Drift time ch23, with interpolation, 20 samples
Drift time ch23, without interpolation, 20 samples


Below: Only events where a track can be fitted are selected. Tzero was obtained by fitting a straight line to the leading edge of the drift time histo (between the overall maximum and the minimum preceding it) and taking the value where it crosses the x-axis (this needs work). First the drift-time histo was put into 4ns bins to unify any double-maxima in the histogram.

Drift time ch23 (tracks), with interpolation
Drift time ch23 (tracks), without interpolation


Residuals ch23, with interpolation
Residuals ch23, without interpolation


Residuals vs drift time ch23, with interpolation
Residuals vs drift time ch23, without interpolation
Residuals for drift time > 2000ns ch23, with interpolation
Residuals for drift time > 2000ns ch23, without interpolation


Negative residuals come from a tzero that is too small (or drift time that is too large). 2 sigma is ~ 20 in ADC value, a little late. Lowering the LE threshold makes it more likely to accept noise before the signal and so the # tracked events decreases slightly. However the LE search window can be tightened and a constant can be added to tzero.

Number of 8ns bins between interpolated drift-time and high (5sigma) threshold crossing
2100V data: Number of 8ns bins between interpolated drift-time and high (5sigma) threshold crossing

Pedestal window is still bins 15 to 5 before the high-threshold crossing. LE sample data starts 10 bins before the high-threshold crossing. Start the LE search an interval after the start of the LE sample data. start+0bins: 3952 tracked hits
+5 bins: 4063 tracked hits
+6 bins: 4071 tracked hits
+7 bins: 3688 tracked hits

Move pedestal window up to end with the 4th bin before the high-threshold crossing, 10, 5 and 1 bin(s) wide (ie pedestal calculated as mean of 10, 5 and 1 bin). Start the LE search an interval after the start of the LE sample data. +0 bins = threshold xing - 5.8 bins: tracked hits: 3983 (10 bins) 4102 (5 bins) 4167 (1 bin)
+2 bins (threshold - 3.8): tracked hits: 3982 (10 bins) 4102 (5 bins) 4167 (1 bin)
+3 bins (threshold - 2.8): tracked hits: 3986 (10 bins) 4098 (5 bins) 4167 (1 bin) +4 bins (threshold - 1.8): tracked hits: 3980 (10 bins) 4055 (5 bins) 4169 (1 bin)
+5 bins (threshold - 0.8): tracked hits: 4059 (10 bins) 4099 (5 bins) 4136 (1 bin)
+6 bins (threshold + 0.2): tracked hits: 3984 (10 bins) 3927 (5 bins) 3985 (1 bin)

Move pedestal bin to 3rd bin before the high-threshold crossing, 1 bin(s) wide Start the LE search an interval after the start of the LE sample data.

+2 bins (threshold - 3.8): tracked hits: 4120
+3 bins (threshold - 2.8): tracked hits: 4120

Below: pedestal at threshold-4 samples, with interpolation

Drift time ch23
Residuals vs drift time ch23
Residuals ch23
Residuals ch23 for drift time > 2000ns

Tzero is not defined particularly well - obtained as the zero-crossing-point of a fit of leading edge of drift time histo for 5+ hits after binning into 4ns to make sure that there is only one maximum (at present the code fits between the overall max and its preceding minimum). -ve residuals mean that drift time is too long. Try adding a constant to t-zero.

Below: after adding to t-zero. Events with drift time < tzero are assigned to tzero.

Residuals ch23 added 4ns to tzero
Residuals ch23 added 8ns to tzero
Residuals ch23 added 12ns to tzero

Number of tracks have dropped. Try assigning -ve drift time to something small but +ve.

Residuals ch23 added 12s to tzero assigned earlier drift times to 15ns

With nothing added to tzero, pick out events with large -ve residual and look at amplitude.

Drift time vs max amplitude ch23 tzero as fitted
Drift time vs max amplitude for residuals < -500 ch23 tzero as fitted
Max amplitude ch23 tzero as fitted
Max amplitude for residuals < -500 ch23 tzero as fitted

Next: look harder at tzero; try only one high interpolated threshold