From 2ed8774b57288394b06083bc18e60e96e6bc6560 Mon Sep 17 00:00:00 2001 From: soleti Date: Tue, 3 Dec 2019 19:02:36 -0600 Subject: [PATCH 1/2] New CORSIKA-PDG codes, FCL files for production --- JobConfig/cosmic/corsikaGen.fcl | 66 +++++++++ JobConfig/reco/corsikaReco.fcl | 6 + Sources/inc/CosmicCORSIKA.hh | 248 +++++++++++++++++--------------- 3 files changed, 202 insertions(+), 118 deletions(-) create mode 100644 JobConfig/cosmic/corsikaGen.fcl create mode 100644 JobConfig/reco/corsikaReco.fcl diff --git a/JobConfig/cosmic/corsikaGen.fcl b/JobConfig/cosmic/corsikaGen.fcl new file mode 100644 index 0000000000..69e76be556 --- /dev/null +++ b/JobConfig/cosmic/corsikaGen.fcl @@ -0,0 +1,66 @@ +#include "JobConfig/primary/prolog.fcl" + +process_name: CorsikaGen + +targetParams: { + projectToTargetBox : true + targetBoxXmin: -10000 + targetBoxXmax: 3000 + targetBoxYmin: -5000 + targetBoxYmax: 5000 + targetBoxZmin: -5000 + targetBoxZmax: 21000 +} + +source: { + module_type: FromCorsikaBinary + fileNames: ["/mu2e/app/users/srsoleti/corsika-77100/run/DAT110001"] + runNumber : 1 + firstSubRunNumber : 0 + firstEventNumber : 1 + showerAreaExtension : 10000 + maxEvents: -1 + @table::targetParams + seed: 1 + resample: false + compact: true + fluxConstant: 1.8e4 + lowE: 1.3 + highE: 1e6 +} + +services: @local::Services.Sim +physics : { + producers : { + + generate : { + module_type : CORSIKAEventGenerator + corsikaModuleLabel: "FromCorsikaBinary" + refPointChoice: "UNDEFINED" + projectToTargetBox : true + targetBoxYmax : 5000 + intDist: -1 + } + + @table::Primary.producers + } + + filters: { @table::Primary.filters } + analyzers: { @table::Primary.analyzers } + TriggerPath : @local::Primary.TriggerPath + EndPath : [ digiCompressionCheck, Output ] +} + +outputs : { + Output :@local::Primary.Output +} +# +# final configuration +# +#include "JobConfig/primary/epilog.fcl" +# customize the output +physics.producers.generate.muonStops : @erase + +services.TFileService.fileName: "nts.owner.CorsikaGen.version.sequencer.root" +outputs.Output.fileName: "dig.owner.CorsikaGen.version.sequencer.art" +physics.end_paths : [ EndPath ] # needed for generate_fcl \ No newline at end of file diff --git a/JobConfig/reco/corsikaReco.fcl b/JobConfig/reco/corsikaReco.fcl new file mode 100644 index 0000000000..248f2c89c8 --- /dev/null +++ b/JobConfig/reco/corsikaReco.fcl @@ -0,0 +1,6 @@ +# process primary signal-only digis +#include "JobConfig/reco/mcdigis_primary.fcl" +# compress MCTrajectories: this only works for digis produced in MDC2018h and later +#physics.producers.compressRecoMCs.mcTrajectoryTag : "compressDigiMCs" +services.TFileService.fileName: "nts.owner.CorsikaReco.version.sequencer.root" +outputs.Output.fileName: "mcs.owner.CorsikaReco.version.sequencer.art" \ No newline at end of file diff --git a/Sources/inc/CosmicCORSIKA.hh b/Sources/inc/CosmicCORSIKA.hh index 0722bf09d0..26a446c738 100644 --- a/Sources/inc/CosmicCORSIKA.hh +++ b/Sources/inc/CosmicCORSIKA.hh @@ -83,124 +83,136 @@ namespace mu2e { ~CosmicCORSIKA(); const std::map corsikaToPdgId = { - {1, 22}, // gamma - {2, -11}, // e+ - {3, 11}, // e- - {5, -13}, // mu+ - {6, 13}, // mu- - {7, 111}, // pi0 - {8, 211}, // pi+ - {9, -211}, // pi- - {10, 130}, // K0_L - {11, 321}, // K+ - {12, -321}, // K- - {13, 2112}, // n - {14, 2212}, // p - {15, -2212}, // pbar - {16, 310}, // K0_S - {17, 221}, // eta - {18, 3122}, // Lambda - {19, 3222}, // Sigma+ - {20, 3212}, // Sigma0 - {21, 3112}, // Sigma- - {22, 3322}, // Cascade0 - {23, 3312}, // Cascade- - {24, 3334}, // Omega- - {25, -2112}, // nbar - {26, -3122}, // Lambdabar - {27, -3112}, // Sigma-bar - {28, -3212}, // Sigma0bar - {29, -3222}, // Sigma+bar - {30, -3322}, // Cascade0bar - {31, -3312}, // Cascade+bar - {32, -3334}, // Omega+bar - - {50, 223}, // omega - {51, 113}, // rho0 - {52, 213}, // rho+ - {53, -213}, // rho- - {54, 2224}, // Delta++ - {55, 2214}, // Delta+ - {56, 2114}, // Delta0 - {57, 1114}, // Delta- - {58, -2224}, // Delta--bar - {59, -2214}, // Delta-bar - {60, -2114}, // Delta0bar - {61, -1114}, // Delta+bar - {62, 10311}, // K*0 - {63, 10321}, // K*+ - {64, -10321}, // K*- - {65, -10311}, // K*0bar - {66, 12}, // nu_e - {67, -12}, // nu_ebar - {68, 14}, // nu_mu - {69, -14}, // nu_mubar - - {116, 421}, // D0 - {117, 411}, // D+ - {118, -411}, // D-bar - {119, -421}, // D0bar - {120, 431}, // D+_s - {121, -431}, // D-_sbar - {122, 441}, // eta_c - {123, 423}, // D*0 - {124, 413}, // D*+ - {125, -413}, // D*-bar - {126, -423}, // D*0bar - {127, 433}, // D*+_s - {128, -433}, // D*-_s - - {130, 443}, // J/Psi - {131, -15}, // tau+ - {132, 15}, // tau- - {133, 16}, // nu_tau - {134, -16}, // nu_taubar - - {137, 4122}, // Lambda+_c - {138, 4232}, // Cascade+_c - {139, 4132}, // Cascade0_c - {140, 4222}, // Sigma++_c - {141, 4212}, // Sigma+_c - {142, 4112}, // Sigma0_c - {143, 4322}, // Cascade'+_c - {144, 4312}, // Cascade'0_c - {145, 4332}, // Omega0_c - {149, -4122}, // Lambda-_cbar - {150, -4232}, // Cascade-_cbar - {151, -4132}, // Cascade0_cbar - {152, -4222}, // Sigma--_cbar - {153, -4212}, // Sigma-_cbar - {154, -4112}, // Sigma0_cbar - {155, -4322}, // Cascade'-_cbar - {156, -4312}, // Cascade'0_cbar - {157, -4332}, // Omega0_cbar - {161, 4224}, // Sigma*++_c - {162, 1214}, // Sigma*+_c - {163, 4114}, // Sigma*0_c - - {171, -4224}, // Sigma*--_cbar - {172, -1214}, // Sigma*-_cbar - {173, -4114}, // Sigma*0_cbar - {176, 511}, // B0 - {177, 521}, // B+ - {178, -521}, // B-bar - {179, -511}, // B0bar - {180, 531}, // B0_s - {181, -531}, // B0_sbar - {182, 541}, // B+_c - {183, -541}, // B-_cbar - {184, 5122}, // Lambda0_b - {185, 5112}, // Sigma-_b - {186, 5222}, // Sigma+_b - {187, 5232}, // Cascade0_b - {188, 5132}, // Cascade-_b - {189, 5332}, // Omega-_b - {190, -5112}, // Lambda0_bbar - {191, -5222}, // Sigma+_bbar - {192, -5112}, // Sigma-_bbar - {193, -5232}, // Cascade0_bbar - {194, -5132}, // Cascade+_bbar - {195, -5332} // Omega+_bbar + {1, 22}, // gamma + {2, -11}, // e+ + {3, 11}, // e- + {5, -13}, // mu+ + {6, 13}, // mu- + {7, 111}, // pi0 + {8, 211}, // pi+ + {9, -211}, // pi- + {10, 130}, // K0_L + {11, 321}, // K+ + {12, -321}, // K- + {13, 2112}, // n + {14, 2212}, // p + {15, -2212}, // pbar + {16, 310}, // K0_S + {17, 221}, // eta + {18, 3122}, // Lambda + {19, 3222}, // Sigma+ + {20, 3212}, // Sigma0 + {21, 3112}, // Sigma- + {22, 3322}, // Cascade0 + {23, 3312}, // Cascade- + {24, 3334}, // Omega- + {25, -2112}, // nbar + {26, -3122}, // Lambdabar + {27, -3112}, // Sigma-bar + {28, -3212}, // Sigma0bar + {29, -3222}, // Sigma+bar + {30, -3322}, // Cascade0bar + {31, -3312}, // Cascade+bar + {32, -3334}, // Omega+bar + + {50, 223}, // omega + {51, 113}, // rho0 + {52, 213}, // rho+ + {53, -213}, // rho- + {54, 2224}, // Delta++ + {55, 2214}, // Delta+ + {56, 2114}, // Delta0 + {57, 1114}, // Delta- + {58, -2224}, // Delta--bar + {59, -2214}, // Delta-bar + {60, -2114}, // Delta0bar + {61, -1114}, // Delta+bar + {62, 10311}, // K*0 + {63, 10321}, // K*+ + {64, -10321}, // K*- + {65, -10311}, // K*0bar + {66, 12}, // nu_e + {67, -12}, // nu_ebar + {68, 14}, // nu_mu + {69, -14}, // nu_mubar + + {116, 421}, // D0 + {117, 411}, // D+ + {118, -411}, // D-bar + {119, -421}, // D0bar + {120, 431}, // D+_s + {121, -431}, // D-_sbar + {122, 441}, // eta_c + {123, 423}, // D*0 + {124, 413}, // D*+ + {125, -413}, // D*-bar + {126, -423}, // D*0bar + {127, 433}, // D*+_s + {128, -433}, // D*-_s + + {130, 443}, // J/Psi + {131, -15}, // tau+ + {132, 15}, // tau- + {133, 16}, // nu_tau + {134, -16}, // nu_taubar + + {137, 4122}, // Lambda+_c + {138, 4232}, // Cascade+_c + {139, 4132}, // Cascade0_c + {140, 4222}, // Sigma++_c + {141, 4212}, // Sigma+_c + {142, 4112}, // Sigma0_c + {143, 4322}, // Cascade'+_c + {144, 4312}, // Cascade'0_c + {145, 4332}, // Omega0_c + {149, -4122}, // Lambda-_cbar + {150, -4232}, // Cascade-_cbar + {151, -4132}, // Cascade0_cbar + {152, -4222}, // Sigma--_cbar + {153, -4212}, // Sigma-_cbar + {154, -4112}, // Sigma0_cbar + {155, -4322}, // Cascade'-_cbar + {156, -4312}, // Cascade'0_cbar + {157, -4332}, // Omega0_cbar + {161, 4224}, // Sigma*++_c + {162, 1214}, // Sigma*+_c + {163, 4114}, // Sigma*0_c + + {171, -4224}, // Sigma*--_cbar + {172, -1214}, // Sigma*-_cbar + {173, -4114}, // Sigma*0_cbar + {176, 511}, // B0 + {177, 521}, // B+ + {178, -521}, // B-bar + {179, -511}, // B0bar + {180, 531}, // B0_s + {181, -531}, // B0_sbar + {182, 541}, // B+_c + {183, -541}, // B-_cbar + {184, 5122}, // Lambda0_b + {185, 5112}, // Sigma-_b + {186, 5222}, // Sigma+_b + {187, 5232}, // Cascade0_b + {188, 5132}, // Cascade-_b + {189, 5332}, // Omega-_b + {190, -5112}, // Lambda0_bbar + {191, -5222}, // Sigma+_bbar + {192, -5112}, // Sigma-_bbar + {193, -5232}, // Cascade0_bbar + {194, -5132}, // Cascade+_bbar + {195, -5332}, // Omega+_bbar + + {201, 1000010020}, // Deuteron + {301, 1000010030}, // Tritium + {402, 1000020040}, // alpha + {5626, 1000260560}, // Iron + {1206, 1000080120}, // Carbon + {1407, 1000070140}, // Nitrogen + {1608, 1000080160}, // Oxygen + {2713, 1000130270}, // Aluminum + {3216, 1000160320}, // Sulfur + {2814, 1000140280}, // Silicon + {9900, 22} // Cherenkov gamma }; virtual bool generate(GenParticleCollection &, unsigned int &); From ac45576269b40c8894bb10d028cb66b0938347e9 Mon Sep 17 00:00:00 2001 From: soleti Date: Tue, 3 Dec 2019 19:03:38 -0600 Subject: [PATCH 2/2] Printing geometry information after assignation --- EventGenerator/src/CosmicCRY.cc | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/EventGenerator/src/CosmicCRY.cc b/EventGenerator/src/CosmicCRY.cc index 274e975988..a5a2a765b0 100644 --- a/EventGenerator/src/CosmicCRY.cc +++ b/EventGenerator/src/CosmicCRY.cc @@ -134,11 +134,6 @@ void CosmicCRY::generate(GenParticleCollection &genParts) _worldZmin = worldGeom->mu2eOriginInWorld().z() - worldGeom->halfLengths()[2] + deltaX; _worldZmax = worldGeom->mu2eOriginInWorld().z() + worldGeom->halfLengths()[2] - deltaX; - mf::LogInfo("CosmicCRY") << "Ref. point: " << _cosmicReferencePointInMu2e << std::endl; - mf::LogInfo("CosmicCRY") << "Target box: " << _targetBoxXmin << ", " << _targetBoxXmax << ", " << _targetBoxYmin << ", " << _targetBoxYmax << ", " << _targetBoxZmin << ", " << _targetBoxZmax; - mf::LogInfo("CosmicCRY") << "World: " << _worldXmin << ", " << _worldXmax << ", " << _worldYmin << ", " << _worldYmax << ", " - << _worldZmin << ", " << _worldZmax; - if (_refPointChoice == "TRACKER") _cosmicReferencePointInMu2e = Hep3Vector(detsys->getOrigin().x(), _refY0, detsys->getOrigin().z()); @@ -155,6 +150,11 @@ void CosmicCRY::generate(GenParticleCollection &genParts) else if (_refPointChoice == "UNDEFINED") _cosmicReferencePointInMu2e = Hep3Vector(0., _refY0, 0.); + mf::LogInfo("CosmicCRY") << "Ref. point: " << _cosmicReferencePointInMu2e << std::endl; + mf::LogInfo("CosmicCRY") << "Target box: " << _targetBoxXmin << ", " << _targetBoxXmax << ", " << _targetBoxYmin << ", " << _targetBoxYmax << ", " << _targetBoxZmin << ", " << _targetBoxZmax; + mf::LogInfo("CosmicCRY") << "World: " << _worldXmin << ", " << _worldXmax << ", " << _worldYmin << ", " << _worldYmax << ", " + << _worldZmin << ", " << _worldZmax; + _geomInfoObtained = true; }