- !-----------------------------------------------------------------------------
- ! Package : Tb/TbAlgorithms
- ! Responsible :
- ! Purpose : Algorithms for Timepix3 testbeam analysis
- !-----------------------------------------------------------------------------
-
- ! 2016-02-23 - Heinrich Schindler
- - TbClustering: apply eta corrections if available.
- - TbSimpleTracking: add option to remove outliers from a candidate track.
-
- ! 2016-02-04 - Heinrich Schindler
- - TbClustering: assign different cluster errors depending on the
- number of rows/columns covered by the cluster.
- - TbSimpleTracking: add cut on max. cluster width,
- deactivate monitoring by default.
-
- ! 2016-01-31 - Heinrich Schindler
- - TbClustering: move timing histograms to TbClusterPlots.
- - TbClusterAssociator: add track chi2 cut.
-
- ! 2016-01-28 - Heinrich Schindler
- - TbHitMonitor: add profile histograms of ToT/charge as function of column.
- - TbClusterPlots: add ToT histograms.
-
- ! 2016-01-26 - Heinrich Schindler
- - TbSimpleTracking: apply charge and cluster size cuts also at seeding stage.
-
- ! 2015-12-14 - Heinrich Schindler
- - Add options to TbClusterAssociator to use hit or cluster coordinates and
- to skip used clusters.
-
- ! 2015-12-02 - Tim Evans
- - Add new synchronisation method to TbCalibration.
-
- ! 2015-11-12 - Dan Saunders
- - Update default settings for clustering and tracking.
- - Add new cuts and function to recover missed hits to TbSimpleTracking.
-
- ! 2015-10-29 - Heinrich Schindler
- - Speed up TbClustering.
-
- ! 2015-10-23 - Heinrich Schindler
- - Fix compiler warnings uncovered by clang (signed vs unsigned int).
-
- !========================= TbAlgorithms v2r2 2015-05-19 =======================
-
- ! 2015-05-19 - Heinrich Schindler
- - Undo latest changes to TbAlignment. To be put back after the release.
-
- ! 2015-05-18 - Tim Evans
- - Added new features to the alignment, can run multiple alignment
- algorithms from the same job
- - Added DeviceSurvey alignment algorithm, that uses time alignment
- to survey align a single device (i.e. the DuT)
- - Options to only use a single trigger channel in the trigger
- associator
-
- ! 2015-03-24 - Heinrich Schindler
- - Add property TrackFitTool to TbTrackPlots, TbAlignment, TbTracking,
- TbSimpleTracking, TbVertexTracking.
- - Small speed ups in TbTrackVolume and TbTracking.
-
- ! 2015-03-09 - Heinrich Schindler
- - Add TbDUTMonitor.
- - TbTracking: avoid new/delete of TbTrackVolume for each seed cluster.
-
- ! 2015-03-05 - Heinrich Schindler
- - TbClusterPlots: bugfix in cluster width plot.
- - TbTrackPlots: fix tracking efficiency plot titles.
-
- ! 2015-03-03 - Heinrich Schindler
- - Fix typo in previous commit.
- - Allow tracking algorithms to pick up existing track containers
- (in case of multiple pattern recognition instances).
-
- ! 2015-03-02 - Heinrich Schindler
- - Tidy up TbAlignment (bug fix in technique 3, specify device to align and
- reference plane by plane index instead of device ID).
-
- ! 2015-01-26 - Heinrich Schindler
- - TbAlignment: remove unused class members.
- - TbClustering: use scol instead of col in hitTouchesCluster.
-
- ! 2015-01-24 - Heinrich Schindler
- - TbAlignment: pick up clusters in TbTrack::associatedClusters for technique 3.
- - TbHitMonitor: plot scol instead of col in hit map.
-
- ! 2015-01-21 - Heinrich Schindler
- - TbClustering: use pixelToPosition function of TbGeometrySvc to
- compute the local cluster position.
- - Fix bug in TbClusterPlots pointed out by Panos.
- - Use TbHit::charge instead of ToT to compute the cluster charge.
-
- ! 2015-01-20 - Heinrich Schindler
- - Add algorithm TbClusterAssociator.
-
- ! 2014-12-30 - Heinrich Schindler
- - TbTrackVolume: remove unused functions and variables,
- separate public and private members, tag associated clusters in TbTracking.
-
- ! 2014-12-28 - Heinrich Schindler
- - Follow removal of TbCluster::endCluster, vertexed, volumed.
-
- ! 2014-12-13 - Heinrich Schindler
- - TbAlignment: add alignment technique 3 (similar to technique 2 but without
- requiring the device to align to be in the tracking.
-
- ! 2014-12-13 - Heinrich Schindler
- - TbMillepede: use values instead of pointers for class members,
- remove unused variables.
-
- ! 2014-12-12 - Heinrich Schindler
- - Follow renaming of TbHit::plane to TbHit::device.
-
- ! 2014-12-07 - Heinrich Schindler
- - TbClustering: add member m_used to keep track of which hits are clustered.
-
- !========================= TbAlgorithms v2r1 2014-11-30 =======================
-
- ! 2014-11-30 - Heinrich Schindler
- - Convert TbMillepede to a Gaudi tool.
-
- ! 2014-11-20 - Heinrich Schindler
- - Convert TbClusterFinder to a Gaudi tool and move it to TbKernel.
-
- ! 2014-11-11 - Dan Saunders
- - Add TbVertexTracking.
-
- ! 2014-10-26 - Dan Saunders
- - Add efficiency calculation algorithm.
-
- ! 2014-10-08 - Tim Evans
- - Added simple algorithm TbCalibration which takes histograms from the
- tracking and the hitmonitor and produces pixel masks and per plane
- time calibration constants
-
- ! 2014-09-26 - Dan Saunders
- - Added simple estimates of cluster position errors, and incorporated into
- TbTrackFit.
- - Added optional new pattern recognition shape "sqDiabolo" (not yet default).
-
- ! 2014-09-19 - Heinrich Schindler
- - Fix in TbAlignment technique 2 (use only clusters on device to align for
- chi2 calculation).
-
- ! 2014-08-26 - Christoph Hombach
- - Improvements to MILLEPEDE
-
- !========================= TbAlgorithms v2r0 2014-08-18 =======================
-
- ! 2014-08-15 - Heinrich Schindler
- - Move spatial efficiency calculation in TbClusterPlots to external script.
- - Remove unused class TbAlignmentPlots.
- - Fix compiler warning in TbAlignment (replace array by vector).
-
- ! 2014-08-04 - Heinrich Schindler
- - Sort clusters on track by z-position.
-
- ! 2014-08-03 - Angelo Di Canto
- - Minor update to TbAlignment (more configurable properties)
-
- ! 2014-08-02 - Dan Saunders
- - Fixed TbClustering inefficiency (now as good as previous slower version).
-
- ! 2014-08-02 - Heinrich Schindler
- - More residual plots for Paula.
-
- ! 2014-08-01 - Dan Saunders
- - Updated TbClustering for speed/
- - Extra plots (pull distributions) to TbTrackPlots.
-
- ! 2014-08-01 - Christoph Hombach
- - Added alignment monitoring plots to TbTrackPlots
-
- ! 2014-07-30 - Christoph Hombach
- - Update Millepede
-
- ! 2014-07-31 - Dan Saunders
- - Changed default ordering of cluster hits to increasing in TOA.
- - Added a few extra plots to TbTrackPlots.
- - Updated example.py to use run1024 (assuming eos is mounted).
-
- ! 2014-07-29 - Heinrich Schindler
- - Add TbTriggerAssociator.
-
- ! 2014-07-21 - Christop Hombach
- - Added residual plots, which can be called after alignment procedure in TbAlignment
-
- ! 2014-07-21 - Tim Evans
- - Added trigger data packets
-
- ! 2014-07-21 - Angelo Di Canto
- - Added checks for masked planes in TbAlignment
- - Millepede renamed into TbMillepede
-
- ! 2014-07-19 - Heinrich Schindler
- - Add TbHeaderDecoder tool which reads and optionally dumps the Spidr header.
- - TbEventBuilder: retrieve device ID from header and check if it matches
- with the alignment file.
- - Move TbAlgorithm to TbKernel.
- - Millepede: clang-format and other cosmetic changes.
-
- ! 2014-07-18 Christoph Hombach
- - Removed DUT from Millepede fit -> Next step DUT separate
- - Added shell script to run alignment loop
-
- ! 2014-07-18 - Heinrich Schindler
- - Use htime instead of global time for time windows.
-
- ! 2014-07-17 - Christoph Hombach
- - Working implementation of Millepede
- - Need to clean up code....
-
- ! 2014-07-17 - Tim Evans
- - Added extended timestamp functionality
- - Added option to manually set the header size
-
- ! 2014-07-14 - Dan Saunders
- - Added hit maps to TbTrackPlots.
- - Few temporary additions to TbEventBuilder (all commented out), present for
- DQM testing.
-
- ! 2014-07-14 - Heinrich Schindler
- - Add new class TbAlgorithm (base class for other testbeam algorithms).
-
- ! 2014-07-14 - Dan Saunders
- - New plots to TbTrackPlots, and separated filling into separate functions
- for different categories of plot.
- - New option in TbTracking to ignore listed planes during tracking.
-
- ! 2014-07-09 - Heinrich Schindler
- - Speed improvements in TbClusterFinder.
- - TbClusterPlots: add configurable histogram parameters,
- histogram labels.
- - TbTrackPlots: configurable histograms, add local residual plots.
-
- ! 2014-07-08 - Hella Snoek
- - Added option to search for hits further away in TbClustering.
- - Added some printout statements to info printing the configurables.
-
- ! 2014-07-08 - Dan Saunders
- - Added safety checks for using TbClusterFinder with empty planes.
-
- ! 2014-07-08 - Heinrich Schindler
- - Adapt TbTupleWriter to new TES locations.
- - TbTracking: use Gaudi counter for nbr. of tracks; inline geomSvc;
- initialize planeSearchOrder directly.
- - Follow renaming from "chip" to "plane" in TbHit and TbCluster.
- - Run clang-format.
- - Member functions to start consistently with lower case letter.
- - Separate hit monitor histograms for each plane.
- - Add one/two/three/four-pixel cluster ToT distributions to TbClusterPlots.
-
- ! 2014-07-07 - Tim Evans
- - Updated TbEventBuilder to use different TES locations for the different
- chips.
-
- ! 2014-07-07 - Heinrich Schindler
- - Fix compiler warnings in TbAlignmentPlots and TbAlignment.
- - Update TbAlignment survey method to work with separate TES cluster locations.
-
- ! 2014-07-07 - Dan Saunders
- - Updated tracking and clustering to use different TES locations for hits and
- clusters on different chips.
-
- ! 2014-07-04 - Dan Saunders
- - Tidied up TbTrackPlots and TbClusterPlots
- - Allowed for varying track sizes - minimum number of clusters set by
- TbTracking().MinNClusters = 5. Priority is given to more complete tracks.
-
- ! 2014-07-03 - Angelo Di Canto
- - Speed improvements in TbAlignment
- - Fixed bug in definition of alignment constants in TbAlignment
-
- ! 2014-07-01 - Angelo Di Canto
- - Fixed few typos/bugs in TbAlignment
-
- ! 2014-07-01 - Dan Saunders
- - Tidied up TbTracking.
-
- ! 2014-07-01 - Heinrich Schindler
- - Add samples plot to TbClusterPlots.
-
- ! 2014-06-30 - Heinrich Schindler
- - TbClustering: remove monitoring plots (to be added to TbClusterPlots);
- merge some short functions; use STL sort.
-
- ! 2014-06-27 - Tim Evans
- - Added reading of the header classes to TbEventBuilder
- - Added TbRawFile class as a wrapper for input files to cleanup eventbuilder
- - Moved raw bank decoding into event definitions
- - Fixed read order dependence
-
- ! 2014-06-25 - Heinrich Schindler
- - Reduce finalise output of TbTupleWriter.
- - Delete alignment tracks in destructor of TbAlignment.
- - TbClustering: consistent definition of local and global coordinates.
- - Fix compiler warnings.
-
- ! 2014-06-19 - Heinrich Schindler
- - Add TbTupleWriter.
-
- ! 2014-06-16 - Dan Saunders
- - Speed improvements in TbTracking.
-
- ! 2014-06-06 - Heinrich Schindler
- - TbHitMonitor: fix binning in 2D hitmap.
-
- !========================= TbAlgorithms v1r0 2014-05-30 =======================
-
- ! 2014-05-29 - Heinrich Schindler
- - Initialise geometry service pointers to NULL in constructor.
- - TbEventBuilder::finalize: empty cache, close files.
- - TbTracking: Get the number of planes from the geometry service.
- - TbAlignment: change return value of techniqueX from StatusCode to bool.
- - Follow renaming of chip_num to chip in TbCluster.
- - Mask (for now) unused variable warnings in TbTrackVolume.
- - Move TbTestMC and TbTrackFitter to Tb/TbSimulation.
-
- ! 2014-05-28 - Heinrich Schindler
- - TbTestMC: use Gaudi random number generators instead of TRandom3.
- - Call finalize functions of actual base classes.
- - Trivial formatting changes.
-
- ! 2014-05-26 - Heinrich Schindler
- - TbClustering: add new clusters directly to TbClusters container.
- - TbTracking: idem; also use on-demand booking of histograms.
-
- ! 2014-05-24 - Heinrich Schindler
- - Follow changes in event classes; cosmetic modifications.
- - Fix compiler warning in TbTrackFitter.
- - TbEventBuilder: allow processing of all files in a given directory.
-
- ! 2014-05-23 - Panagiotis Tsopelas
- - In TbAlignment.cpp, TbTrackFitter, TbTrackPlots :
- Renamed "chi2" -> "chi2PerNdof" after change in TbTrack
- Changed every call to a first state parameter (x0, y0, tx, ty)
- to a call through the "firstState"
-
- ! 2014-05-21 - Heinrich Schindler
- - Fix signed/unsigned comparison compiler warnings.
- - Transfer ownership to TES ("put") directly after newing.
- - Remove unnecessary include statements.
- - Remove setters/getters from algorithms (use declareProperty instead).
- - TbEventBuilder: change return type of retrieve function to bool
- and make it private.
- - Run clang-format.
- - TbEventBuilder, TbHitMonitor: add header guards
- - Remove do-nothing finalize methods.
-
- ! 2014-05-15 - Dan Saunders
- - Added MC genorator and first version of tracking. This including a plot object
- and prototype track object (TbTrackVolume) used during the track finding.
-
- - Clustering also updated to consider hits separated diagonally.
-
- ! 2014-05-15 - Marco Clemencic
- - Fixed CMake configuration.
-
- ! 2014-05-06 - Panagiotis Tsopelas
-
- - Added TbTrackFitter. In this class random cluster positions are assigned to the planes
- and pseudoTbTracks are formed. Then the TbTrackFit::fit() method is called to fit the
- TbTracks. Residuals are also calculated.
-
- ! 2014-04-29 - Dan Saunders
- - Updated TbClustering
- - Added a TbClusterPlots object - note: need to change local positions to global
-
- ! 2014-04-11 - Heinrich Schindler
- - TbEventBuilder: call stopRun after reaching end of file
- - Run clang-format to get consistent formatting
- - Change get to getIfExists
- - Remove do-nothing finalize method
-
- ! 2014-04-02 - Tim Evans
- - Added TbEventBuilder and TbHitMonitor classes
-
- ! 2014-03-31 - Heinrich Schindler
- - Initial import
-