Introduction to GEANT4
From UCL HEP PBT Wiki
m |
m |
||
Line 115: | Line 115: | ||
== <span style="color:#000080"> Physics processes </span> == | == <span style="color:#000080"> Physics processes </span> == | ||
- | You can build your own physics list or chose from already built physics lists. You can use two base physics list classes: <span style="color:#ff0000"> G4VUserPhysicsList </span> and <span style="color:#ff0000"> G4ModularPhysicsList </span> to build your own physics lists. The class <span style="color:#ff0000"> G4VUserPhysicsList </span> is used for simple physics lists while <span style="color:#ff0000"> G4ModularPhysicsList </span> is used to build more complex physics lists. | + | You can build your own physics list or chose from already built physics lists. You can use two base physics list classes: <span style="color:#ff0000"> G4VUserPhysicsList </span> and <span style="color:#ff0000"> G4ModularPhysicsList </span> to build your own physics lists. The class <span style="color:#ff0000"> G4VUserPhysicsList </span> is used for simple physics lists while <span style="color:#ff0000"> G4ModularPhysicsList </span> is used to build more complex physics lists. There exist also already built pre-packaged physics lists. |
Line 289: | Line 289: | ||
=== <span style="color:#000080"> Reference physics lists </span> === | === <span style="color:#000080"> Reference physics lists </span> === | ||
- | Some built in | + | Some built in pre-packaged physics lists are available [http://geant4.web.cern.ch/geant4/support/proc_mod_catalog/physics_lists/referencePL.shtml here]. You can use them as a starting point of your simulation. |
+ | <u> Simple example of <span style="color:#ff0000"> pre-packaged physics list </span> </u>: | ||
+ | |||
+ | |||
+ | <span style="color:#800000"> In the main() function: </span> | ||
+ | |||
+ | <span style="color:#800000"> G4PhysListFactory factory* physListFactory = new G4PhysListFactory(); </span> | ||
+ | |||
+ | <span style="color:#800000"> G4VUserPhysicsList* physicsList = physListFactory->GetReferencePhysList(“FTFP_BERT”); </span> | ||
+ | |||
+ | <span style="color:#800000"> runManager->SetUserInitialization(physicsList); </span> | ||
+ | |||
+ | |||
+ | Most of the pre-packaged physics lists use "standard" electromagnetic physics processes. The "standard" EM processes are defined with classes: G4EmStandardPhysics, G4EmStandardPhysics_option1, G4EmStandardPhysics_option2 and G4EmStandardPhysics_option3. If you want to use the "low energy" electromagnetic physics processes in the pre-packaged physics list you have to do the following: | ||
+ | |||
+ | |||
+ | |||
+ | G4EmLivermorePhysics, G4EmLivermorePolarizedPhysics, G4EmPenelopePhysics and G4EmDNAPhysics. | ||
+ | |||
+ | If primary particle energy in your application is < 5 GeV (for example, clinical proton beam of 150 MeV) | ||
+ | start with a physics list which includes BIC or BERT | ||
+ | e.g. QGSP_BIC, QGSP_BERT, FTFP_BERT, etc. | ||
+ | |||
+ | If you’re interested in Bragg curve physics | ||
+ | use a physics list ending in “EMV” or “EMX” | ||
+ | e.g. QGSP_BERT_EMV | ||
== <span style="color:#000080"> Generate primary particles </span> == | == <span style="color:#000080"> Generate primary particles </span> == |