ProtoDUNEOpDetResponse.h
Go to the documentation of this file.
1 ////////////////////////////////////////////////////////////////////////
2 // \file ProtoDUNEOpDetResponse.h
3 //
4 // \brief service containing information about the response of optical detectors in ProtoDUNE
5 //
6 // \author L. Paulucci (adapted from DUNEOpDetResponse module)
7 //
8 ////////////////////////////////////////////////////////////////////////
9 
10 #ifndef PROTODUNE_OPDET_RESPONSE_H
11 #define PROTODUNE_OPDET_RESPONSE_H
12 
13 // LArSoft includes
17 
18 #include "TMath.h"
19 #include "TFile.h"
20 #include "TH1D.h"
21 #include "TVector3.h"
22 #include <vector>
23 #include <fstream>
24 
25 namespace opdet
26 {
28  public:
29 
31  ~ProtoDUNEOpDetResponse() throw();
32 
33  // virtual bool detectedLite(int OpDet, int &newOpChannel, int& hardwareChannel) const;
34  //bool ProtoDUNEOpDetResponse::detectedLite(int OpDet, int &newOpChannel, int& hardwareChannel) const
35 
36  bool detectedLiteWithChannel(int OpDet, int &newOpChannel, int& hardwareChannel) const
37  {
38  return doDetectedLiteWithChannel( OpDet, newOpChannel, hardwareChannel);
39  }
40 
41 
42 
43  private:
44 
45  virtual void doReconfigure(fhicl::ParameterSet const& p);
46 
47  virtual int doNOpChannels() const;
48  virtual bool doDetected(int OpDet, const sim::OnePhoton& Phot, int &newOpChannel) const;
49  virtual bool doDetectedLite(int OpDet, int &newOpChannel) const;
50  //bool ProtoDUNEOpDetResponse::doDetectedLite(int OpDet, int &newOpChannel, int &hardwareChannel) const
51  bool doDetectedLiteWithChannel(int OpDet, int &newOpChannel, int& hardwareChannel) const;
52 
53  float fQE; // Quantum efficiency of paddle
54  float fQEArapucaBeam; // Quantum efficiency of Arapuca bar on beam-side (mean eff for all windows)
55  float fQEArapucaNonBeam; // Quantum efficiency of Arapuca bar on non-beam side (mean eff for all windows)
56 
57  float fWavelengthCutLow; // Sensitive wavelength range
59 
60  bool fLightGuideAttenuation; // Flag to turn on position-dependent sensitivity
61  double lambdaShort;
62  double lambdaLong;
63  double fracShort;
64  double fracLong;
65 
66  //TY: Comment out the 5 unused variables
67  //bool fWireAttenuation; // Flag to turn on wire/mesh transmission probability
68  //TH1D* hm; // histogram to store transmission probability
69  //TVector3* Dist;
70  //TVector3* VersorX;
71  //TVector3* VersorY;
73 
75  bool fFullSimChannelConvert; // Flag to conver detector->electronics channels in full optical sim
76  bool fFastSimChannelConvert; // Flag to conver detector->electronics channels in fast optical sim
77 
78  int fLongAxis; // 0 = x, 1 = y, 2 = z
79 
80  }; // class ProtoDUNEOpDetResponse
81 
82 
83 } //namespace opdet
84 
85 
87 
88 #endif //OPDET_RESPONSE_PROTODUNE_H
bool detectedLiteWithChannel(int OpDet, int &newOpChannel, int &hardwareChannel) const
std::string string
Definition: nybbler.cc:12
DECLARE_ART_SERVICE_INTERFACE_IMPL(MySharedService, art::test::MyServiceInterface, SHARED) DEFINE_ART_SERVICE_INTERFACE_IMPL(MySharedService
All information of a photon entering the sensitive optical detector volume.
Definition: SimPhotons.h:64
virtual void doReconfigure(fhicl::ParameterSet const &p)
ProtoDUNEOpDetResponse(fhicl::ParameterSet const &pset, art::ActivityRegistry &reg)
virtual bool doDetected(int OpDet, const sim::OnePhoton &Phot, int &newOpChannel) const
Simulation objects for optical detectors.
p
Definition: test.py:223
virtual bool doDetectedLite(int OpDet, int &newOpChannel) const
bool doDetectedLiteWithChannel(int OpDet, int &newOpChannel, int &hardwareChannel) const