[Halld-offline] Huge Set of Recent Changes to the Simulation & Analysis library

Paul Mattione pmatt at jlab.org
Sat Sep 20 22:59:01 EDT 2014


The following changes have recently been checked into the trunk.  Also, the MakeReactionPlugin has been updated accordingly:

https://halldsvn.jlab.org/repos/trunk/scripts/analysis/MakeReactionPlugin.pl

/************************************************ RF Time, PID, Photon Selection ************************************************/

1) The simulated event start time used to always be zero, but is now a random number.  The simulation, reconstruction, & analysis codes have been updated to handle this change.  Details can be found at:

https://halldweb1.jlab.org/wiki/index.php/Analysis_Miscellaneous#RF_Beam_Bunch_Selection_.26_Timing_Details

2) Be sure to add this code to your existing plugin DReaction to select the best beam photons:
locReaction->Set_MaxPhotonRFDeltaT(0.5*2.004); //beam bunches are every 2.004 ns, (1.002 should be minimum cut value)

3) Also, during these studies Will improved the BCAL time reconstruction, so you can now cut loosely on charged track PID FOM:
locReaction->Set_MinChargedPIDFOM(5.73303E-7);

/************************************************ Combo-Creation Cuts ************************************************/

1) You can now place invariant mass cuts on decaying particles during combo blueprint creation.  For example, you can cut on the pi0 invariant mass directly after the 2 neutral showers have been selected.  Cutting this early significantly reduces memory usage when running. You can do this with the DReaction::Set_InvariantMassCut() function.  

2) You can now place ANY cut on the particle combinations immediately after they have been created (and before they have been saved). You can do this by adding analysis actions to the DReaction with the DReaction::Add_ComboPreSelectionAction() function.  Highly recommended is a cut on the missing mass squared.  

3) The built-in combined PID & tracking FOM cuts have been deleted. 

For usage instructions and examples, see:

https://halldweb1.jlab.org/wiki/index.php/Analysis_DReaction#Comboing_Cuts

/************************************************ Analysis Action Changes ************************************************/

1) Almost every histogram has been converted from double (TH1D/TH2D) to integer (TH1I/TH2I).  This change can easily save 1 GB or more of memory, depending on what plugins/actions you're running.  

2) New actions have been created: DCutAction_TrueBeamParticle, DCutAction_TrueCombo, DCutAction_BDTSignalCombo, and DHistogramAction_DetectorStudies.  

3) The DetectorStudies action histograms almost all of the relevant REST-data quantities (TOF hit positions, DOCA from showers to tracks, etc.) except track kinematics (histogrammed already elsewhere).  

4) DCutAction_BDTSignalCombo should be used for selecting signal and background combos for the BDT.  Note that if you have an omega or phi in your DReaction, you will still have to filter your combos prior to BDT input to remove duplicate entries. This is because the omega & phi masses are not constrained in the kinematic fit, nor should they be in the BDT, so you have duplicate entries from the point-of-view of the BDT due to combinatorics (e.g. which pions decayed from the omega, and which ones didn't, are irrelevant to the BDT).  Also, pay VERY close attention to the input arguments for the action ... see the class definition (in the header file) for details. 

5) For DCutAction_TrueCombo & DCutAction_BDTSignalCombo: These require the reconstructed particles be matched to thrown particles (within +/- 5 sigma using the reconstructed uncertainties).  

6) DHistogramAction_NumParticleCombos has been deleted. 

/************************************************ Combo Construction Histograms ************************************************/

In the "Hist_ComboConstruction" folder in your analysis in hd_root, you can see diagnostic histograms of the relevant pre-combo-cut data (RF/beam delta-t, PID FOMs, etc.).  You can also see how many blueprints are being lost to each cut, as well as how often the "true" combo survives.  

Also, the "NumTrueEventsSurvivedAction" histogram in your analysis folder shows how often the "true" event survives your cuts.  Note that the true combo may not be present. 

/************************************************ DVertex Has Been Revived ************************************************/

The DVertex class has been revived.  It is the reconstruction's best guess for what the event vertex and time are.  It is determined by doing a vertex-constraint kinematic fit of the good charged tracks in the event.  This vertex is now used for determining the momentum of the neutral particles (until a full kinematic fit occurs). 

 - Paul




More information about the Halld-offline mailing list