Go Back to: C++ Manual General Site
LDMX.Recon package¶
Submodules¶
LDMX.Recon.beamElectronLocator module¶
Configuration for beam electron locator
Attributes:¶
- input_collectionstring
Name of the input collection, should be one that holds sim hits
- input_pass_namestring
Pass name of the input collection
- output_collectionstring
Name of the output collection, holding the condensed list of beam electron locations
- granularity_X_mmfloat
The expected actual resolution or the bar width in mm of the TS in the X direction
- granularity_Y_mmfloat
The expected actual resolution or the bar width in mm of the TS in the Y direction
- min_granularity_mmfloat
The maximum distance between SimHits that are grouped together as one beam electron
- verboseboolean
If set to true, more information is spit out to either Info or Debug log level
# We need the ldmx configuration package to construct the processor objects
- class LDMX.Recon.beamElectronLocator.BeamElectronLocator(name)¶
Bases:
Producer
The name is purely conventional to match the C++ class name for clarity
Examples
from LDMX.Recon.beamElectronLocator import BeamElectronLocator beamEleFinder= BeamELectronLocator(‘beamEleFinder’)
- You can change the parameters after creating this object.
beamEleFinder.my_parameter = 50
- Then you put your processor into the sequence of the process.
p.sequence.append( beamEleFinder )
LDMX.Recon.dictionary module¶
LDMX.Recon.ecalPreselectionSkimmer module¶
Configuration for PreselectionProcessor
Sets all the default parameters that high so it leads to no preselection.
Attributes:¶
- ecal_veto_name: string
Collection Name for veto object
- ecal_veto_pass: string
Pass Name for veto object
- summed_det_max: double
Max value for summed det
- summed_tight_iso_max: double
Max value for summed tigh iso
- ecal_back_energy_max: double
Max value for ecal back energy
- n_readout_hits_max: int
Max value for num readout hits
- shower_rms_max: double
Max value for shower rms
- shower_y_std_max: double
Max value for shower rms in Y
- shower_x_std_max: double
Max value for shower rms in X
- max_cell_dep_max: double
Max value for maximal cell deposition
- std_layer_hit_max: int
Max value for std layer hits
- n_straight_tracks_max: int
Max value for num straight tracks
- bdt_disc_min: double
Min value for the BDT disc variable
- fiducial_level: int
0: don’t care if it’s fiducial or not, 1: keep fiducial events only, 2: keep non-fid events only
Examples
from LDMX.Recon.ecalPreselectionSkimmer import EcalPreselectionSkimmer ecal_pres_skimmer = EcalPreselectionSkimmer() p.sequence.append( ecal_pres_skimmer )
LDMX.Recon.electronCounter module¶
LDMX.Recon.my_processor module¶
Example configuration object for a processor
- class LDMX.Recon.my_processor.MyProcessor(name)¶
Bases:
Producer
The name is purely conventional to match the C++ class name for clarity
- The line
super().__init__( name , “recon::MyProcessor” , “Recon” )
Calls the constructor for ldmxcfg.Producer, which is how we have handles on this processor. You need to give the actual C++ class name with namespace(s) as the second entry, and the name of the module the C++ class is in as the third entry.
Any other lines define parameters that are accessible in the C++ configure method. For example, the line
self.my_parameter = 20
defines a integer parameter for this class which can be accessed in the configure method with
int my_parameter = parameters.getParameter<int>(“my_parameter”);
Examples
Creating the configuration object gives the parameters set in __init__.
myProc = MyProcessor( ‘myProc’)
- You can also change the parameters after creating this object.
myProc.my_parameter = 50
- Then you put your processor into the sequence of the process.
p.sequence.append( myProc )
LDMX.Recon.overlay module¶
Configuration for overlay
- param fileName:
The name of the file containing the pileup events to overlay on the sim event
- type fileName:
string
- param Attributes:
- param ————-:
- param passName:
Pass name of the sim events
- type passName:
string
- param overlayPassName:
Pass name of the pileup events
- type overlayPassName:
string
- param overlayCaloHitCollections:
List of SimCalorimeterHit collections to pull from the sim and pileup events and combine
- type overlayCaloHitCollections:
string
- param overlayTrackerHitCollections:
List of SimTrackerHit collections to pull from the sim and pileup events and combine
- type overlayTrackerHitCollections:
string
- param totalNumberOfInteractions:
The total number of interactions combined (including the sim event)
- type totalNumberOfInteractions:
int
- param doPoissonIntime:
Specifies whether to sample a Poisson(totalNumberOfInteractions) to obtain the number of events to combine in-time with the sim event (doPoissonIntime=true), or deterministically set nOverlay=totalNumberOfInteractions-1 (doPoissonIntime = false)
- type doPoissonIntime:
bool
- param doPoissonOutoftime:
Specifies whether to sample a Poisson(totalNumberOfInteractions) to obtain the number of events to put in bunches that are out-of-time with the sim event (doPoissonOutoftime=true), or deterministically set nOverlay=totalNumberOfInteractions-1 (doPoissonOutoftime = false)
- type doPoissonOutoftime:
bool
- param timeSpread:
The width of a single bunch in time (expressed in sigma) [ns]
- type timeSpread:
float
- param timeMean:
The average time, relative to the sim time, of the pileup events [ns]. Note that this should generally be 0. A non-zero number combined with a 0 spread is useful for debugging.
- type timeMean:
float
- param nEarlierBunchesToSample:
The number of preceding bunches sampled for out-of-time pileup. Furthermore, pileup will be uniformly distributed among this number of bunches m = -N_earlier, -N_earlier+1, …, N_later while the sim event is always in bunch m = 0.
- type nEarlierBunchesToSample:
int
- param nLatererBunchesToSample:
The number of following bunches sampled for out-of-time pileup. Furthermore, pileup will be uniformly distributed among this number of bunches m = -N_earlier, -N_earlier+1, …, N_later while the sim event is always in bunch m = 0.
- type nLatererBunchesToSample:
int
- param bunchSpacing:
The spacing in time between bunches [ns]
- type bunchSpacing:
float
- param verbosity:
Sets the producer specific level of verbosity, up to 3 for the most verbose step-by-step debug printouts.
- type verbosity:
int
LDMX.Recon.pfReco module¶
Configuration for pfReco producers
Sets all parameters to reasonable defaults.
Examples
from LDMX.Recon.pfReco import pfEcalClusterProducer p.sequence.append( pfEcalClusterProducer )
- class LDMX.Recon.pfReco.pfEcalClusterProducer(name='PFEcalCluster')¶
Bases:
Producer
Configuration for Ecal cluster builder for particle reco
- class LDMX.Recon.pfReco.pfHcalClusterProducer(name='PFHcalCluster')¶
Bases:
Producer
Configuration for Hcal cluster builder for particle reco