56 :filename(
"Let.out"),matrix(0)
64 "HadrontherapyMatrix not found. Firstly create an instance of it.");
75 detectorMat = pDet -> GetDetectorLogicalVolume() -> GetMaterial();
115 if (DE <= 0. || DX <=0.)
return;
117 G4int Z = particleDef -> GetAtomicNumber();
120 G4int PDGencoding = particleDef -> GetPDGEncoding();
121 PDGencoding -= PDGencoding%10;
142 G4int A = particleDef -> GetAtomicMass();
144 G4String fullName = particleDef -> GetParticleName();
145 G4String name = fullName.substr (0, fullName.find(
"[") );
149 (trackID == 1) ?
true:
false,
253 ofs << i <<
'\t' << j <<
'\t' << k <<
'\t';
278 LetFragmentTuple->
Write();
static G4RunManager * GetRunManager()
HadrontherapyPrimaryGeneratorAction * pPGA
G4int numberOfVoxelAlongX
G4int numberOfVoxelAlongY
std::vector< ExP01TrackerHit * > a
static constexpr double keV
static HadrontherapyMatrix * GetInstance()
HadrontherapyMatrix * matrix
G4bool SetFirstHistoId(G4int firstId)
G4bool OpenFile(const G4String &fileName="")
G4bool FillNtupleIColumn(G4int id, G4int value)
static HadrontherapyLet * GetInstance()
static constexpr double um
G4int CreateNtupleIColumn(const G4String &name)
static G4bool doCalculation
G4bool FillNtupleDColumn(G4int id, G4double value)
std::vector< ionLet > ionLetStore
void FillEnergySpectrum(G4int trackID, G4ParticleDefinition *particleDef, G4double DE, G4double DX, G4int i, G4int j, G4int k)
double A(double temperature)
HadrontherapyLet(HadrontherapyDetectorConstruction *)
G4int CreateNtupleDColumn(const G4String &name)
void SetVerboseLevel(G4int verboseLevel)
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *description)
G4int numberOfVoxelAlongZ
G4int CreateNtuple(const G4String &name, const G4String &title)
static HadrontherapyLet * instance
G4bool SetFirstNtupleId(G4int firstId)