37 #include "Analysis.hh"
39 #include "SteppingAction.hh"
40 #include "RunAction.hh"
41 #include "DetectorConstruction.hh"
42 #include "PrimaryGeneratorAction.hh"
112 GetDefinition()->GetParticleName();
114 GetProcessDefinedStep()->GetProcessName();
117 if (particleName ==
"e-") flagParticle = 1;
118 else if (particleName ==
"proton") flagParticle = 2;
119 else if (particleName ==
"hydrogen") flagParticle = 3;
120 else if (particleName ==
"alpha") flagParticle = 4;
121 else if (particleName ==
"alpha+") flagParticle = 5;
122 else if (particleName ==
"helium") flagParticle = 6;
125 if (processName==
"Capture"||processName==
"e-_G4DNAElectronSolvation") flagProcess =1;
126 else if (processName==
"e-_G4DNAElastic") flagProcess =11;
127 else if (processName==
"e-_G4DNAExcitation") flagProcess =12;
128 else if (processName==
"e-_G4DNAIonisation") flagProcess =13;
129 else if (processName==
"e-_G4DNAAttachment") flagProcess =14;
130 else if (processName==
"e-_G4DNAVibExcitation") flagProcess =15;
132 else if (processName==
"proton_G4DNAExcitation") flagProcess =17;
133 else if (processName==
"proton_G4DNAIonisation") flagProcess =18;
134 else if (processName==
"proton_G4DNAChargeDecrease") flagProcess =19;
136 else if (processName==
"hydrogen_G4DNAExcitation") flagProcess =20;
137 else if (processName==
"hydrogen_G4DNAIonisation") flagProcess =21;
138 else if (processName==
"hydrogen_G4DNAChargeIncrease") flagProcess =22;
140 else if (processName==
"alpha_G4DNAExcitation") flagProcess =23;
141 else if (processName==
"alpha_G4DNAIonisation") flagProcess =24;
142 else if (processName==
"alpha_G4DNAChargeDecrease") flagProcess =25;
144 else if (processName==
"alpha+_G4DNAExcitation") flagProcess =26;
145 else if (processName==
"alpha+_G4DNAIonisation") flagProcess =27;
146 else if (processName==
"alpha+_G4DNAChargeDecrease") flagProcess =28;
147 else if (processName==
"alpha+_G4DNAChargeIncrease") flagProcess =29;
149 else if (processName==
"helium_G4DNAExcitation") flagProcess =30;
150 else if (processName==
"helium_G4DNAIonisation") flagProcess =31;
151 else if (processName==
"helium_G4DNAChargeIncrease") flagProcess =32;
153 if (processName!=
"Transportation")
166 analysisManager->FillNtupleDColumn(0, flagParticle);
167 analysisManager->FillNtupleDColumn(1, flagProcess);
168 analysisManager->FillNtupleDColumn(2, x);
169 analysisManager->FillNtupleDColumn(3, y);
170 analysisManager->FillNtupleDColumn(4, z);
172 analysisManager->FillNtupleDColumn(6,
173 std::sqrt((x-xp)*(x-xp)+
174 (y-yp)*(y-yp)+(z-zp)*(z-zp))/
nm);
175 analysisManager->FillNtupleDColumn(7,
179 GetKineticEnergy())/
eV );
181 GetConstCurrentEvent()->GetEventID());
182 analysisManager->AddNtupleRow();
const G4DynamicParticle * GetDynamicParticle() const
static constexpr double nanometer
void UserSteppingAction(const G4Step *)
G4StepPoint * GetPreStepPoint() const
const G4ThreeVector & GetPosition() const
static constexpr double eV
G4double GetTotalEnergyDeposit() const
static constexpr double nm
G4StepPoint * GetPostStepPoint() const
static G4EventManager * GetEventManager()
G4Track * GetTrack() const
G4CsvAnalysisManager G4AnalysisManager