GEANT4 step、track、event的信息输出

GEANT4 step、track、event的信息输出

  • GEANT4 step、track、event的信息输出
    • 提取函数
    • 输出
    • 反推粒子的反应过程

GEANT4 step、track、event的信息输出

GEANT4输出step、track、event的信息

提取函数

提取信息的函数

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
// prepoint、postpoint的volume的name
G4String postName = step->GetPostStepPoint()->GetTouchableHandle()->GetVolume()->GetName();
G4String preName = step->GetPreStepPoint()->GetTouchableHandle()->GetVolume()->GetName();
// 提取step的能量沉积
G4double edepStep = step->GetTotalEnergyDeposit();
// 提取eventID、trackID
G4int id_event = (G4EventManager::GetEventManager())->GetConstCurrentEvent()->GetEventID();
G4int id_track = step->GetTrack()->GetTrackID();
// 提取当前step的PDGEncoding
G4int PDGE = step->GetTrack()->GetDefinition()->GetPDGEncoding();
// 提取postpoint的点发生的反应名称
G4String processN = step->GetPostStepPoint()->GetProcessDefinedStep()->GetProcessName();
// 提取prepoint、postpoint粒子的动能
G4double postE = step->GetPostStepPoint()->GetKineticEnergy();
G4double preE = step->GetPreStepPoint()->GetKineticEnergy();

输出

这里只列出前3个event的信息

1
2
3
4
5
6
7
8
9
10
11
eventID trackID PDGE eDeposit processName preKineticE postKineticE
1       1       22   0         compt      1           0.755074
1       1       22   0         compt      0.755074    0.704322
1       1       22   0.090832  phot       0.704322    0
1       4       11   0.61349   eIoni      0.61349     0
1       3       11   0.0507513 eIoni      0.0507513   0
1       2       11   0.244926  eIoni      0.244926    0
2       1       22   0.090832  phot       1           0
2       2       11   0.909168  eIoni      0.909168    0
3       1       22   0.090832  phot       0.926337    0
3       3       11   0.835505  eIoni      0.835505    0

反推粒子的反应过程

把第一个event的反应过程画出来

在这里插入图片描述

这样看来,GetEnergyDeposit()这个函数还是非常准确的。