Simple SCT parametric simulation

From Charm-Tau Detector
(Difference between revisions)
Jump to: navigation, search
 
Line 68: Line 68:
 
  })
 
  })
 
  am.add_parsim(which='simple', cfg=parsimCfg)
 
  am.add_parsim(which='simple', cfg=parsimCfg)
 
[[Category:Not_public]]
 

Latest revision as of 18:25, 4 August 2021

Contents

[edit] SimpleSctParSimAlg

The SimpleSctParSimAlg algorithm (gitlab) implements parametric simulation routine. Tools implementing ICalorimeterTool, ITrackerTool, and IPIDTool are required for actual simulation. A user can implement these tools with necessary logic. The following example tool implementations exist:

[edit] SimpleCalorimeterTool

The SimpleCalorimeterTool tool implements the following logic:

  • Lower photon energy threshold (energyThreshold property)
  • Photon detection efficiency (deteff property)
  • Polar angle cut (maxCosth property)
  • 3D Gaussian resolution for energy, cos(theta) and phi variables (sampler property)

[edit] SimpleTrackerTool

The SimpleTrackerTool tool implements the following logic:

  • Minimal track transverse momentum (ptcut parameter)
  • Track reconstruction efficiency (deteff parameter)
  • Magnetic field (bfield parameter)
  • Polar angle cut (maxCosth property)
  • 3D Gaussian resolution for track vertex (vertexSampler property)
  • 3D Gaussian resolution for track momentum (momentumSampler property)

[edit] SimplePIDTool

The SimplePIDTool tool implements the following logic:

  • Probability of having PID decision (eff parameter)
  • mu/pi separation quality (sigmaMupi parameter)
  • K/pi separation quality (sigmaKpi parameter)
  • K/p separation quality (sigmaKp parameter)
  • electron id quality (sigmaE parameter)

[edit] Config example

parsimCfg = AuroraConfig({
   'Tracker' : {
       'deteff': 0.99,
       'ptcut': 50e-3,
       'bfield': 1.5,
       'maxCosth': np.cos(10./180. * np.pi),
       'momentumSampler' : {
           'mean' : np.zeros(3),
           'covar': np.diag(np.ones(3)) * 1.e-3**2
       },
       'vertexSampler' : {
           'mean' : np.zeros(3),
           'covar': np.diag(np.ones(3)) * 1.e-3**2
       }
   },
   'PID' : {
       'eff' : 1.00,
       'sigmaKpi' : 6.,
       'sigmaMupi' : 4.,
       'sigmaKp' : 3.,
       'sigmaE' : 3.,
   },
   'Calorimeter' : {
       'deteff': 1.0,
       'energyThreshold' : 15e-3,
       'maxCosth' : np.cos(10./180. * np.pi),
       'sampler' : {
           'mean' : np.zeros(3),
           'covar': (np.diag(np.ones(3)) * 1.e-2**2).ravel()
       }
   }
})
am.add_parsim(which='simple', cfg=parsimCfg)
Personal tools