Hi experts,
I want to set physicslist for Hadron therapy.
this is the description of my reference paper.
“The GEANT4 (GEANT4.10.3)-based GATE (release 8.0) toolkit was employed. One of the recommended physics list for hadrontherapy by the GATE collaboration was employed [24].
The so-called QGSP−BIC−HP builder and standard option 3 were used to describe the hadronic and electromagnetic interactions, respectively. A range cut of 20 μm was considered
for protons, electrons, positrons, and gammas. Values of 75 and 85.7 eV were used for the ionization potentials in water and air, respectively”
[24] Grevillot L, Frisson T, Zahra N, Bertrand D, Stichelbaut F, Freud N, et al. Optimization of GEANT4 settings for proton pencil beam scanning simulations using GATE. NIM B. (2010) 268:3295–305.
I use this code.
PhysicsList :: PhysicsList() : G4VModularPhysicsList()
{
SetVerboseLevel(4);
defaultCutValue = 10.0*um;
// mandatory for G4NuclideTable
//
const G4double meanLife = 1*picosecond;
G4NuclideTable::GetInstance()->SetThresholdOfHalfLife(meanLife);
// Radioactive decay
RegisterPhysics(new G4DecayPhysics());
RegisterPhysics(new G4RadioactiveDecayPhysics());
//electromagnetic
RegisterPhysics(new G4EmStandardPhysics_option3());
RegisterPhysics(new G4IonBinaryCascadePhysics());
RegisterPhysics(new G4StoppingPhysics());
// Hadron Elastic scattering
//
RegisterPhysics(new G4HadronElasticPhysicsHP());
// Hadron Inelastic physics
//
RegisterPhysics( new G4HadronPhysicsQGSP_BIC_HP());
// Ion Elastic scattering
//
RegisterPhysics( new G4IonElasticPhysics());
}
PhysicsList::~PhysicsList()
{ }
void PhysicsList::ConstructParticle()
{
G4BosonConstructor pBosonConstructor;
pBosonConstructor.ConstructParticle();
G4LeptonConstructor pLeptonConstructor;
pLeptonConstructor.ConstructParticle();
G4MesonConstructor pMesonConstructor;
pMesonConstructor.ConstructParticle();
G4BaryonConstructor pBaryonConstructor;
pBaryonConstructor.ConstructParticle();
G4IonConstructor pIonConstructor;
pIonConstructor.ConstructParticle();
G4ShortLivedConstructor pShortLivedConstructor;
pShortLivedConstructor.ConstructParticle();
}
void PhysicsList::SetCuts()
{
G4VUserPhysicsList::SetCuts();
SetCutValue (20.0um ,“gamma”) ;
SetCutValue (20.0um ,“e -”) ;
SetCutValue(20.0um ,“e+”) ;
SetCutValue (20.0um ,"proton);
}
but unfortunately, I can’t get the correct dose for gamma or generally secondary particles.
please help me.