Geant4 Version: 11.1.3 through OpenTOPAS v4.0
Operating System: Linux
Hello G4 community,
I am currently working on MC simulations of a Faraday Cup using OpenTOPAS as wrapper code. My goal is to study how varying the shielding electric field intensity affects the charge collection efficiency of the detector. To do this, I have implemented and validated custom C++ code that integrates mapped electric fields into the simulations. I then run simulations with different field intensities to evaluate their impact on the total collected charge in the absorber block.
From experimental measurements, I expect to see approximately a 10% difference between the charge collected at minimum and maximum field values. However, in my simulations I observe only about a 0.3% variation.
One possible explanation is that the effect is dominated by very low-energy secondary electrons generated at the entrance window or the surface of the absorber block. I have tried lowering production cuts and energy thresholds, as well as testing different low-energy physics models, but none of these changes have produced a significant difference. This is the physics configuration I am using right now:
d:Ph/Default/CutForElectron = 0.0001 mm
d:Ph/Default/CutForPositron = 0.0001 mm
d:Ph/Default/CutForProton = 0.0001 mm
d:Ph/Default/CutForGamma = 0.0001 mm
d:Ph/Default/CutForAlpha = 0.0001 mm
b:Ph/Default/PIXE = "true"
b:Ph/Default/Auger = "true"
b:Ph/Default/AugerCascade = "true"
b:Ph/Default/Fluorescence = "true"
i:Ph/Default/EMBins = 220
d:Ph/Default/EMRangeMin = 10.0 eV
d:Ph/Default/LowestElectronEnergy = 10.0 eV
d:Ph/Default/SetProductionCutLowerEdge = 1.0 eV
sv:Ph/Default = 6 "g4em-penelope" "g4h-phy_QGSP_BIC_HP" "g4decay" "g4ion-binarycascade" "g4h-elastic_HP" "g4stopping"
I have listed a simplified parameter file below. Could you please provide any insights into what might be causing this discrepancy or suggest further settings I should explore?
Thank you in advance for your help!
Cheers,
Marc
`# File: input.tps
b:Ge/QuitIfOverlapDetected = "true"
b:Ts/PauseBeforeQuit = "false"
i:Ts/RandomSeed = 42
i:Ts/NumberOfThreads = 0
d:Ph/Default/CutForElectron = 0.0001 mm
d:Ph/Default/CutForPositron = 0.0001 mm
d:Ph/Default/CutForProton = 0.0001 mm
d:Ph/Default/CutForGamma = 0.0001 mm
d:Ph/Default/CutForAlpha = 0.0001 mm
b:Ph/Default/PIXE = "true"
b:Ph/Default/Auger = "true"
b:Ph/Default/AugerCascade = "true"
b:Ph/Default/Fluorescence = "true"
i:Ph/Default/EMBins = 220
d:Ph/Default/EMRangeMin = 10.0 eV
d:Ph/Default/LowestElectronEnergy = 10.0 eV
d:Ph/Default/SetProductionCutLowerEdge = 1.0 eV
sv:Ph/Default = 6 "g4em-penelope" "g4h-phy_QGSP_BIC_HP" "g4decay" "g4ion-binarycascade" "g4h-elastic_HP" "g4stopping"
b:Ts/UseQt = "false"
s:Ge/World/Material = "G4_AIR"
sc:Ge/World/DrawingStyle = "WireFrame"
sc:Ge/World/Color = "white"
s:Ge/FieldContainer/Type = "TsBox"
s:Ge/FieldContainer/Parent = "World"
s:Ge/FieldContainer/Material = Ge/World/Material
d:Ge/FieldContainer/HLX = 5.0 m
d:Ge/FieldContainer/HLY = 5.0 m
d:Ge/FieldContainer/HLZ = 5.0 m
d:Ge/FieldContainer/TransX = 0 mm
d:Ge/FieldContainer/TransY = 0 mm
d:Ge/FieldContainer/TransZ = 0 mm
d:Ge/FieldContainer/RotX = 0 deg
d:Ge/FieldContainer/RotY = 0 deg
d:Ge/FieldContainer/RotZ = 0 deg
sc:Ge/FieldContainer/Color = "grey220"
sc:Ge/FieldContainer/DrawingStyle = "WireFrame"
s:Ge/VacuumWindow/Type = "TsCylinder"
s:Ge/VacuumWindow/Parent = "FieldContainer"
s:Ge/VacuumWindow/Material = "Aluminum"
d:Ge/VacuumWindow/RMax = 71.5 mm
d:Ge/VacuumWindow/HL = 0.05 mm
d:Ge/VacuumWindow/TransX = 0 mm
d:Ge/VacuumWindow/TransY = 0 mm
d:Ge/VacuumWindow/TransZ = -0.05 mm
d:Ge/VacuumWindow/RotX = 0 deg
d:Ge/VacuumWindow/RotY = 0 deg
d:Ge/VacuumWindow/RotZ = 0 deg
sc:Ge/VacuumWindow/Color = "grey220"
sc:Ge/VacuumWindow/DrawingStyle = "Solid"
s:Ge/Vacuum/Type = "TsCylinder"
s:Ge/Vacuum/Parent = "FieldContainer"
s:Ge/Vacuum/Material = "Vacuum"
d:Ge/Vacuum/RMax = 74.0 mm
d:Ge/Vacuum/HL = 196.0 mm
d:Ge/Vacuum/TransX = 0 mm
d:Ge/Vacuum/TransY = 0 mm
d:Ge/Vacuum/TransZ = -196.1 mm
d:Ge/Vacuum/RotX = 0 deg
d:Ge/Vacuum/RotY = 0 deg
d:Ge/Vacuum/RotZ = 0 deg
sc:Ge/Vacuum/Color = "lightblue"
sc:Ge/Vacuum/DrawingStyle = "WireFrame"
s:Ge/Mantle/Type = "TsCylinder"
s:Ge/Mantle/Parent = "FieldContainer"
s:Ge/Mantle/Material = "Steel"
d:Ge/Mantle/RMax = 79.0 mm
d:Ge/Mantle/RMin = 74.0 mm
d:Ge/Mantle/HL = 196.05 mm
d:Ge/Mantle/TransX = 0 mm
d:Ge/Mantle/TransY = 0 mm
d:Ge/Mantle/TransZ = -196.05 mm
d:Ge/Mantle/RotX = 0 deg
d:Ge/Mantle/RotY = 0 deg
d:Ge/Mantle/RotZ = 0 deg
sc:Ge/Mantle/Color = "brown"
sc:Ge/Mantle/DrawingStyle = "FullWireFrame"
s:Ge/GuardRing/Type = "TsCylinder"
s:Ge/GuardRing/Parent = "Vacuum"
s:Ge/GuardRing/Material = "Aluminum"
d:Ge/GuardRing/RMax = 67.2 mm
d:Ge/GuardRing/RMin = 63.5 mm
d:Ge/GuardRing/HL = 77.5 mm
d:Ge/GuardRing/TransX = 0 mm
d:Ge/GuardRing/TransY = 0 mm
d:Ge/GuardRing/TransZ = 86.5 mm
d:Ge/GuardRing/RotX = 0 deg
d:Ge/GuardRing/RotY = 0 deg
d:Ge/GuardRing/RotZ = 0 deg
sc:Ge/GuardRing/Color = "red"
sc:Ge/GuardRing/DrawingStyle = "FullWireFrame"
s:Ge/AbsorberBlockWalls/Type = "TsCylinder"
s:Ge/AbsorberBlockWalls/Parent = "Vacuum"
s:Ge/AbsorberBlockWalls/Material = "Brass"
d:Ge/AbsorberBlockWalls/RMax = 67.2 mm
d:Ge/AbsorberBlockWalls/RMin = 63.5 mm
d:Ge/AbsorberBlockWalls/HL = 50.0 mm
d:Ge/AbsorberBlockWalls/TransX = 0 mm
d:Ge/AbsorberBlockWalls/TransY = 0 mm
d:Ge/AbsorberBlockWalls/TransZ = -46.0 mm
d:Ge/AbsorberBlockWalls/RotX = 0 deg
d:Ge/AbsorberBlockWalls/RotY = 0 deg
d:Ge/AbsorberBlockWalls/RotZ = 0 deg
sc:Ge/AbsorberBlockWalls/Color = "orange"
sc:Ge/AbsorberBlockWalls/DrawingStyle = "Solid"
s:Ge/AbsorberBlockSolidCollector/Type = "TsCylinder"
s:Ge/AbsorberBlockSolidCollector/Parent = "Vacuum"
s:Ge/AbsorberBlockSolidCollector/Material = "Brass"
d:Ge/AbsorberBlockSolidCollector/RMax = 67.2 mm
d:Ge/AbsorberBlockSolidCollector/HL = 50.0 mm
d:Ge/AbsorberBlockSolidCollector/TransX = 0 mm
d:Ge/AbsorberBlockSolidCollector/TransY = 0 mm
d:Ge/AbsorberBlockSolidCollector/TransZ = -146.00000000000003 mm
d:Ge/AbsorberBlockSolidCollector/RotX = 0 deg
d:Ge/AbsorberBlockSolidCollector/RotY = 0 deg
d:Ge/AbsorberBlockSolidCollector/RotZ = 0 deg
sc:Ge/AbsorberBlockSolidCollector/Color = "orange"
sc:Ge/AbsorberBlockSolidCollector/DrawingStyle = "Solid"
s:Sc/AbsorberBlockSolidCollector__charge_all/Quantity = "Charge"
s:Sc/AbsorberBlockSolidCollector__charge_all/Component = "AbsorberBlockSolidCollector"
sv:Sc/AbsorberBlockSolidCollector__charge_all/Report = 2 "sum" "variance"
s:Sc/AbsorberBlockSolidCollector__charge_all/OutputFile = "AbsorberBlockSolidCollector__charge_all"
s:Sc/AbsorberBlockSolidCollector__charge_all/OutputFileType = "csv"
s:Sc/AbsorberBlockSolidCollector__charge_all/IfOutputFileAlreadyExists = "Overwrite"
s:Sc/AbsorberBlockWalls__charge_all/Quantity = "Charge"
s:Sc/AbsorberBlockWalls__charge_all/Component = "AbsorberBlockWalls"
sv:Sc/AbsorberBlockWalls__charge_all/Report = 2 "sum" "variance"
s:Sc/AbsorberBlockWalls__charge_all/OutputFile = "AbsorberBlockWalls__charge_all"
s:Sc/AbsorberBlockWalls__charge_all/OutputFileType = "csv"
s:Sc/AbsorberBlockWalls__charge_all/IfOutputFileAlreadyExists = "Overwrite"
s:Sc/GuardRing__charge_all/Quantity = "Charge"
s:Sc/GuardRing__charge_all/Component = "GuardRing"
sv:Sc/GuardRing__charge_all/Report = 2 "sum" "variance"
s:Sc/GuardRing__charge_all/OutputFile = "GuardRing__charge_all"
s:Sc/GuardRing__charge_all/OutputFileType = "csv"
s:Sc/GuardRing__charge_all/IfOutputFileAlreadyExists = "Overwrite"
s:Ge/FieldContainer/Field = "ElectricFieldMap"
s:Ge/FieldContainer/ElectricField3DTable = "field_-1000V.csv"
s:Ge/SourceOrigin/Parent = "FieldContainer"
s:Ge/SourceOrigin/Type = "Group"
d:Ge/SourceOrigin/TransX = 0.0 mm
d:Ge/SourceOrigin/TransY = 0.0 mm
d:Ge/SourceOrigin/TransZ = 478.0 mm
d:Ge/SourceOrigin/RotX = 0.0 deg
d:Ge/SourceOrigin/RotY = 180.0 deg
d:Ge/SourceOrigin/RotZ = 0.0 deg
s:So/Source/Component = "SourceOrigin"
s:So/Source/BeamParticle = "proton"
s:So/Source/Type = "emittance"
s:So/Source/Distribution = "bigaussian"
d:So/Source/BeamEnergy = 70.939 MeV
u:So/Source/BeamEnergySpread = 0.777402
d:So/Source/SigmaX = 4.71598 mm
u:So/Source/SigmaXPrime = 0.0082
d:So/Source/SigmaY = 3.91972 mm
u:So/Source/SigmaYPrime = 0.0079
u:So/Source/CorrelationX = -0.095231
u:So/Source/CorrelationY = 0.118743
i:So/Source/NumberOfHistoriesInRun = 100000