LArSoft
v06_85_00
Liquid Argon Software toolkit - http://larsoft.org/
|
LArPandoraInput class. More...
#include "LArPandoraInput.h"
Classes | |
class | Settings |
Settings class. More... | |
Static Public Member Functions | |
static void | CreatePandoraHits2D (const Settings &settings, const LArDriftVolumeMap &driftVolumeMap, const HitVector &hitVector, IdToHitMap &idToHitMap) |
Create the Pandora 2D hits from the ART hits. More... | |
static void | CreatePandoraLArTPCs (const Settings &settings, const LArDriftVolumeList &driftVolumeList) |
Create pandora LArTPCs to represent the different drift volumes in use. More... | |
static void | CreatePandoraDetectorGaps (const Settings &settings, const LArDriftVolumeList &driftVolumeList, const LArDetectorGapList &listOfGaps) |
Create pandora line gaps to cover dead regions between TPCs in a global drift volume approach. More... | |
static void | CreatePandoraReadoutGaps (const Settings &settings, const LArDriftVolumeMap &driftVolumeMap) |
Create pandora line gaps to cover any (continuous regions of) bad channels. More... | |
static void | CreatePandoraMCParticles (const Settings &settings, const MCTruthToMCParticles &truthToParticles, const MCParticlesToMCTruth &particlesToTruth, const RawMCParticleVector &generatorMCParticleVector) |
Create the Pandora MC particles from the MC particles. More... | |
static void | FindPrimaryParticles (const RawMCParticleVector &mcParticleVector, std::map< const simb::MCParticle, bool > &primaryMCParticleMap) |
Find all primary MCParticles in a given vector of MCParticles. More... | |
static bool | IsPrimaryMCParticle (const art::Ptr< simb::MCParticle > &mcParticle, std::map< const simb::MCParticle, bool > &primaryMCParticleMap) |
Check whether an MCParticle can be found in a given map. More... | |
static void | CreatePandoraMCLinks2D (const Settings &settings, const HitMap &hitMap, const HitsToTrackIDEs &hitToParticleMap) |
Create links between the 2D hits and Pandora MC particles. More... | |
Static Private Member Functions | |
static void | GetTrueStartAndEndPoints (const Settings &settings, const art::Ptr< simb::MCParticle > &particle, int &startT, int &endT) |
Loop over MC trajectory points and identify start and end points within the detector. More... | |
static void | GetTrueStartAndEndPoints (const unsigned int cstat, const unsigned int tpc, const art::Ptr< simb::MCParticle > &particle, int &startT, int &endT) |
Loop over MC trajectory points and identify start and end points within a given cryostat and TPC. More... | |
static float | GetTrueX0 (const art::Ptr< simb::MCParticle > &particle, const int nT) |
Use detector and time services to get a true X offset for a given trajectory point. More... | |
static double | GetMips (const Settings &settings, const double hit_Charge, const geo::View_t hit_View) |
Convert charge in ADCs to approximate MIPs. More... | |
LArPandoraInput class.
Definition at line 22 of file LArPandoraInput.h.
|
static |
Create pandora line gaps to cover dead regions between TPCs in a global drift volume approach.
settings | the settings |
driftVolumeList | the drift volume list |
listOfGaps | the list of gaps |
Definition at line 213 of file LArPandoraInput.cxx.
References lar_pandora::LArPandoraInput::Settings::m_pPrimaryPandora, and max.
Referenced by lar_pandora::LArPandora::beginJob().
|
static |
Create the Pandora 2D hits from the ART hits.
settings | the settings |
driftVolumeMap | the mapping from volume id to drift volume |
hits | the input list of ART hits for this event |
idToHitMap | to receive the mapping from Pandora hit ID to ART hit |
Definition at line 41 of file LArPandoraInput.cxx.
References geo::GeometryCore::Cryostat(), geo::WireGeo::GetCenter(), lar_pandora::LArPandoraGeometry::GetGlobalView(), GetMips(), lar_pandora::LArPandoraGeometry::GetVolumeID(), recob::Hit::Integral(), geo::kU, geo::kV, geo::kW, lar_pandora::LArPandoraInput::Settings::m_dx_cm, lar_pandora::LArPandoraInput::Settings::m_int_cm, lar_content::LArCaloHitParameters::m_larTPCVolumeId, lar_pandora::LArPandoraInput::Settings::m_mips_to_gev, lar_pandora::LArPandoraInput::Settings::m_pPrimaryPandora, lar_pandora::LArPandoraInput::Settings::m_rad_cm, lar_pandora::LArPandoraInput::Settings::m_uidOffset, lar_pandora::LArPandoraInput::Settings::m_useHitWidths, recob::Hit::PeakTime(), recob::Hit::PeakTimeMinusRMS(), recob::Hit::PeakTimePlusRMS(), geo::TPCGeo::Plane(), geo::CryostatGeo::TPC(), recob::Hit::View(), geo::PlaneGeo::Wire(), recob::Hit::WireID(), and geo::GeometryCore::WirePitch().
Referenced by lar_pandora::LArPandora::CreatePandoraInput().
|
static |
Create pandora LArTPCs to represent the different drift volumes in use.
settings | the settings |
driftVolumeList | the drift volume list |
Definition at line 162 of file LArPandoraInput.cxx.
References lar_pandora::LArPandoraInput::Settings::m_pPrimaryPandora.
Referenced by lar_pandora::LArPandora::beginJob().
|
static |
Create links between the 2D hits and Pandora MC particles.
settings | the settings |
hitMap | mapping from Pandora hit addresses to ART hits |
hitToParticleMap | mapping from each ART hit to its underlying G4 track ID |
Definition at line 620 of file LArPandoraInput.cxx.
References lar_pandora::LArPandoraInput::Settings::m_pPrimaryPandora.
Referenced by lar_pandora::LArPandora::CreatePandoraInput().
|
static |
Create the Pandora MC particles from the MC particles.
settings | the settings |
truthToParticles | mapping from MC truth to MC particles |
particlesToTruth | mapping from MC particles to MC truth |
Definition at line 374 of file LArPandoraInput.cxx.
References E, simb::MCParticle::E(), FindPrimaryParticles(), simb::MCTruth::GetNeutrino(), GetTrueStartAndEndPoints(), IsPrimaryMCParticle(), simb::kCosmicRay, simb::kSingleParticle, lar_content::LArMCParticleParameters::m_nuanceCode, lar_pandora::LArPandoraInput::Settings::m_pPrimaryPandora, lar_pandora::LArPandoraInput::Settings::m_uidOffset, simb::MCParticle::Mother(), simb::MCTruth::NeutrinoSet(), simb::MCTruth::Origin(), geo::origin(), simb::MCParticle::PdgCode(), simb::MCParticle::Px(), simb::MCParticle::Py(), simb::MCParticle::Pz(), simb::MCParticle::TrackId(), cheat::ParticleInventoryService::TrackIdToMCTruth(), simb::MCParticle::Vx(), simb::MCParticle::Vy(), and simb::MCParticle::Vz().
Referenced by lar_pandora::LArPandora::CreatePandoraInput().
|
static |
Create pandora line gaps to cover any (continuous regions of) bad channels.
settings | the settings |
driftVolumeMap | the mapping from volume id to drift volume |
Definition at line 254 of file LArPandoraInput.cxx.
References geo::GeometryCore::Cryostat(), f, geo::WireGeo::GetCenter(), lar_pandora::LArPandoraGeometry::GetGlobalView(), lar_pandora::LArPandoraGeometry::GetVolumeID(), geo::kU, geo::kV, geo::kW, lar_pandora::LArPandoraInput::Settings::m_pPrimaryPandora, max, min, geo::GeometryCore::Ncryostats(), geo::GeometryCore::NTPC(), geo::GeometryCore::Nwires(), geo::TPCGeo::Plane(), geo::GeometryCore::PlaneWireToChannel(), geo::CryostatGeo::TPC(), geo::GeometryCore::TPC(), geo::PlaneGeo::Wire(), and geo::GeometryCore::WirePitch().
Referenced by lar_pandora::LArPandora::CreatePandoraInput().
|
static |
Find all primary MCParticles in a given vector of MCParticles.
mcParticleVector | vector of all MCParticles to consider |
primaryMCParticleMap | map containing primary MCParticles and bool indicating whether particle has been accounted for |
Definition at line 585 of file LArPandoraInput.cxx.
Referenced by CreatePandoraMCParticles().
|
staticprivate |
Convert charge in ADCs to approximate MIPs.
settings | the settings |
hit_Charge | the input charge |
hit_View | the input view number |
Definition at line 748 of file LArPandoraInput.cxx.
References util::kGeVToElectrons, lar_pandora::LArPandoraInput::Settings::m_dEdX_mip, lar_pandora::LArPandoraInput::Settings::m_mips_if_negative, lar_pandora::LArPandoraInput::Settings::m_mips_max, lar_pandora::LArPandoraInput::Settings::m_recombination_factor, lar_pandora::LArPandoraInput::Settings::m_useBirksCorrection, and geo::GeometryCore::WirePitch().
Referenced by CreatePandoraHits2D().
|
staticprivate |
Loop over MC trajectory points and identify start and end points within the detector.
settings | the settings |
particle | the true particle |
startT | the first trajectory point in the detector |
endT | the last trajectory point in the detector |
Definition at line 669 of file LArPandoraInput.cxx.
References geo::GeometryCore::Ncryostats(), and geo::GeometryCore::NTPC().
Referenced by CreatePandoraMCParticles().
|
staticprivate |
Loop over MC trajectory points and identify start and end points within a given cryostat and TPC.
cstat | the cryostat |
tpc | the TPC |
particle | the true particle |
startT | the first trajectory point in the detector |
endT | the last trajectory point in the detector |
Definition at line 695 of file LArPandoraInput.cxx.
References geo::CryostatID::Cryostat, geo::GeometryCore::FindTPCAtPosition(), geo::CryostatID::isValid, simb::MCParticle::NumberTrajectoryPoints(), geo::TPCID::TPC, simb::MCParticle::Vx(), simb::MCParticle::Vy(), and simb::MCParticle::Vz().
|
staticprivate |
Use detector and time services to get a true X offset for a given trajectory point.
particle | the true particle |
nT | the trajectory point |
Definition at line 726 of file LArPandoraInput.cxx.
References geo::GeometryCore::Cryostat(), geo::kNegX, geo::GeometryCore::PositionToTPC(), simb::MCParticle::T(), geo::CryostatGeo::TPC(), simb::MCParticle::Vx(), simb::MCParticle::Vy(), and simb::MCParticle::Vz().
|
static |
Check whether an MCParticle can be found in a given map.
mcParticle | target MCParticle |
primaryMCParticleMap | map containing primary MCParticles and bool indicating whether particle has been accounted for |
Definition at line 598 of file LArPandoraInput.cxx.
References simb::MCParticle::Px(), simb::MCParticle::Py(), and simb::MCParticle::Pz().
Referenced by CreatePandoraMCParticles().