1 / 33

cern.ch/geant4/geant4.html gefn.it/geant4/events/salamanca.html

http://cern.ch/geant4/geant4.html http://www.ge.infn.it/geant4/events/salamanca.html. Brachytherapy exercise. G. Cosmo, S. Guatelli, M.G Pia Salamanca, 15-19 July 2002. Plan of this exercise. Learn the basics of how to build a simple user application Mandatory user classes

westrick
Télécharger la présentation

cern.ch/geant4/geant4.html gefn.it/geant4/events/salamanca.html

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. http://cern.ch/geant4/geant4.htmlhttp://www.ge.infn.it/geant4/events/salamanca.htmlhttp://cern.ch/geant4/geant4.htmlhttp://www.ge.infn.it/geant4/events/salamanca.html Brachytherapy exercise G. Cosmo, S. Guatelli, M.G Pia Salamanca, 15-19 July 2002

  2. Plan of this exercise • Learn the basics of how to build a simple user application • Mandatory user classes • Optional user actions • Learn the basics of how to use interactive facilities • User Interface • Visualisation • Histogramming • How we’ll proceed • Illustrate design and implementation basic features • Propose a simple exercise on the same topic • Show the solution

  3. Basics of user classes • See lecture on Monday • Would you like to refresh an overview of Geant4 user classes?

  4. User requirements (main ones listed only) The application provides the simulation of dose distribution of brachytherapic sources in a phantom • The user shall be able to change the absorber material of the phantom • The user shall be able to change interactively the brachytherapic source • The user shall be able to put sources in different positions inside the phantom • Low Energy electromagnetic processes should be available • The user shall be able to calculate the total absorbed energy in the phantom • 3D distribution in the volume • 2D distribution in the plane containing the source • The dose should be collected 1mm voxels • The user shall be able to define the isodose curves in the phantom • The user shall be able to visualize the geometry involved and the trajectories of the particles

  5. Part 1 Use case: model a brachytherapy seed and a phantom • Use case: model a 192Ir brachytherapy seed • Use case: model a water phantom • Use case: visualise the geometry • Exercise: model a soft tissue phantom • Exercise: select phantom material from the UI • Exercise: model a 125I brachytherapy seed • Use case: model the radioactive source as a primary generator of monocromatic photons • Exercise: model the spectrum of a 125I source

  6. OOAD

  7. Implementation • Exercise Brachy1 • header files in include/*.hh, source code in src/ *.cc • main in Brachy.cc • macro: initInter.mac • Classes • BrachyDetectorConstruction • BrachyPrimaryGeneratorAction • BrachyPhysicsList • BrachyRunAction • BrachyEventAction - BrachyVisManager

  8. How to run • Define necessary environment variables • source setup_brachy.csh • How to compile and link • gmake • How to run • $G4WORKDIR/bin/Linux/Brachy Default macro :initInter.mac

  9. today tomorrow

  10. Run Brachy1 At the |idle> prompt, type help, information about interactive commands • It will appear: the visualization of the box • It will appear: |idle> (interactive mode) • type /run/beamOn number of events • The simulation is executed • Type exit OGLIX : Immediate visualization No images saved! About Visualization DAWN : Interactive panel images saved Default visualization driver OGLIX Defined in InitInter.mac

  11. Model a 192Ir brachytherapy seed • Open BrachyDetectorConstruction in the editor • Follow the guided tour by Susanna How the geometry is build: ExpHall: world volume Phantom: Box Capsule of the source the mother volume is the containing volume! Iridium core

  12. More about visualization How to change driver: in initInter.mac /vis/open OGLIX #/vis/open DAWNFILE #/vis/open OGLIX /vis/open DAWNFILE How to work with DAWN: • How to work with OGLIX: • At the |idle> prompt • Type help • Type the number corresponding to /vis/ • Information about visualization commands • Eg. rotation of the geometry • magnification… • The interactive panel appears: • devices: choose the format • of the image • camera: choose the geometry • parameters • (rotation, magnification...)

  13. Before starting Documentation:http://geant4.web.cern.ch/geant4 click on documentation click on User’s Guide: For Application Developers very useful !

  14. Exercise: model a soft tissue phantom • Composition of soft tissue material (from NIST data base) • Guidance • define necessary elements • define tissue material • associate the tissue material to the phantom volume • Solution:Brachy2

  15. Exercise: select phantom material from UI • Select a water/tissue phantom • The user shall be able to change interactively the material of the phantom • Guidance • create a BrachyDetectorMessenger • Create a BrachyDetectorMessenger pointer in BrachyDetectorConstruction • Create the member function SetMaterial in BrachyDetectorConstruction • Help! Novice example N02 • Solution :Brachy3

  16. Exercise:Model a simplifiedI-125 brachytherapic sourcegeometry and materials • 3 tubs: • Iodium core • Air • Titanium capsule tip (box) • Titanium tube Iodium core Iodium core: Inner radius :0 Outer radius: 0.30mm Half length:1.75mm Titanium tube: Outer radius:0.40mm Half length:1.84mm Mean gamma energy :28.45keV Air: Outer radius:0.35mm half length:1.84mm Titanium capsule tip: Box Side :0.80mm Change the geometry of the source in BrachyDetector Construction

  17. Exercise: model a 125I brachytherapy seed • Guidance • define necessary elements, materials • define solids, logical volumes, physical volumes • suggestion: proceed incrementally (i.e. implement one/few features at a time, compile, verify that it is OK, add a new feature etc…) • Solution Brachy4 In Brachy4 the initial energy of primary particles is 28.45 KeV Pay attention to overlapping volumes: the simulation seems to ‘run’ but after few events it stops to work, it seems dead !

  18. Model a monocromatic photon source • Open BrachyPrimaryGeneratorAction in the editor • Follow the guided tour by Susanna

  19. Exercise: model a source spectrum • Description of the spectrum • Guidance • Change in the BrachyPrimaryGeneratorAction • Introduce an array (my array) with 3 cells(corr.3probabilities) in the constructor • In the GeneratePrimaries method: • Solution Brachy5 To be implemented ! G4UniformRand() returns a number between 0 and 1 G4double random=G4UniformRand(); G4double sum=0; G4int i=0; while(sum<random) {sum +=myarray[i]; i++;} ……….. Generation of Random numbers

  20. What you learned today • The design of a basic user application • The mandatory user classes • The optional user classes • How to describe materials • How to model a simple geometry • How to implement a DetectorConstruction • How to visualisegeometry and tracks • How to control features from the user interface • How to model the primary generator • How to implement a UserPrimaryGeneratorAction

  21. Part 2 • Use case: calculate the energy deposit in a phantom from a brachytherapy seed • Use case: generate physics interactions in the phantom • Exercise: select alternative physics processes • Exercise: modify the production thresholds • Use case: collect the energy deposit in the phantom • Exercise: model the hits as consisting of the energy deposited in each voxel and the coordinates of the voxel centre • Use case: produce a 1-D histogram with the energy deposited in the phantom • Exercise: produce a 2-D histogram with the dose distribution in the phantom

  22. Generate physics interactions • Open BrachyPhysicsList in the editor • Follow the guided tour by Susanna

  23. Exercise: select alternative processes • Replace LowEnergy processes with standard ones • For gamma and e- • Change the production thresholds to 0.1mm for all the particles involved • Guidance • User Guide: for Application Developers • Physics ReferenceManual • standard processes in geant4/source/processes/electromagnetic/standard/ • Solution Brachy6

  24. Collect energy deposited in the phantom • Open BrachyROGeometry, BrachyHit… in the editor • Follow the guided tour by Susanna Example :Brachy7 This is the Geant4/examples/advanced/brachytherapy

  25. Exercise: hits consisting of Edep, x,y,z • Add Edep • Associate Edep to the voxel coordinates • Guidance • In BrachyEventAction • Take inspiration from • Solution Brachy8 i=((*CHC)[h])->GetZID(); k=((*CHC)[h])->GetXID();

  26. Produce a 1-D histogram • Open BrachyAnalysis, Brachy… in the editor • Follow the guided tour by Susanna

  27. Exercise: add a 2-D histogram • Produce a 2-D histogram with the dose distribution in the phantom • Guidance • x, z, Edep in BrachyEventAction • Edep is the weight • Introduce 2-D histogram in BrachyAnalysisManager • Similar implementation as in 1-D histogram • Solution Brachy9

  28. What you learned today • How to select particles, physics processes and production thresholds • How to implement a PhysicsList • How to model the detector response • read-out geometry, hits • How to produce histograms in your simulation applications

More Related