BDSIM
BDSIM is a Geant4 extension toolkit for simulation of particle transport in accelerator beamlines.
|
Structure to record a trajectory. More...
#include <BDSOutputROOTEventTrajectory.hh>
Data Structures | |
struct | IndividualTrajectory |
Temporary structure for an individual trajectory used to convert types. More... | |
Public Member Functions | |
void | Fill (const BDSTrajectoriesToStore *t, int storeStepPointsN, bool storeStepPointLast, const BDS::TrajectoryOptions &storageOptions, const std::map< G4Material *, short int > &materialToID) |
void | Fill (const BDSHitsCollectionEnergyDeposition *phc) |
void | FillIndividualTrajectory (IndividualTrajectory &itj, BDSTrajectory *traj, int i, const std::map< G4Material *, short int > &materialToID) const |
void | Flush () |
add comment to avoid warning (no need to make persistent, see issue #191) | |
void | Fill (const BDSOutputROOTEventTrajectory *other) |
std::vector< BDSOutputROOTEventTrajectoryPoint > | trackInteractions (int trackIDIn) const |
BDSOutputROOTEventTrajectoryPoint | primaryProcessPoint (int trackIDIn) const |
BDSOutputROOTEventTrajectoryPoint | parentProcessPoint (int trackIDIn) const |
std::vector< BDSOutputROOTEventTrajectoryPoint > | processHistory (int trackIDIn) const |
void | printTrajectoryInfoByTrackID (int trackIDIn) const |
void | printTrajectoryInfo (int storageIndex) const |
bool | parentIsPrimary (int trackIDIn) const |
ClassDef (BDSOutputROOTEventTrajectory, 5) | |
Data Fields | |
BDSAuxiliaryNavigator * | auxNavigator |
Required to find beamline index careful including in streamer. | |
int | n |
std::vector< std::bitset< BDS::NTrajectoryFilters > > | filters |
std::vector< int > | partID |
std::vector< unsigned int > | trackID |
std::vector< unsigned int > | parentID |
std::vector< unsigned int > | parentIndex |
std::vector< unsigned int > | parentStepIndex |
std::vector< int > | primaryStepIndex |
std::vector< int > | depth |
std::vector< std::vector< int > > | preProcessTypes |
std::vector< std::vector< int > > | preProcessSubTypes |
std::vector< std::vector< int > > | postProcessTypes |
std::vector< std::vector< int > > | postProcessSubTypes |
std::vector< std::vector< double > > | preWeights |
std::vector< std::vector< double > > | postWeights |
std::vector< std::vector< double > > | energyDeposit |
std::vector< std::vector< TVector3 > > | XYZ |
std::vector< std::vector< double > > | S |
std::vector< std::vector< TVector3 > > | PXPYPZ |
std::vector< std::vector< double > > | T |
std::vector< std::vector< short int > > | materialID |
std::vector< std::vector< int > > | modelIndicies |
std::map< int, int > | trackID_trackIndex |
std::vector< std::vector< TVector3 > > | xyz |
Local coordinates. | |
std::vector< std::vector< TVector3 > > | pxpypz |
Local coordinates. | |
std::vector< std::vector< int > > | charge |
Link trajectory information. | |
std::vector< std::vector< double > > | kineticEnergy |
Link trajectory information. | |
std::vector< std::vector< int > > | turnsTaken |
Link trajectory information. | |
std::vector< std::vector< double > > | mass |
Link trajectory information. | |
std::vector< std::vector< double > > | rigidity |
Link trajectory information. | |
std::vector< std::vector< bool > > | isIon |
Ion trajectory information. | |
std::vector< std::vector< int > > | ionA |
Ion trajectory information. | |
std::vector< std::vector< int > > | ionZ |
Ion trajectory information. | |
std::vector< std::vector< int > > | nElectrons |
Ion trajectory information. | |
Friends | |
std::ostream & | operator<< (std::ostream &out, BDSOutputROOTEventTrajectory const &p) |
Structure to record a trajectory.
Definition at line 114 of file BDSOutputROOTEventTrajectory.hh.
|
virtual |
Definition at line 46 of file BDSOutputROOTEventTrajectory.cc.
void BDSOutputROOTEventTrajectory::Fill | ( | const BDSHitsCollectionEnergyDeposition * | phc | ) |
Definition at line 330 of file BDSOutputROOTEventTrajectory.cc.
void BDSOutputROOTEventTrajectory::Fill | ( | const BDSOutputROOTEventTrajectory * | other | ) |
Definition at line 379 of file BDSOutputROOTEventTrajectory.cc.
void BDSOutputROOTEventTrajectory::Fill | ( | const BDSTrajectoriesToStore * | t, |
int | storeStepPointsN, | ||
bool | storeStepPointLast, | ||
const BDS::TrajectoryOptions & | storageOptions, | ||
const std::map< G4Material *, short int > & | materialToID | ||
) |
Definition at line 65 of file BDSOutputROOTEventTrajectory.cc.
void BDSOutputROOTEventTrajectory::FillIndividualTrajectory | ( | IndividualTrajectory & | itj, |
BDSTrajectory * | traj, | ||
int | i, | ||
const std::map< G4Material *, short int > & | materialToID | ||
) | const |
Fill an trajectory point with index 'i' into the IndividualTrajectory struct (basic C++ / ROOT types) from Geant4 types from 'traj' trajectory for 1 track.
Definition at line 260 of file BDSOutputROOTEventTrajectory.cc.
References auxNavigator, BDSPhysicalVolumeInfo::GetBeamlineIndex(), BDSTrajectoryPoint::GetCharge(), BDSTrajectoryPoint::GetEnergyDeposit(), BDSPhysicalVolumeInfoRegistry::GetInfo(), BDSTrajectoryPoint::GetIonA(), BDSTrajectoryPoint::GetIonZ(), BDSTrajectoryPoint::GetIsIon(), BDSTrajectoryPoint::GetKineticEnergy(), BDSTrajectoryPoint::GetMass(), BDSTrajectoryPoint::GetMaterial(), BDSTrajectoryPoint::GetMomentumLocal(), BDSTrajectoryPoint::GetNElectrons(), BDSTrajectory::GetPoint(), BDSTrajectoryPoint::GetPositionLocal(), BDSTrajectoryPoint::GetPostProcessSubType(), BDSTrajectoryPoint::GetPostProcessType(), BDSTrajectoryPoint::GetPostWeight(), BDSTrajectoryPoint::GetPreGlobalTime(), BDSTrajectoryPoint::GetPreMomentum(), BDSTrajectoryPoint::GetPreProcessSubType(), BDSTrajectoryPoint::GetPreProcessType(), BDSTrajectoryPoint::GetPreS(), BDSTrajectoryPoint::GetPreWeight(), BDSTrajectoryPoint::GetRigidity(), BDSTrajectoryPoint::GetTurnsTaken(), BDSPhysicalVolumeInfoRegistry::Instance(), and BDSAuxiliaryNavigator::LocateGlobalPointAndSetup().
void BDSOutputROOTEventTrajectory::Flush | ( | ) |
add comment to avoid warning (no need to make persistent, see issue #191)
Definition at line 337 of file BDSOutputROOTEventTrajectory.cc.
References charge, ionA, ionZ, isIon, kineticEnergy, mass, nElectrons, pxpypz, rigidity, turnsTaken, and xyz.
Referenced by BDSOutputStructures::ClearStructuresEventLevel(), and Event::Flush().
bool BDSOutputROOTEventTrajectory::parentIsPrimary | ( | int | trackIDIn | ) | const |
Definition at line 739 of file BDSOutputROOTEventTrajectory.cc.
BDSOutputROOTEventTrajectoryPoint BDSOutputROOTEventTrajectory::parentProcessPoint | ( | int | trackIDIn | ) | const |
Definition at line 548 of file BDSOutputROOTEventTrajectory.cc.
BDSOutputROOTEventTrajectoryPoint BDSOutputROOTEventTrajectory::primaryProcessPoint | ( | int | trackIDIn | ) | const |
Definition at line 527 of file BDSOutputROOTEventTrajectory.cc.
void BDSOutputROOTEventTrajectory::printTrajectoryInfo | ( | int | storageIndex | ) | const |
Definition at line 698 of file BDSOutputROOTEventTrajectory.cc.
void BDSOutputROOTEventTrajectory::printTrajectoryInfoByTrackID | ( | int | trackIDIn | ) | const |
Definition at line 683 of file BDSOutputROOTEventTrajectory.cc.
std::vector< BDSOutputROOTEventTrajectoryPoint > BDSOutputROOTEventTrajectory::processHistory | ( | int | trackIDIn | ) | const |
Definition at line 615 of file BDSOutputROOTEventTrajectory.cc.
std::vector< BDSOutputROOTEventTrajectoryPoint > BDSOutputROOTEventTrajectory::trackInteractions | ( | int | trackIDIn | ) | const |
Definition at line 452 of file BDSOutputROOTEventTrajectory.cc.
|
friend |
Definition at line 753 of file BDSOutputROOTEventTrajectory.cc.
BDSAuxiliaryNavigator* BDSOutputROOTEventTrajectory::auxNavigator |
Required to find beamline index careful including in streamer.
Definition at line 165 of file BDSOutputROOTEventTrajectory.hh.
Referenced by FillIndividualTrajectory().
std::vector<std::vector<int> > BDSOutputROOTEventTrajectory::charge |
Link trajectory information.
Definition at line 201 of file BDSOutputROOTEventTrajectory.hh.
Referenced by Flush().
std::vector<int> BDSOutputROOTEventTrajectory::depth |
Definition at line 179 of file BDSOutputROOTEventTrajectory.hh.
std::vector<std::vector<double> > BDSOutputROOTEventTrajectory::energyDeposit |
Definition at line 188 of file BDSOutputROOTEventTrajectory.hh.
std::vector<std::bitset<BDS::NTrajectoryFilters> > BDSOutputROOTEventTrajectory::filters |
Definition at line 172 of file BDSOutputROOTEventTrajectory.hh.
std::vector<std::vector<int> > BDSOutputROOTEventTrajectory::ionA |
Ion trajectory information.
Definition at line 210 of file BDSOutputROOTEventTrajectory.hh.
Referenced by Flush().
std::vector<std::vector<int> > BDSOutputROOTEventTrajectory::ionZ |
Ion trajectory information.
Definition at line 211 of file BDSOutputROOTEventTrajectory.hh.
Referenced by Flush().
std::vector<std::vector<bool> > BDSOutputROOTEventTrajectory::isIon |
Ion trajectory information.
Definition at line 209 of file BDSOutputROOTEventTrajectory.hh.
Referenced by Flush().
std::vector<std::vector<double> > BDSOutputROOTEventTrajectory::kineticEnergy |
Link trajectory information.
Definition at line 202 of file BDSOutputROOTEventTrajectory.hh.
Referenced by Flush().
std::vector<std::vector<double> > BDSOutputROOTEventTrajectory::mass |
Link trajectory information.
Definition at line 204 of file BDSOutputROOTEventTrajectory.hh.
Referenced by Flush().
std::vector<std::vector<short int> > BDSOutputROOTEventTrajectory::materialID |
Definition at line 215 of file BDSOutputROOTEventTrajectory.hh.
std::vector<std::vector<int> > BDSOutputROOTEventTrajectory::modelIndicies |
Definition at line 217 of file BDSOutputROOTEventTrajectory.hh.
int BDSOutputROOTEventTrajectory::n |
Definition at line 171 of file BDSOutputROOTEventTrajectory.hh.
std::vector<std::vector<int> > BDSOutputROOTEventTrajectory::nElectrons |
Ion trajectory information.
Definition at line 212 of file BDSOutputROOTEventTrajectory.hh.
Referenced by Flush().
std::vector<unsigned int> BDSOutputROOTEventTrajectory::parentID |
Definition at line 175 of file BDSOutputROOTEventTrajectory.hh.
std::vector<unsigned int> BDSOutputROOTEventTrajectory::parentIndex |
Definition at line 176 of file BDSOutputROOTEventTrajectory.hh.
std::vector<unsigned int> BDSOutputROOTEventTrajectory::parentStepIndex |
Definition at line 177 of file BDSOutputROOTEventTrajectory.hh.
std::vector<int> BDSOutputROOTEventTrajectory::partID |
Definition at line 173 of file BDSOutputROOTEventTrajectory.hh.
std::vector<std::vector<int> > BDSOutputROOTEventTrajectory::postProcessSubTypes |
Definition at line 184 of file BDSOutputROOTEventTrajectory.hh.
std::vector<std::vector<int> > BDSOutputROOTEventTrajectory::postProcessTypes |
Definition at line 183 of file BDSOutputROOTEventTrajectory.hh.
std::vector<std::vector<double> > BDSOutputROOTEventTrajectory::postWeights |
Definition at line 187 of file BDSOutputROOTEventTrajectory.hh.
std::vector<std::vector<int> > BDSOutputROOTEventTrajectory::preProcessSubTypes |
Definition at line 182 of file BDSOutputROOTEventTrajectory.hh.
std::vector<std::vector<int> > BDSOutputROOTEventTrajectory::preProcessTypes |
Definition at line 181 of file BDSOutputROOTEventTrajectory.hh.
std::vector<std::vector<double> > BDSOutputROOTEventTrajectory::preWeights |
Definition at line 186 of file BDSOutputROOTEventTrajectory.hh.
std::vector<int> BDSOutputROOTEventTrajectory::primaryStepIndex |
Definition at line 178 of file BDSOutputROOTEventTrajectory.hh.
std::vector<std::vector<TVector3> > BDSOutputROOTEventTrajectory::PXPYPZ |
Definition at line 192 of file BDSOutputROOTEventTrajectory.hh.
std::vector<std::vector<TVector3> > BDSOutputROOTEventTrajectory::pxpypz |
Local coordinates.
Definition at line 197 of file BDSOutputROOTEventTrajectory.hh.
Referenced by Flush().
std::vector<std::vector<double> > BDSOutputROOTEventTrajectory::rigidity |
Link trajectory information.
Definition at line 205 of file BDSOutputROOTEventTrajectory.hh.
Referenced by Flush().
std::vector<std::vector<double> > BDSOutputROOTEventTrajectory::S |
Definition at line 191 of file BDSOutputROOTEventTrajectory.hh.
std::vector<std::vector<double> > BDSOutputROOTEventTrajectory::T |
Definition at line 193 of file BDSOutputROOTEventTrajectory.hh.
std::vector<unsigned int> BDSOutputROOTEventTrajectory::trackID |
Definition at line 174 of file BDSOutputROOTEventTrajectory.hh.
std::map<int, int> BDSOutputROOTEventTrajectory::trackID_trackIndex |
Definition at line 219 of file BDSOutputROOTEventTrajectory.hh.
std::vector<std::vector<int> > BDSOutputROOTEventTrajectory::turnsTaken |
Link trajectory information.
Definition at line 203 of file BDSOutputROOTEventTrajectory.hh.
Referenced by Flush().
std::vector<std::vector<TVector3> > BDSOutputROOTEventTrajectory::XYZ |
Definition at line 190 of file BDSOutputROOTEventTrajectory.hh.
std::vector<std::vector<TVector3> > BDSOutputROOTEventTrajectory::xyz |
Local coordinates.
Definition at line 196 of file BDSOutputROOTEventTrajectory.hh.
Referenced by Flush().