Main Page

From UCL HEP PBT Wiki

Revision as of 17:35, 2 July 2014 by IlinaMediaWiki (Talk | contribs)
Jump to: navigation, search

Contents

Introduction


This is a tutorial about applications of GEANT4 to medical physics. The GEANT4 is installed on the HEP Linux cluster at UCL. You will need an account on that cluster to be able to use this software, run example tutorials and create your own applications.

Accounts and Registration


Getting a computing account


Apply for a computing account on the HEP Linux cluster by sending e-mail to HEPComputingSupport. In your e-mail you have to state the reason for your application (e.g. medical physics student who will use GEANT4 on the HEP cluster).

You will receive an e-mail from the HEP computing support with your username and password. Now you can log in to the HEP cluster “plus1” via ssh username@plus1.hep.ucl.ac.uk.

Where to get help


You can write to the discussion section.

The basics of GEANT4


GEANT4 is a toolkit for simulating the passage of particles through matter. The user creates his/her own simulation application using GEANT4 tools. The tools are base classes. There are eight base classes.

  • Three classes are mandatory
G4VUserDetectorConstruction
Describe the experimental setup, geometry and materials
G4VUserPhysicsList
Define particles, physics processes and range cuts
G4UserPrimaryGeneratorAction
Describe particle source, source dimensions, initial position, energy spectrum, angular distributions
  • The rest are optional
G4UserRunAction
Define and store histograms
G4UserEventAction
Event selection and analysis of simulation data
G4UserStackingAction
Customize priority of tracks
G4UserTrackingAction
Decide whether a trajectory should be stored or not
G4UserSteppingAction
Kill, suspend, postpone a track

You can create your own classes which are derived from the base classes. All of them should be registered with the G4RunManager. In function main() which is the skeleton of your simulation code you instantiate G4RunManager and notify it of your mandatory and optional classes.

Basic tutorials


This section includes several basic tutorials:


Monoenergetic photon pencil beam incident on a water cube


  • Introduction

This example shows the dose distribution in water along the incident photon beam. The beam hits the water cube surface and deposits a dose under the surface of the water. The volume of the water cube is divided into voxels. At each voxel the dose contribution from the pencil beams is summed up and yields the total dose along the beam axis.

  • Setting up the environment
Connect to plus1 cluster and create folder PhotonPencilBeam in your area
ssh username@plus1.hep.ucl.ac.uk
cd /home/username/
mkdir PhotonPencilBeam
cd PhotonPencilBeam
Setup GEANT4 environment
source GEANT4 script
  • How to get the code
Copy the code to your area
cp -r /vasileva/BasicExamples/PhotonPencilBeam_source /username/PhotonPencilBeam/
  • How to run the code
Inside /username/PhotonPencilBeam/ create directory
mkdir PhotonPencilBeam_build
Change to this directory and run cmake and make to build the PhotonPencilBeam tutorial
cd PhotonPencilBeam_build
cmake -DGeant4_DIR=/unix/pbt/Software/..../ /username/PhotonPencilBeam_source/
make
  • How to analyze data

Monoenergetic proton pencil beam incident on a water cube


  • Introduction
  • Setting up the environment
  • How to get the code
  • How to run the code
  • How to analyze data
  • Comparison with data from The Clatterbridge Cancer Centre

Proton beam with realistic geometry incident on a water cube


Gaussian beam profile


  • Introduction
  • Setting up the environment
  • How to get the code
  • How to run the code
  • How to analyze data
  • Comparison with data from The Clatterbridge Cancer Centre

Beam profile from phase space files


  • Introduction
  • Setting up the environment
  • How to get the code
  • How to run the code
  • How to analyze data
  • Comparison with data from The Clatterbridge Cancer Centre

Several proton beams with spread out Bragg peaks


  • Introduction
  • Setting up the environment
  • How to get the code
  • How to run the code
  • How to analyze data

Advanced tutorials


Cherenkov simulation


  • Introduction
  • Setting up the environment
  • How to get the code
  • How to run the code
  • How to analyze data

Computed tomography


  • Introduction
  • Setting up the environment
  • How to get the code
  • How to run the code
  • How to analyze data

High-precision dosimetry


  • Introduction
  • Setting up the environment
  • How to get the code
  • How to run the code
  • How to analyze data

Installing GEANT4 software locally


Personal tools