Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-07-01 07:56:30

0001 // Copyright (C) 2022, 2023, Christopher Dilks, Luigi Dello Stritto
0002 // Subject to the terms in the LICENSE file found in the top-level directory.
0003 
0004 // SPDX-License-Identifier: LGPL-3.0-or-later
0005 // Copyright (C) 2024, Dmitry Kalinkin
0006 
0007 #include <Evaluator/DD4hepUnits.h>
0008 #include <JANA/JApplicationFwd.h>
0009 #include <utility>
0010 #include <vector>
0011 
0012 // algorithm configurations
0013 #include "algorithms/digi/PhotoMultiplierHitDigiConfig.h"
0014 #include "extensions/jana/JOmniFactoryGeneratorT.h"
0015 // factories
0016 #include "factories/digi/PhotoMultiplierHitDigi_factory.h"
0017 
0018 extern "C" {
0019 void InitPlugin(JApplication* app) {
0020   InitJANAPlugin(app);
0021 
0022   using namespace eicrecon;
0023 
0024   // configuration parameters ///////////////////////////////////////////////
0025 
0026   // digitization
0027   PhotoMultiplierHitDigiConfig digi_cfg;
0028   digi_cfg.detectorName = "RICHEndcapN";
0029   digi_cfg.readoutClass = "RICHEndcapNHits";
0030   digi_cfg.seed         = 5;           // FIXME: set to 0 for a 'unique' seed, but
0031                                        // that seems to delay the RNG from actually randomizing
0032   digi_cfg.hitTimeWindow   = 20.0;     // [ns]
0033   digi_cfg.timeResolution  = 1 / 16.0; // [ns]
0034   digi_cfg.speMean         = 80.0;
0035   digi_cfg.speError        = 16.0;
0036   digi_cfg.pedMean         = 200.0;
0037   digi_cfg.pedError        = 3.0;
0038   digi_cfg.enablePixelGaps = true;
0039   digi_cfg.safetyFactor    = 0.7;
0040   digi_cfg.enableNoise     = false;
0041   digi_cfg.noiseRate       = 20000;             // [Hz]
0042   digi_cfg.noiseTimeWindow = 20.0 * dd4hep::ns; // [ns]
0043   digi_cfg.quantumEfficiency.clear();
0044   digi_cfg.quantumEfficiency = {// wavelength units are [nm]
0045                                 {315, 0.00}, {325, 0.04}, {340, 0.10}, {350, 0.20}, {370, 0.30},
0046                                 {400, 0.35}, {450, 0.40}, {500, 0.38}, {550, 0.35}, {600, 0.27},
0047                                 {650, 0.20}, {700, 0.15}, {750, 0.12}, {800, 0.08}, {850, 0.06},
0048                                 {900, 0.04}, {1000, 0.00}};
0049 
0050   // digitization
0051   app->Add(new JOmniFactoryGeneratorT<PhotoMultiplierHitDigi_factory>(
0052       "RICHEndcapNRawHits", {"RICHEndcapNHits"},
0053       {"RICHEndcapNRawHits", "RICHEndcapNRawHitsAssociations"}, digi_cfg, app));
0054 }
0055 }