Presentation is loading. Please wait.

Presentation is loading. Please wait.

Alex Howard Imperial College Geant4 Users Workshop, CERN, 13 th November 2002 LowE EM PartII 1 Low Energy Electromagnetic Physics PART II Alex Howard.

Similar presentations


Presentation on theme: "Alex Howard Imperial College Geant4 Users Workshop, CERN, 13 th November 2002 LowE EM PartII 1 Low Energy Electromagnetic Physics PART II Alex Howard."— Presentation transcript:

1

2 Alex Howard Imperial College Geant4 Users Workshop, CERN, 13 th November 2002 LowE EM PartII 1 Low Energy Electromagnetic Physics PART II Alex Howard Imperial College, UK a.s.howard@ic.ac.uk on behalf of the Low Energy Electromagnetic Working Group Geant4 User Workshop CERN, 11-15 November 2002 http://www.ge.infn.it/geant4/training/

3 Alex Howard Imperial College Geant4 Users Workshop, CERN, 13 th November 2002 LowE EM PartII 2 Plan of the tutorial Lecture 1 Overview Software process OOAD Physics –Electrons and photons –Hadrons and ions –Atomic relaxation –Polarisation Lecture 2 How to use LowE processes Examples Experimental applications Outlook

4 Alex Howard Imperial College Geant4 Users Workshop, CERN, 13 th November 2002 LowE EM PartII 3 OutlineOutline 1)How to use Geant4 LowE electromagnetic processes 2)Where to find examples 3)A selection of real-life applications 1)Space Physics – X-Rays 2)Space Physics – Proof Mass Charging 3)Medical Physics 4)Dark Matter 4)Outlook 1)New Physics 2)Performance Optimisation 5)Conclusions

5 Alex Howard Imperial College Geant4 Users Workshop, CERN, 13 th November 2002 LowE EM PartII 4 Low Energy Em Physics Implementation: Compton scattering Rayleigh scattering Photoelectric effect Pair production Bremsstrahlung Ionisation Polarised Compton + atomic relaxation –fluorescence –Auger effect following photoelectric effect and ionisation The following code is required in yourPhysicsList.cc [All code has been lifted from the relevant advanced examples]

6 Alex Howard Imperial College Geant4 Users Workshop, CERN, 13 th November 2002 LowE EM PartII 5brachytherapybrachytherapy Low energy electromagnetic processes for precise calculation of dose distribution // gamma #include "G4LowEnergyRayleigh.hh" #include "G4LowEnergyPhotoElectric.hh" #include "G4LowEnergyCompton.hh" #include "G4LowEnergyGammaConversion.hh" // e- #include "G4LowEnergyIonisation.hh" #include "G4LowEnergyBremsstrahlung.hh" // e+ #include "G4eIonisation.hh" #include "G4eBremsstrahlung.hh" #include "G4eplusAnnihilation.hh"

7 Alex Howard Imperial College Geant4 Users Workshop, CERN, 13 th November 2002 LowE EM PartII 6 void BrachyPhysicsList::ConstructEM() { theParticleIterator->reset(); while( (*theParticleIterator)() ){ G4ParticleDefinition* particle = theParticleIterator->value(); G4ProcessManager* pmanager = particle->GetProcessManager(); G4String particleName = particle->GetParticleName(); //processes lowePhot = new G4LowEnergyPhotoElectric("LowEnPhotoElec"); loweIon = new G4LowEnergyIonisation("LowEnergyIoni"); loweBrem = new G4LowEnergyBremsstrahlung("LowEnBrem"); if (particleName == "gamma") { //gamma pmanager->AddDiscreteProcess(new G4LowEnergyRayleigh); pmanager->AddDiscreteProcess(lowePhot); pmanager->AddDiscreteProcess(new G4LowEnergyCompton); pmanager->AddDiscreteProcess(new G4LowEnergyGammaConversion); Brachytherapy Implementation } else if (particleName == "e-") { //electron pmanager->AddProcess(new G4MultipleScattering, -1, 1,1); pmanager->AddProcess(loweIon, -1, 2,2); pmanager->AddProcess(loweBrem, -1,-1,3); } else if (particleName == "e+") { //positron pmanager->AddProcess(new G4MultipleScattering, -1, 1,1); pmanager->AddProcess(new G4eIonisation, -1, 2,2); pmanager->AddProcess(new G4eBremsstrahlung, -1,-1,3); pmanager->AddProcess(new G4eplusAnnihilation, 0,-1,4); }

8 Alex Howard Imperial College Geant4 Users Workshop, CERN, 13 th November 2002 LowE EM PartII 7 X-ray fluorescence Physics: Low Energy processes, atomic relaxation #include "G4LowEnergyCompton.hh" #include "G4LowEnergyGammaConversion.hh" #include "G4LowEnergyPhotoElectric.hh" #include "G4LowEnergyRayleigh.hh" // e+ #include "G4MultipleScattering.hh" #include "G4eIonisation.hh" #include "G4eBremsstrahlung.hh" #include "G4eplusAnnihilation.hh" #include "G4LowEnergyIonisation.hh" #include "G4LowEnergyBremsstrahlung.hh" #include "G4hLowEnergyIonisation.hh" sample detector beam Scattered photons Fe lines GaAs lines

9 Alex Howard Imperial College Geant4 Users Workshop, CERN, 13 th November 2002 LowE EM PartII 8 void XrayFluoPhysicsList::ConstructEM() { theParticleIterator->reset(); while( (*theParticleIterator)() ){ G4ParticleDefinition* particle = theParticleIterator->value(); G4ProcessManager* pmanager = particle->GetProcessManager(); G4String particleName = particle->GetParticleName(); if (particleName == "gamma") { // gamma pmanager->AddDiscreteProcess(new G4LowEnergyCompton); LePeprocess = new G4LowEnergyPhotoElectric(); //LePeprocess->ActivateAuger(false); //LePeprocess->SetCutForLowEnSecPhotons(10000 * keV); //LePeprocess->SetCutForLowEnSecElectrons(10000 * keV); pmanager->AddDiscreteProcess(LePeprocess); pmanager->AddDiscreteProcess(new G4LowEnergyRayleigh); } Process Registration X-ray Fluor else if (particleName == "e-") { //electron pmanager->AddProcess(new G4MultipleScattering,-1, 1,1); LeIoprocess = new G4LowEnergyIonisation(); //LeIoprocess->ActivateAuger(false); //LeIoprocess->SetCutForLowEnSecPhotons(10000 keV); //LeIoprocess->SetCutForLowEnSecElectrons(10000 keV); pmanager->AddProcess(LeIoprocess, -1, 2, 2); LeBrprocess = new G4LowEnergyBremsstrahlung(); pmanager->AddProcess(LeBrprocess, -1, -1, 3); } else if (particleName == "e+") { //positron pmanager->AddProcess(new G4MultipleScattering,-1, 1,1); pmanager->AddProcess(new G4eIonisation, -1, 2,2); pmanager->AddProcess(new G4eBremsstrahlung, -1,-1,3); pmanager->AddProcess(new G4eplusAnnihilation, 0,-1,4); } else if (particleName == "proton") { //proton pmanager->AddProcess(new G4MultipleScattering,-1,1,1); pmanager->AddProcess(new G4hLowEnergyIonisation,-1, 2,2); } else if ( particleName == "alpha" ) { pmanager->AddProcess(new G4MultipleScattering,-1,1,1); G4hLowEnergyIonisation* iIon = new G4hLowEnergyIonisation() ; pmanager->AddProcess(iIon,-1,2,2); }

10 Alex Howard Imperial College Geant4 Users Workshop, CERN, 13 th November 2002 LowE EM PartII 9 Underground physics LXe GXe PMT mirror source // Electromagnetic Processes // all charged particles // gamma #include "G4LowEnergyRayleigh.hh" #include "G4LowEnergyPhotoElectric.hh" #include "G4LowEnergyCompton.hh" #include "G4LowEnergyGammaConversion.hh" // e- #include "G4LowEnergyIonisation.hh" #include "G4LowEnergyBremsstrahlung.hh" // e+ #include "G4eIonisation.hh" #include "G4eBremsstrahlung.hh" #include "G4eplusAnnihilation.hh" // alpha and GenericIon and deuterons, triton, He3: #include "G4hLowEnergyIonisation.hh" #include "G4EnergyLossTables.hh" //muon: #include "G4MuIonisation.hh" #include "G4MuBremsstrahlung.hh" #include "G4MuPairProduction.hh" #include "G4MuonMinusCaptureAtRest.hh"

11 Alex Howard Imperial College Geant4 Users Workshop, CERN, 13 th November 2002 LowE EM PartII 10 Process Creation - DMX void DMXPhysicsList::ConstructEM() { // processes G4MultipleScattering* aMultipleScattering = new G4MultipleScattering(); G4LowEnergyPhotoElectric* lowePhot = new G4LowEnergyPhotoElectric(); G4LowEnergyIonisation* loweIon = new G4LowEnergyIonisation(); G4LowEnergyBremsstrahlung* loweBrem = new G4LowEnergyBremsstrahlung(); // fluorescence: specific cuts for flourescence // from photons, electrons and bremsstrahlung photons G4double fluorcut = 250*eV; lowePhot->SetCutForLowEnSecPhotons(fluorcut); loweIon ->SetCutForLowEnSecPhotons(fluorcut); loweBrem->SetCutForLowEnSecPhotons(fluorcut);

12 Alex Howard Imperial College Geant4 Users Workshop, CERN, 13 th November 2002 LowE EM PartII 11 Hadron Ionisation – Choosing a model G4hLowEnergyIonisation* ahadronLowEIon = new G4hLowEnergyIonisation(); ahadronLowEIon->SetNuclearStoppingPowerModel("ICRU_R49") ; ahadronLowEIon->SetNuclearStoppingOn() ; // ahadronLowEIon->SetElectronicStoppingPowerModel // (G4GenericIon::GenericIonDefinition(), "ICRU_R49p") ; // ahadronLowEIon->SetElectronicStoppingPowerModel // (G4Proton::ProtonDefinition(), "ICRU_R49p") ; // Switch off the Barkas and Bloch corrections ahadronLowEIon->SetBarkasOff(); // Switch off hadron-induced fluorescence (for now) ahadronLowEIon->SetFluorescence(false); // NOTE: the same G4hLowEnergyIonisation process is applied to all hadrons, which need not be the case!

13 Alex Howard Imperial College Geant4 Users Workshop, CERN, 13 th November 2002 LowE EM PartII 12 theParticleIterator->reset(); while( (*theParticleIterator)() ){ G4ParticleDefinition* particle = theParticleIterator->value(); G4ProcessManager* pmanager = particle->GetProcessManager(); G4String particleName = particle->GetParticleName(); G4String particleType = particle->GetParticleType(); G4double particleCharge = particle->GetPDGCharge(); // gamma if (particleName == "gamma") { pmanager->AddDiscreteProcess(new G4LowEnergyRayleigh()); pmanager->AddDiscreteProcess(lowePhot); pmanager->AddDiscreteProcess(new G4LowEnergyCompton()); pmanager->AddDiscreteProcess(new G4LowEnergyGammaConversion()); } Attaching Processes to Particles:

14 Alex Howard Imperial College Geant4 Users Workshop, CERN, 13 th November 2002 LowE EM PartII 13 { // electron else if (particleName == "e-") { // process ordering: AddProcess(name, at rest, along step, post step) // -1 = not implemented, then ordering pmanager->AddProcess(aMultipleScattering, -1, 1, 1); pmanager->AddProcess(loweIon, -1, 2, 2); pmanager->AddProcess(loweBrem, -1,-1, 3); } // positron else if (particleName == "e+") { pmanager->AddProcess(aMultipleScattering, -1, 1, 1); pmanager->AddProcess(new G4eIonisation(), -1, 2, 2); pmanager->AddProcess(new G4eBremsstrahlung(), -1,-1, 3); pmanager->AddProcess(new G4eplusAnnihilation(), 0,-1, 4); } Attaching Processes to Particles:

15 Alex Howard Imperial College Geant4 Users Workshop, CERN, 13 th November 2002 LowE EM PartII 14 // muons else if( particleName == "mu+" || particleName == "mu-" ) { pmanager->AddProcess(aMultipleScattering, -1, 1, 1); pmanager->AddProcess(new G4MuIonisation(), -1, 2, 2); pmanager->AddProcess(new G4MuBremsstrahlung(), -1,-1, 3); pmanager->AddProcess(new G4MuPairProduction(), -1,-1, 4); if( particleName == "mu-" ) pmanager->AddProcess(new G4MuonMinusCaptureAtRest(), 0,-1,-1); } // charged hadrons else if (particleName == "proton" || particleName == "alpha" || particleName == "deuteron" || particleName == "triton" || particleName == "He3" || particleName == "GenericIon" || (particleType == "nucleus" && particleCharge != 0)) Attaching Processes to Particles:

16 Alex Howard Imperial College Geant4 Users Workshop, CERN, 13 th November 2002 LowE EM PartII 15 { // OBJECT may be dynamically created as either a GenericIon or nucleus pmanager->AddProcess(aMultipleScattering, -1, 1, 1); pmanager->AddProcess(ahadronLowEIon, -1, 2, 2); } // all other charged particles except geantino else if ((!particle->IsShortLived()) && (particleCharge != 0.0) && (particleName != "chargedgeantino")) { pmanager->AddProcess(aMultipleScattering, -1, 1, 1); pmanager->AddProcess(ahadronLowEIon, -1, 2, 2); } } } Attaching Processes to Particles:

17 Alex Howard Imperial College Geant4 Users Workshop, CERN, 13 th November 2002 LowE EM PartII 16 Setting Energy Cuts: //special for low energy physics G4double lowlimit=250*eV; G4Gamma ::SetEnergyRange(lowlimit,100*GeV); G4Electron::SetEnergyRange(lowlimit,100*GeV); G4Positron::SetEnergyRange(lowlimit,100*GeV);

18 Alex Howard Imperial College Geant4 Users Workshop, CERN, 13 th November 2002 LowE EM PartII 17 Validation of Low Energy Physics – Some (biased) examples Two examples of Low Energy Physics Implementation and Validation that I have experience in: UNDERGROUND (DARK MATTER) SIMULATION – DMX –Low energy gammas, electrons, hadrons and secondary production GRAVITATIONAL WAVE – LISA (Proof Mass Charging) –All electromagnetic processes that can lead to residual charge, –In particular secondary production

19 Alex Howard Imperial College Geant4 Users Workshop, CERN, 13 th November 2002 LowE EM PartII 18 upwards Xe shellPb compton through 

20 Alex Howard Imperial College Geant4 Users Workshop, CERN, 13 th November 2002 LowE EM PartII 19 experimental 241 Am spectrum

21 Alex Howard Imperial College Geant4 Users Workshop, CERN, 13 th November 2002 LowE EM PartII 20 experimental  spectrum

22 Alex Howard Imperial College Geant4 Users Workshop, CERN, 13 th November 2002 LowE EM PartII 21 Time Constant Discrimination Red Curve = AlphasRed Curve = Alphas Blue Curve = GammasBlue Curve = Gammas Experimental Data Geant4 Output

23 Alex Howard Imperial College Geant4 Users Workshop, CERN, 13 th November 2002 LowE EM PartII 22 Geant4 Simulation of Test-Mass Charging in the LISA Mission Very long base-line: 1 million km Very high precision: < 1nm – 1pm (!)

24 Alex Howard Imperial College Geant4 Users Workshop, CERN, 13 th November 2002 LowE EM PartII 23 Physics List EM processes (LowE) Electrons, Gammas, etc Atomic de-excitation Hadrons (no hFluorescence) Secondaries Cuts: (250 eV), 1mm - 5mm Kill e- outside caging

25 Alex Howard Imperial College Geant4 Users Workshop, CERN, 13 th November 2002 LowE EM PartII 24 Results I 52 +e/s 6 +e/s 45 s exposure ~ 10,000,000 events 1 charging event ~ 2,000 events ~ 40,000 events/day/CPU Charging rate (G3 result: 11 +e/s) G4 result: 58 +e/s 2 days in parallel !!!

26 Alex Howard Imperial College Geant4 Users Workshop, CERN, 13 th November 2002 LowE EM PartII 25 Results II (~0.1 um) 250 eV 52 +e/s Cuts 1 um 8.77 keV 41 +e/s 2 um 30.7 keV 40 +e/s 5 um 53.2 keV 42 +e/s Decreasing the production threshold from 10 keV (G3, G4EM) to 250 eV (G4LowE) leads to a ~20% increase of the charging rate! Energy of Primary, MeV

27 Alex Howard Imperial College Geant4 Users Workshop, CERN, 13 th November 2002 LowE EM PartII 26 Other Users – SPACE and Cosmic Ray Cosmic rays, jovian electrons Solar X-rays, e, p Courtesy SOHO EIT AGILE GLAST

28 Alex Howard Imperial College Geant4 Users Workshop, CERN, 13 th November 2002 LowE EM PartII 27 The Future… In progress –Polarised  conversion, photoelectric –More precise angular distributions (Rayleigh, photoelectric, Bremsstrahlung etc.) Foreseen –New models, based on different physics approaches –Processes for positrons –Performance Optimisation and Enhancement Development plan –Driven by user requirements –Schedule compatible with available resources

29 Alex Howard Imperial College Geant4 Users Workshop, CERN, 13 th November 2002 LowE EM PartII 28 To learn more…………: Geant4 Physics Reference Manual Application Developer Guide http://www.ge.infn.it/geant4/lowEConclusionsConclusions Low Energy EM Physics implementation has been demonstrated Its use within actual examples demonstrate Validation with experimental data has been carried out (ongoing) There are still low energy EM physics areas that are being developed Performance optimisation, benchmarking and testing are being initiated.


Download ppt "Alex Howard Imperial College Geant4 Users Workshop, CERN, 13 th November 2002 LowE EM PartII 1 Low Energy Electromagnetic Physics PART II Alex Howard."

Similar presentations


Ads by Google