Message: Electrons below 1keV Not Logged In (login)
 Next-in-Thread Next-in-Thread
 Next-in-Forum Next-in-Forum

None Electrons below 1keV 

Forum: DNA/Very Low Energy
Date: 29 Nov, 2017
From: Christopher Walker <Christopher Walker>

Hello,
   I am using  geant4-10-02-patch-02 on Ubuntu.

I hope to track electrons down to ~10eV (or even lower). I am using parts of the microelectronics example in association with example B2a (for a sensitive detector). I find that the hits are never below 1 keV. I came across this website which suggests a possible causes and solutions:

https://twiki.cern.ch/twiki/bin/view/Geant4/LoweAtomicDeexcitation

However, the suggested options such as putting this line:
 G4ProductionCutsTable::GetProductionCutsTable()->SetEnergyRange(250*eV, 1*GeV);

in the SetCuts() method of the PhysicsList did not solve the problem.

Also this UI command did not solve it: /process/em/lowestElectronEnergy 10 eV

Using this UI command /cuts/setLowEdge 250 eV

I get the following output: illegal application state -- command refused

Does anyone have any further suggestions ?

Thanks Chris

Inline Depth:
 0 0
 1 1
Add message: (add)

None Re: Electrons below 1keV  by Christopher Walker <Christopher Walker>,   30 Nov, 2017
Re: None Electrons below 1keV (Christopher Walker)
Following on from the similar thread by Helga Holmestad (also posted recently) in this forum category, I tried: /process/em/lowestElectronEnergy 10 eV

The UI command was accepted, but I still do not detect electrons with energy less than about 1 keV. I have also looked through the Geant4-DNA examples and so far found nothing in the code which would cause a sensitive detector to detect electrons at a lower energy.

Thanks Chris

None Re: Electrons below 1keV  by Christopher Walker <Christopher Walker>,   01 Dec, 2017
Re: None Re: Electrons below 1keV (Christopher Walker)
In case anyone is following this thread, I find that the command:
 /process/em/lowestElectronEnergy 10 eV

works in the example TestEm5, but doesn't work in my code which consists of a mixture of the B2a example code and the microelectronics example PhysicsList.

I am now trying to determine what might be the cause, but if anyone has an idea, please let me know !

Thanks Chris

Note Re: Electrons below 1keV  by Helga Holmestad <Helga Holmestad>,   01 Dec, 2017
Re: None Re: Electrons below 1keV (Christopher Walker)
If you show me your inputcode I can take a look

None Re: Electrons below 1keV  by Christopher Walker <Christopher Walker>,   01 Dec, 2017
Re: Note Re: Electrons below 1keV (Helga Holmestad)
Dear Helga,
    Thanks very much for taking a look. I'm afraid I am about to leave work and won't be back at work again until Wednesday next week. However, I will keep a check on my emails and on the forum. However, if I have forgotten a file, then I'm afraid I will have to upload it next week.
Thank you again.
Best Wishes
Chris

   Attachment:
      http://hypernews.slac.stanford.edu/HyperNews/geant4/get/AUX/2017/12/01/07.23-93958-B2ActionInitialization.cc
      http://hypernews.slac.stanford.edu/HyperNews/geant4/get/AUX/2017/12/01/07.23-32479-2aDetectorConstruction.cc
      http://hypernews.slac.stanford.edu/HyperNews/geant4/get/AUX/2017/12/01/07.23-51797-B2aDetectorMessenger.cc
      http://hypernews.slac.stanford.edu/HyperNews/geant4/get/AUX/2017/12/01/07.23-31341-B2EventAction.cc
      http://hypernews.slac.stanford.edu/HyperNews/geant4/get/AUX/2017/12/01/07.23-73932-PrimaryGeneratorAction.cc
      http://hypernews.slac.stanford.edu/HyperNews/geant4/get/AUX/2017/12/01/07.23-38968-B2RunAction.cc
      http://hypernews.slac.stanford.edu/HyperNews/geant4/get/AUX/2017/12/01/07.24-86365-B2TrackerHit.cc
      http://hypernews.slac.stanford.edu/HyperNews/geant4/get/AUX/2017/12/01/07.24-14146-B2TrackerSD.cc
      http://hypernews.slac.stanford.edu/HyperNews/geant4/get/AUX/2017/12/01/07.24-87809-G4ElectronCapture.cc
      http://hypernews.slac.stanford.edu/HyperNews/geant4/get/AUX/2017/12/01/07.24-94283-PhysicsList.cc
      http://hypernews.slac.stanford.edu/HyperNews/geant4/get/AUX/2017/12/01/07.24-3159-exampleB2a.cc
      http://hypernews.slac.stanford.edu/HyperNews/geant4/get/AUX/2017/12/01/07.25-2247-B2ActionInitialization.hh
      http://hypernews.slac.stanford.edu/HyperNews/geant4/get/AUX/2017/12/01/07.25-62963-2aDetectorConstruction.hh
      http://hypernews.slac.stanford.edu/HyperNews/geant4/get/AUX/2017/12/01/07.25-98265-B2aDetectorMessenger.hh
      http://hypernews.slac.stanford.edu/HyperNews/geant4/get/AUX/2017/12/01/07.26-68970-B2EventAction.hh
      http://hypernews.slac.stanford.edu/HyperNews/geant4/get/AUX/2017/12/01/07.26-62986-PrimaryGeneratorAction.hh
      http://hypernews.slac.stanford.edu/HyperNews/geant4/get/AUX/2017/12/01/07.26-5628-B2RunAction.hh
      http://hypernews.slac.stanford.edu/HyperNews/geant4/get/AUX/2017/12/01/07.26-29484-B2TrackerHit.hh
      http://hypernews.slac.stanford.edu/HyperNews/geant4/get/AUX/2017/12/01/07.26-79381-B2TrackerSD.hh
      http://hypernews.slac.stanford.edu/HyperNews/geant4/get/AUX/2017/12/01/07.26-75877-G4ElectronCapture.hh
      http://hypernews.slac.stanford.edu/HyperNews/geant4/get/AUX/2017/12/01/07.27-47008-PhysicsList.hh

Note Re: Electrons below 1keV  by Helga Holmestad <Helga Holmestad>,   01 Dec, 2017
Re: None Re: Electrons below 1keV (Christopher Walker)
Can you also send the inputfile, that is the .mac file where you write the command to set the lower energy limit

None Re: Electrons below 1keV  by Christopher Walker <Christopher Walker>,   02 Dec, 2017
Re: Note Re: Electrons below 1keV (Helga Holmestad)
Dear Helga,
   My .mac file is below. Please remember that I compiled against geant4.10.02.p02 
The /cuts/setLowEdge command only works before the /run/initialize, but neither this command or the later /process/em command seem to have an effect on the lowest energy that I detect.
Best Wishes
Chris

# Macro file for example B2
# 
# Can be run in batch, without graphic
# or interactively: Idle> /control/execute run1.mac
#
# Change the default number of workers (in multi-threading mode) 
#/run/numberOfWorkers 4
#
# Initialize kernel
/cuts/setLowEdge 250 eV

/run/initialize

#
# Default kinematics: 
# proton 3 GeV in direction (0.,0.,1.)
# 1 event with tracking/verbose
#
#/tracking/verbose 1
#/run/beamOn 1
#
# 1 event with printing hits
#
/tracking/verbose 0

/hits/verbose 2

#/run/beamOn 1

#
# set target and chamber material
#
#/B2/det/setTargetMaterial G4_WATER
#/B2/det/setChamberMaterial G4_Ar
#/run/beamOn 3
# 
# set a magnetic field and max allowed step length
# 3 event with printing hits
#
#/globalField/verbose 1
#/globalField/setValue 0.2 0 0 tesla
#/B2/det/stepMax 1.0 mm
#/gun/energy 0.3 GeV
#/run/beamOn 3
#
# electron 300 MeV in the direction (0.,0.,1.)
# 3 event with detailed printing
#
/process/em/lowestElectronEnergy 10 eV

/gun/position 0. 0. -100. um

/particle/select e-

/gun/energy 2 keV

/run/beamOn 100

None Re: Electrons below 1keV  by Christopher Walker <Christopher Walker>,   02 Dec, 2017
Re: None Re: Electrons below 1keV (Christopher Walker)
Further to my last message, I have been investigating a bit more.

The /process/em command to set the lowest electron energy is controlled by the class G4EmParameters. I see that this class is used by a number of other Physics Model/List classes, but not the ones for the Microelectronics Physics example. I guess this is the reason why I cannot change the lowest electron energy using the /process/em command.

I will look into the Physics classes that the Microelectonics model uses to see if the model can be "simply" modified to allow use of sensitive detectors at low energies. Evidently the model generates electrons at low energies...

Best Wishes Chris

Idea Re: Electrons below 1keV  by Helga Holmestad <Helga Holmestad>,   05 Dec, 2017
Re: None Re: Electrons below 1keV (Christopher Walker)
Hi I tried using the physics list from your code. And I am able to track particles down to whatever low value I set in the inputfile. In order to actully see them I had to set the defaultCutValue really small. You can try 0.01nm and see if you see the low energy electronds then.

None Re: Electrons below 1keV  by Christopher Walker <Christopher Walker>,   06 Dec, 2017
Re: Idea Re: Electrons below 1keV (Helga Holmestad)
Dear Helga,
    Thankyou for your efforts. I can also see electrons down to very low energy, but only by switching on verbose settings. 
I have also managed to create a root file by outputting tracking events using the AnalysisManager class. 
However, what I would really like to do is to use a sensitive detector and detect the low energy electrons in such a detector. Did you manage to do this? 
My detector still only sees electrons above 1 keV (I did as you suggested and changed the SetCuts value to 0.01nm).

Best Wishes Chris

Question Re: Electrons below 1keV  by Michael H. Kelsey <Michael H. Kelsey>,   06 Dec, 2017
Re: None Re: Electrons below 1keV (Christopher Walker)
On Wed, 06 Dec 2017 12:15:36 GMT, Christopher Walker wrote:
> Thank you for your efforts. I can also see electrons down to very low energy, but only by switching on verbose settings. 
> I have also managed to create a root file by outputting tracking events using the AnalysisManager class. 
> However, what I would really like to do is to use a sensitive detector and detect the low energy electrons in such a detector. Did you manage to do this? 
> My detector still only sees electrons above 1 keV (I did as you suggested and changed the SetCuts value to 0.01nm).

Sorry to jump in late on this. If you can see the low energy electrons in the tracking verbose output, then your sensitive detector must be able to see them as well. The SD is passed every step of every track, just as the verbose output sees it. Is there a chance that your SD includes a cut on either energy or particle type? Have you put in at the very first line of ProcessHits a simple cout statement to print the particle name and energy?

  -- Michael Kelsey

None Re: Electrons below 1keV  by Christopher Walker <Christopher Walker>,   10 Dec, 2017
Re: Question Re: Electrons below 1keV (Michael H. Kelsey)
Hi Michael and Helga,
    thanks for your help on this. I had been thinking that it was a problem with the PhysicsList, so I replaced the Microelectronics example PhysicsList with another and then I started to detect electrons below 1 keV. Then I saw your messages and I realised that it shouldn't be anything to do with the PhysicsList, so I put the original PhysicsList back and I still see the low energy electrons. Hence I am somewhat mystified as to what the problem was before.
   At any rate, I seem to have made some progress over the weekend, but now I must return to do some experimental work, so I my Geant4 efforts will have to be cut back for a little while.

Thank you again. Chris

Note Re: Electrons below 1keV  by Helga Holmestad <Helga Holmestad>,   06 Dec, 2017
Re: None Re: Electrons below 1keV (Christopher Walker)
Hi When I tried to run your program it ended with segfault after a few steps, therefore I tested by replacing the physics list in a small test program I have. In my sensitive detector I see the low energy particles.

 Add Message Add Message
to: "Electrons below 1keV"

 Subscribe Subscribe

This site runs SLAC HyperNews version 1.11-slac-98, derived from the original HyperNews