1 / 27

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

http://cern.ch/geant4/geant4.html http://www.ge.infn.it/geant4. Brachytherapy exercise. S. Guatelli, CPS Innovations, Knoxville, 13 th -21 st January 2004. Plan of this exercise. Learn the basics of how to build a simple user application Mandatory user classes Optional user actions

minda
Download Presentation

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

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/geant4http://cern.ch/geant4/geant4.htmlhttp://www.ge.infn.it/geant4 Brachytherapy exercise S. Guatelli, CPS Innovations, Knoxville, 13th -21st January 2004

  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. 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 define a radioactive source in a phantom • The user shall be able to define initial position, direction and energy spectra of primary particles • The user shall be able to change the absorber material of the phantom • The user shall be able to define electrons, positrons, photons • The user shall be able to define the electromagnetic processes involved • 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 in 1. mm wide voxels • The user shall be able to visualise the geometry involved and the trajectories of the particles

  4. OOAD

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

  6. How to run • Define necessary environment variables • source setup.csh • Define analysis • setenv G4ANALYSIS_USE 1 • How to compile and link • gmake • How to run • $G4WORKDIR/bin/Linux/Brachy Default macro :VisualisationMacro.mac

  7. Part 1 Use case: model a radioactive source in 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 monochromatic photons • Exercise: model the spectrum of a 125I source

  8. 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 VisualisationMacro.mac

  9. More about visualisation How to change driver: in VisualisationMacro.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...)

  10. 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

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

  12. 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 Start: brachyExe1

  13. 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 : brachyExe2

  14. Model the source geometry Model a I-125 brachytherapic sourcein brachyExe2 Precise geometry and material model of any type of source Titanium capsule tips Titanium tube Iodium core Golden marker Air Mean gamma energy :28.45keV Titanium tube: Outer radius:0.40mm Half length:1.84mm Iodium core: Inner radius :0 Outer radius: 0.30mm Half length:1.75mm Golden marker: Inner radius :0 Outer radius: 0.085 mm Half length:1.75mm Air: Outer radius:0.35mm half length:1.84mm Titanium capsule tip: Semisphere radius:0.40mm

  15. 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 brachyExe3 Pay attention to overlapping volumes!

  16. Exercise: model a source spectrum • Description of the spectrum • Guidance • In brachyExe3 • Change in the BrachyPrimaryGeneratorAction • Solution brachyExe4

  17. Part 2 Use case: calculate the energy deposit in a phantom due to a radioactive source • 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

  18. Exercise: select alternative e.m. processes In brachyExe4… • Replace LowEnergy processes with standard ones • For gamma and e- • Change the production thresholds to 0.2 mm for all the particles involved • Guidance • Novice Example N02 • User Guide: for Application Developers • Physics ReferenceManual • Solution brachyExe5

  19. Collect the energy deposit in a phantom

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

  21. Analysis How to store information in 1D histograms, in 2D histograms and ntuples

  22. Exercise: add a 2-D histogram • Produce a 2-D histogram with the dose distribution in the phantom • Guidance • In brachyExe6 • Complete the method FillHistogramWithEnergy(…) in BrachyAnalysisManager • Similar implementation as in 1-D histogram • Store the information (x, z, Edep) in the 2D histogram in BrachyEventAction • Edep is the weight • Solution brachyExe7

More Related