7 #include "art_root_io/TFileDirectory.h" 8 #include "art_root_io/TFileService.h" 20 #include "CLHEP/Units/SystemOfUnits.h" 24 class CheckSimEnergyDeposit;
35 TH1F* _hnHits{
nullptr};
36 TH1F* _hEdep{
nullptr};
37 TH1F* _hnumPhotons{
nullptr};
38 TH1F* _hLandauPhotons{
nullptr};
39 TH1F* _hLandauEdep{
nullptr};
40 TH1F* _hSteplength{
nullptr};
41 TNtuple* _ntuple{
nullptr};
51 _hnHits = tfs->make<TH1F>(
"hnHits",
"Number of SimEnergyDeposits", 300, 0, 0);
52 _hEdep = tfs->make<TH1F>(
"hEdep",
"Energy deposition in SimEnergyDeposits", 100, 0., 0.02);
54 tfs->make<TH1F>(
"hnumPhotons",
"number of photons per SimEnergyDeposit", 100, 0., 500.);
55 _hLandauPhotons = tfs->make<TH1F>(
"hLandauPhotons",
"number of photons/cm", 100, 0., 2000000.);
56 _hLandauEdep = tfs->make<TH1F>(
"hLandauEdep",
"Edep/cm", 100, 0., 10.);
57 _hSteplength = tfs->make<TH1F>(
"hSteplength",
"geant 4 step length", 100, 0., 0.05);
59 "ntuple",
"Demo ntuple",
"Event:Edep:em_Edep:nonem_Edep:xpos:ypos:zpos:time");
65 for (
auto const& sims : allSims) {
66 double sumPhotons = 0.0;
69 for (
auto const&
hit : *sims) {
72 sumPhotons = sumPhotons +
hit.NumPhotons();
73 sumE = sumE +
hit.Energy();
constexpr auto abs(T v)
Returns the absolute value of the argument.
CheckSimEnergyDeposit(fhicl::ParameterSet const &p)
#define DEFINE_ART_MODULE(klass)
Detector simulation of raw signals on wires.
std::vector< SimEnergyDeposit > SimEnergyDepositCollection
contains information for a single step in the detector simulation
void analyze(const art::Event &event) override
Event finding and building.