Minutes of the May 31, 2013 Liquid Argon Simulations/LBNE reco meeting
Present:
Tom Junk, Rick Snider, Jae Kim, Tyler Alion, Kevin Wood,
Mike Kirby, Brian Rebel, Kate Scholberg, Jonathan Insler,
Dave Muller, Sanjib Mishra
Apologies to those omitted
Work is ongoing to speed up and reduce the memory footprint
of the CalData+Hit Finding steps. LBNE data are highly sparse,
and finding hits in the nonzero chunks of data should take less
time than deconvoluting, storing in memory, and writing out raw
digits and finding hits in a sea of zeros. Nonetheless, the
frequency-domain deconvolution may not be ideal for truncated
time-domain data. If the zero-suppression threshold is too high
on the ADC counts, then using a frequency-based deconvolution will
produce artificial ringing in the deconvoluted signals. Tom
suggests using a truncated time-domain deconvolution on only the
nonzero blocks of LBNE ADC counts and running GausHitFinder on
those blocks. The deconvolution kernel would have to be exposed out of
the SignalShaping code for use, and truncated to a shorter kernel to
limit ringing. Or something more clever devised as tracks that point
straight along the drift field have induction channel data that
may be zero for a long time but really correspond to a long string of hits.
To help this along, Brian asked Jonathan Asaadi to convert the
GausHitFinder piece of code that does the hit finding into an algorithm
(we can keep the module functionality for those who like it, but
the module can call the algorithm). That way we can run GausHitFinder
just one wire's worth of data instead of one event's worth of
uncompressed/deconvoluted recob::Wire objects (2 Gbytes of data
in >300K individual objects, that take ROOT forever to write
to the output record).
Tyler has identified an issue wit the hit charges -- there is a
population of high-charge hits and low-charge hits. Tom suspects
this is an artifact of the deconvolution and zero-suppression but
that needs to be tested.
Presentations:
Jae reported on a time-based disambiguation study. Hits are
sorted by start time, and for each hit on the induction planes,
the hit on the other induction plane which has the
closest start time. Use the intersectionpoint
method is used to find yz positions of the UV pair.
Then do the same for UZ and VZ combinations. Find the YZ positions
for the UV pairs and compare them with what's available from the
UZ and VZ combinations. For all hits in the induction planes,
loop over 20 nearby hits in start time space and average the
hits' wireID index. This procedure is outlined on p. 4 of LBNE DocDB 7346-v1.
It works quite well for the 6 GeV test muon track starting
at x=100 cm, y=40 cm, z=0 cm in the 35T detector, headed along the z direction.
(which is difficult as the hits all have similar times), with nearly
all hits apparently assigned the correct ambiguity.
Tom suggested trying this for tracks that have more general angles.
Jae tried a track with a yz angle of 30 degrees and found that a larger
fraction of the hits were misassigned. Interestingly, the amount of
error in the y position varied from very small (just a few cm) to very
large (up to two meters), and the images of incorrectly assigned hits
lined up along straight lines. Misassigning hits could easily then
make us believe we have a different number of particles in the event.
Jae asked about wire plane time offsets, and Tom promised to point him
to the place in the code where they are computed
(see LArG4::LArVoxelReadout::DriftIonizationElectrons).
Tyler has gotten optical simulation running, but needs the fast simulation lookup
library from Zepeng. Stan and a student want to get started on reconstruction.
Tyler has also been working on hit disambiguation. He has been working on
a general algorithm but has been testing it on a 10 kT geometry with 36-degree
induction wires. These have the property of not having any pair of
induction channels crossing twice on the same side of the APA.
In order to make a disambiguation, the ChannelsIntersect and IntersectionPoint
methods are now LBNE specific, as they report back possibly multiple intersection
points while for ArgoNeuT and MicroBooNE they only need a single return value.
Brian suggested keeping the old ones as is, and making new ones that are
useful for LBNE.
Tyler currently uses a copy of the GausHitFinder code, and will use the alg
once Jonathan Asaadi has it coded up (or use the fast CalData+HitFinder being
developed by Jonathan Insler). The output of this step is apa::AmbigHits.
Collection hits are unambiguous. U and V hits are put into TDC maps. Disambiguation
runs one APA at a time (to keep map sizes down). If U and V hits can be associated
with collection hits unambiguously by time, then put them in the disambiguated pile.
Problems can arise if there are hits on both sides of the APA at the same time
(cosmics can come through beam-related physics showers for example). A map of
U/V channel intersections is made to the intersections on the other side of the APA.
All U/V pairs that intersect at z_a on one side will intersect again at z_b on the other side.
This map can speed up the search for UV pairs matched up with Z hits. For further
discussion.
Tom is concerned about tracks (or portions thereof) that are contained in
the XZ plane -- all hits have the same time and thus associating U,V,Z hits
to each other will be difficult.
Kevin Wood is coming up to speed.
There are minutes attached to this event.
Show them.