Import Geant4 10.7.0.beta source tree
This commit is contained in:
@@ -74,7 +74,7 @@
|
||||
|
||||
\section Hadr03_s5 HISTOGRAMS
|
||||
|
||||
The test contains 12 built-in 1D histograms, which are managed by
|
||||
The test contains 13 built-in 1D histograms, which are managed by
|
||||
G4AnalysisManager and its Messenger. The histos can be individually
|
||||
activated with the command :
|
||||
/analysis/h1/set id nbBins valMin valMax unit
|
||||
@@ -83,16 +83,17 @@
|
||||
|
||||
- 1 : "kinetic energy of scattered primary particle"
|
||||
- 2 : "kinetic energy of gamma"
|
||||
- 3 : "kinetic energy of neutrons"
|
||||
- 4 : "kinetic energy of protons"
|
||||
- 5 : "kinetic energy of deuterons"
|
||||
- 6 : "kinetic energy of alphas"
|
||||
- 7 : "kinetic energy of nuclei"
|
||||
- 8 : "kinetic energy of mesons"
|
||||
- 9 : "kinetic energy of baryons"
|
||||
- 10 : "Q = Ekin out - Ekin in"
|
||||
- 11 : "Pbalance = mag(P_out - P_in)"
|
||||
- 12 : "atomic mass of nuclei"
|
||||
- 3 : "kinetic energy of e-"
|
||||
- 4 : "kinetic energy of neutrons"
|
||||
- 5 : "kinetic energy of protons"
|
||||
- 6 : "kinetic energy of deuterons"
|
||||
- 7 : "kinetic energy of alphas"
|
||||
- 8 : "kinetic energy of nuclei"
|
||||
- 9 : "kinetic energy of mesons"
|
||||
- 10 : "kinetic energy of baryons"
|
||||
- 11 : "Q = Ekin out - Ekin in"
|
||||
- 12 : "Pbalance = mag(P_out - P_in)"
|
||||
- 13 : "atomic mass of nuclei"
|
||||
|
||||
The histograms are managed by the HistoManager class and its Messenger.
|
||||
The histos can be individually activated with the command :
|
||||
|
||||
@@ -0,0 +1,13 @@
|
||||
#
|
||||
# Macro file for "Hadr03.cc"
|
||||
#
|
||||
/testhadr/det/setIsotopeMat Au195 79 195 19.30 g/cm3
|
||||
/testhadr/det/setSize 100 m
|
||||
#
|
||||
/run/initialize
|
||||
#
|
||||
/gun/particle neutron
|
||||
/gun/energy 1 eV
|
||||
#
|
||||
/run/printProgress 10000
|
||||
/run/beamOn 100000
|
||||
@@ -12,6 +12,17 @@ track of all tags.
|
||||
----------------------------------------------------------
|
||||
* Reverse chronological order (last date on top), please *
|
||||
----------------------------------------------------------
|
||||
|
||||
04-06-20 mma (exhadr03-V10-06-02)
|
||||
- HistoManager, SteppingAction : add plot of e-
|
||||
|
||||
04-05-20 mma (exhadr03-V10-06-01)
|
||||
- GammaNuclearPhysics : add G4LowEGammaNuclearModel
|
||||
- add GammaNuclearPhysicsLEND
|
||||
- modify gamma.mac; add Au196.mac
|
||||
|
||||
30-04-20 mma (exhadr03-V10-06-00)
|
||||
- PhysicsList : add G4HadronPhysicsQGSP_BIC, Shielding, RadioactiveDecay
|
||||
|
||||
03-10-18 mma (exhadr03-V10-04-06)
|
||||
- PhysicsList : add G4HadronElasticPhysicsXS
|
||||
|
||||
@@ -79,18 +79,19 @@
|
||||
where unit is the desired unit for the histo (MeV or keV, etc..)
|
||||
(see the macros xxxx.mac).
|
||||
|
||||
1 "kinetic energy of scattered primary particle"
|
||||
1 "kinetic energy of scattered primary particle"
|
||||
2 "kinetic energy of gamma"
|
||||
3 "kinetic energy of neutrons"
|
||||
4 "kinetic energy of protons"
|
||||
5 "kinetic energy of deuterons"
|
||||
6 "kinetic energy of alphas"
|
||||
7 "kinetic energy of nuclei"
|
||||
8 "kinetic energy of mesons"
|
||||
9 "kinetic energy of baryons"
|
||||
10 "Q = Ekin out - Ekin in"
|
||||
11 "Pbalance = mag(P_out - P_in)"
|
||||
12 "atomic mass of nuclei"
|
||||
3 "kinetic energy of e-"
|
||||
4 "kinetic energy of neutrons"
|
||||
5 "kinetic energy of protons"
|
||||
6 "kinetic energy of deuterons"
|
||||
7 "kinetic energy of alphas"
|
||||
8 "kinetic energy of nuclei"
|
||||
9 "kinetic energy of mesons"
|
||||
10 "kinetic energy of baryons"
|
||||
11 "Q = Ekin out - Ekin in"
|
||||
12 "Pbalance = mag(P_out - P_in)"
|
||||
13 "atomic mass of nuclei"
|
||||
|
||||
The histograms are managed by the HistoManager class and its Messenger.
|
||||
The histos can be individually activated with the command :
|
||||
|
||||
@@ -1,8 +1,5 @@
|
||||
#
|
||||
# Macro file for "Hadr03.cc"
|
||||
# (can be run in batch, without graphic)
|
||||
#
|
||||
# proton 10 MeV; all processes
|
||||
#
|
||||
/control/verbose 2
|
||||
/run/verbose 2
|
||||
@@ -22,12 +19,11 @@
|
||||
#
|
||||
/analysis/setFileName elastic
|
||||
/analysis/h1/set 1 100 9. 11 MeV # scaterred proton
|
||||
/analysis/h1/set 7 100 0. 50 keV #recoil nuclei
|
||||
/analysis/h1/set 10 100 -700. 10 eV #Q
|
||||
/analysis/h1/set 11 100 0. 15 MeV #Pbalance
|
||||
/analysis/h1/set 8 100 0. 50 keV #recoil nuclei
|
||||
/analysis/h1/set 11 100 -700. 10 eV #Q
|
||||
/analysis/h1/set 12 100 0. 15 MeV #Pbalance
|
||||
#
|
||||
/run/printProgress 1000
|
||||
#
|
||||
/run/beamOn 10000
|
||||
|
||||
|
||||
|
||||
@@ -1,11 +1,10 @@
|
||||
#
|
||||
# Macro file for "Hadr14.cc"
|
||||
# (can be run in batch, without graphic)
|
||||
# Macro file for "Hadr03.cc"
|
||||
#
|
||||
/control/verbose 2
|
||||
/run/verbose 2
|
||||
#
|
||||
/testhadr/det/setMat Molybdenum98
|
||||
/testhadr/det/setIsotopeMat Au196 79 196 19.30 g/cm3
|
||||
/testhadr/det/setSize 100 m
|
||||
#
|
||||
/run/initialize
|
||||
@@ -14,9 +13,8 @@
|
||||
/gun/energy 10 MeV
|
||||
#
|
||||
/analysis/setFileName gamma
|
||||
/analysis/h1/set 7 100 -1. 30 keV #nuclei
|
||||
/analysis/h1/set 10 100 -10. 1 MeV #Q
|
||||
/analysis/h1/set 2 150 0. 10. MeV #gamma
|
||||
/analysis/h1/set 4 150 0. 3. MeV #neutrons
|
||||
#
|
||||
/run/printProgress 1000
|
||||
#
|
||||
/run/beamOn 1000
|
||||
/run/printProgress 10000
|
||||
/run/beamOn 100000
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
############################################
|
||||
|
||||
**************************************************************
|
||||
Geant4 version Name: geant4-10-06-patch-02 (29-May-2020)
|
||||
Geant4 version Name: geant4-10-06-ref-06 (26-June-2020)
|
||||
Copyright : Geant4 Collaboration
|
||||
References : NIM A 506 (2003), 250-303
|
||||
: IEEE-TNS 53 (2006), 270-278
|
||||
@@ -37,18 +37,30 @@ Command is ignored.
|
||||
NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Capture/CrossSection/6_nat_Carbon
|
||||
NeutronHP: /Elastic file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Elastic/CrossSection/6_nat_Carbon
|
||||
NeutronHP: /Inelastic file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Inelastic/CrossSection/6_nat_Carbon
|
||||
|
||||
### === Deexcitation model UAtomDeexcitation is activated for 1 region:
|
||||
### === Auger cascade flag: 1
|
||||
### === Ignore cuts flag: 0
|
||||
#
|
||||
/process/list
|
||||
Transportation, hadElastic, neutronInelastic, nCapture
|
||||
nFission, protonInelastic, pi+Inelastic, pi-Inelastic
|
||||
kaon+Inelastic, kaon-Inelastic, kaon0LInelastic, kaon0SInelastic
|
||||
lambdaInelastic,anti-lambdaInelastic, sigma-Inelastic,anti_sigma-Inelastic
|
||||
sigma+Inelastic,anti_sigma+Inelastic, xi-Inelastic, anti_xi-Inelastic
|
||||
xi0Inelastic, anti_xi0Inelastic, omega-Inelastic,anti_omega-Inelastic
|
||||
anti_protonInelastic,anti_neutronInelastic,anti_deuteronInelastic,anti_tritonInelastic
|
||||
anti_He3Inelastic,anti_alphaInelastic, ionElastic, dInelastic
|
||||
tInelastic, He3Inelastic, alphaInelastic, ionInelastic
|
||||
photonNuclear
|
||||
Transportation, hadElastic, hadElastic, hadElastic
|
||||
hadElastic, hadElastic, hadElastic, hadElastic
|
||||
hadElastic, hadElastic, hadElastic, hadElastic
|
||||
hadElastic, hadElastic, hadElastic, hadElastic
|
||||
hadElastic, hadElastic, hadElastic, hadElastic
|
||||
hadElastic, hadElastic, hadElastic, hadElastic
|
||||
hadElastic, hadElastic, hadElastic, hadElastic
|
||||
hadElastic, hadElastic, hadElastic, hadElastic
|
||||
hadElastic, neutronInelastic, nCapture, nFission
|
||||
protonInelastic, pi+Inelastic, pi-Inelastic, kaon+Inelastic
|
||||
kaon-Inelastic, kaon0LInelastic, kaon0SInelastic, lambdaInelastic
|
||||
anti-lambdaInelastic, sigma-Inelastic,anti_sigma-Inelastic, sigma+Inelastic
|
||||
anti_sigma+Inelastic, xi-Inelastic, anti_xi-Inelastic, xi0Inelastic
|
||||
anti_xi0Inelastic, omega-Inelastic,anti_omega-Inelastic,anti_protonInelastic
|
||||
anti_neutronInelastic,anti_deuteronInelastic,anti_tritonInelastic, anti_He3Inelastic
|
||||
anti_alphaInelastic, ionElastic, dInelastic, tInelastic
|
||||
He3Inelastic, alphaInelastic, ionInelastic, photonNuclear
|
||||
RadioactiveDecayBase
|
||||
#
|
||||
/gun/particle proton
|
||||
/gun/energy 10 MeV
|
||||
@@ -56,6 +68,20 @@ anti_protonInelastic,anti_neutronInelastic,anti_deuteronInelastic,anti_tritonIne
|
||||
/run/printProgress 1000
|
||||
#
|
||||
/run/beamOn 10000
|
||||
======================================================================
|
||||
====== Radioactive Decay Physics Parameters =======
|
||||
======================================================================
|
||||
Max life time 1.4427e+06 ps
|
||||
Internal e- conversion flag 1
|
||||
Stored internal conversion coefficients 1
|
||||
Enable correlated gamma emission 0
|
||||
Max 2J for sampling of angular correlations 10
|
||||
Atomic de-excitation enabled 1
|
||||
Auger electron emission enabled 1
|
||||
Auger cascade enabled 1
|
||||
Check EM cuts disabled for atomic de-excitation 0
|
||||
Use Bearden atomic level energies 0
|
||||
======================================================================
|
||||
NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Capture/CrossSection/6_nat_Carbon
|
||||
NeutronHP: /Elastic file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Elastic/CrossSection/6_nat_Carbon
|
||||
NeutronHP: /Inelastic file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Inelastic/CrossSection/6_nat_Carbon
|
||||
@@ -78,12 +104,14 @@ NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use /
|
||||
Model: FTFP: 3 GeV/n ---> 100 TeV/n
|
||||
Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 100 TeV
|
||||
|
||||
Process: RadioactiveDecayBase
|
||||
|
||||
---------------------------------------------------
|
||||
Hadronic Processes for He3
|
||||
|
||||
Process: hadElastic
|
||||
Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n
|
||||
Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 100 TeV
|
||||
Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV
|
||||
|
||||
Process: He3Inelastic
|
||||
Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n
|
||||
@@ -95,7 +123,7 @@ NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use /
|
||||
|
||||
Process: hadElastic
|
||||
Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n
|
||||
Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 100 TeV
|
||||
Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV
|
||||
|
||||
Process: alphaInelastic
|
||||
Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n
|
||||
@@ -108,11 +136,13 @@ NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use /
|
||||
Process: hadElastic
|
||||
Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n
|
||||
Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n
|
||||
Cr_sctns: AntiAGlauber: 0 eV ---> 100 TeV
|
||||
Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV
|
||||
|
||||
Process: anti_He3Inelastic
|
||||
Model: FTFP: 0 eV /n ---> 100 TeV/n
|
||||
Cr_sctns: AntiAGlauber: 0 eV ---> 100 TeV
|
||||
Model: FTFP: 0 eV /n ---> 25 GeV/n
|
||||
Model: FTFP: 12 GeV/n ---> 100 TeV/n
|
||||
Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV
|
||||
Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV
|
||||
|
||||
---------------------------------------------------
|
||||
Hadronic Processes for anti_alpha
|
||||
@@ -120,11 +150,13 @@ NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use /
|
||||
Process: hadElastic
|
||||
Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n
|
||||
Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n
|
||||
Cr_sctns: AntiAGlauber: 0 eV ---> 100 TeV
|
||||
Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV
|
||||
|
||||
Process: anti_alphaInelastic
|
||||
Model: FTFP: 0 eV /n ---> 100 TeV/n
|
||||
Cr_sctns: AntiAGlauber: 0 eV ---> 100 TeV
|
||||
Model: FTFP: 0 eV /n ---> 25 GeV/n
|
||||
Model: FTFP: 12 GeV/n ---> 100 TeV/n
|
||||
Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV
|
||||
Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV
|
||||
|
||||
---------------------------------------------------
|
||||
Hadronic Processes for anti_deuteron
|
||||
@@ -132,11 +164,13 @@ NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use /
|
||||
Process: hadElastic
|
||||
Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n
|
||||
Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n
|
||||
Cr_sctns: AntiAGlauber: 0 eV ---> 100 TeV
|
||||
Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV
|
||||
|
||||
Process: anti_deuteronInelastic
|
||||
Model: FTFP: 0 eV /n ---> 100 TeV/n
|
||||
Cr_sctns: AntiAGlauber: 0 eV ---> 100 TeV
|
||||
Model: FTFP: 0 eV /n ---> 25 GeV/n
|
||||
Model: FTFP: 12 GeV/n ---> 100 TeV/n
|
||||
Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV
|
||||
Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV
|
||||
|
||||
---------------------------------------------------
|
||||
Hadronic Processes for anti_neutron
|
||||
@@ -144,11 +178,13 @@ NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use /
|
||||
Process: hadElastic
|
||||
Model: hElasticLHEP: 0 eV ---> 100.1 MeV
|
||||
Model: AntiAElastic: 100 MeV ---> 100 TeV
|
||||
Cr_sctns: AntiAGlauber: 0 eV ---> 100 TeV
|
||||
Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV
|
||||
|
||||
Process: anti_neutronInelastic
|
||||
Model: FTFP: 0 eV ---> 100 TeV
|
||||
Cr_sctns: AntiAGlauber: 0 eV ---> 100 TeV
|
||||
Model: FTFP: 0 eV ---> 25 GeV
|
||||
Model: QGSP: 12 GeV ---> 100 TeV
|
||||
Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV
|
||||
Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV
|
||||
|
||||
---------------------------------------------------
|
||||
Hadronic Processes for anti_proton
|
||||
@@ -156,11 +192,13 @@ NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use /
|
||||
Process: hadElastic
|
||||
Model: hElasticLHEP: 0 eV ---> 100.1 MeV
|
||||
Model: AntiAElastic: 100 MeV ---> 100 TeV
|
||||
Cr_sctns: AntiAGlauber: 0 eV ---> 100 TeV
|
||||
Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV
|
||||
|
||||
Process: anti_protonInelastic
|
||||
Model: FTFP: 0 eV ---> 100 TeV
|
||||
Cr_sctns: AntiAGlauber: 0 eV ---> 100 TeV
|
||||
Model: FTFP: 0 eV ---> 25 GeV
|
||||
Model: QGSP: 12 GeV ---> 100 TeV
|
||||
Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV
|
||||
Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV
|
||||
|
||||
---------------------------------------------------
|
||||
Hadronic Processes for anti_triton
|
||||
@@ -168,18 +206,20 @@ NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use /
|
||||
Process: hadElastic
|
||||
Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n
|
||||
Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n
|
||||
Cr_sctns: AntiAGlauber: 0 eV ---> 100 TeV
|
||||
Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV
|
||||
|
||||
Process: anti_tritonInelastic
|
||||
Model: FTFP: 0 eV /n ---> 100 TeV/n
|
||||
Cr_sctns: AntiAGlauber: 0 eV ---> 100 TeV
|
||||
Model: FTFP: 0 eV /n ---> 25 GeV/n
|
||||
Model: FTFP: 12 GeV/n ---> 100 TeV/n
|
||||
Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV
|
||||
Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV
|
||||
|
||||
---------------------------------------------------
|
||||
Hadronic Processes for deuteron
|
||||
|
||||
Process: hadElastic
|
||||
Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n
|
||||
Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 100 TeV
|
||||
Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV
|
||||
|
||||
Process: dInelastic
|
||||
Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n
|
||||
@@ -190,7 +230,8 @@ NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use /
|
||||
Hadronic Processes for gamma
|
||||
|
||||
Process: photonNuclear
|
||||
Model: BertiniCascade: 0 eV ---> 10 GeV
|
||||
Model: GammaNPreco: 0 eV ---> 200 MeV
|
||||
Model: BertiniCascade: 199 MeV ---> 10 GeV
|
||||
Cr_sctns: PhotoNuclearXS: 0 eV ---> 100 TeV
|
||||
|
||||
---------------------------------------------------
|
||||
@@ -228,7 +269,9 @@ NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use /
|
||||
|
||||
Process: lambdaInelastic
|
||||
Model: BertiniCascade: 0 eV ---> 6 GeV
|
||||
Model: FTFP: 3 GeV ---> 100 TeV
|
||||
Model: FTFP: 3 GeV ---> 25 GeV
|
||||
Model: QGSP: 12 GeV ---> 100 TeV
|
||||
Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV
|
||||
Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV
|
||||
|
||||
---------------------------------------------------
|
||||
@@ -246,7 +289,7 @@ NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use /
|
||||
Model: Binary Cascade: 19.9 MeV ---> 6 GeV
|
||||
Model: NeutronHPInelastic: 0 eV ---> 20 MeV
|
||||
Cr_sctns: NeutronHPInelasticXS: 0 eV ---> 20 MeV
|
||||
Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV
|
||||
Cr_sctns: G4NeutronInelasticXS: 0 eV ---> 100 TeV
|
||||
|
||||
Process: nCapture
|
||||
Model: NeutronHPCapture: 0 eV ---> 20 MeV
|
||||
@@ -299,12 +342,26 @@ NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use /
|
||||
Model: Binary Cascade: 0 eV ---> 6 GeV
|
||||
Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV
|
||||
|
||||
---------------------------------------------------
|
||||
Hadronic Processes for sigma-
|
||||
|
||||
Process: hadElastic
|
||||
Model: hElasticLHEP: 0 eV ---> 100 TeV
|
||||
Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV
|
||||
|
||||
Process: sigma-Inelastic
|
||||
Model: BertiniCascade: 0 eV ---> 6 GeV
|
||||
Model: FTFP: 3 GeV ---> 25 GeV
|
||||
Model: QGSP: 12 GeV ---> 100 TeV
|
||||
Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV
|
||||
Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV
|
||||
|
||||
---------------------------------------------------
|
||||
Hadronic Processes for triton
|
||||
|
||||
Process: hadElastic
|
||||
Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n
|
||||
Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 100 TeV
|
||||
Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV
|
||||
|
||||
Process: tInelastic
|
||||
Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n
|
||||
@@ -328,25 +385,26 @@ Limit excitation energy for Fermi BreakUp (MeV) 20
|
||||
Level density (1/MeV) 0.075
|
||||
Use simple level density model 1
|
||||
Use discrete excitation energy of the residual 0
|
||||
Time limit for long lived isomeres (ns) 1000
|
||||
Time limit for long lived isomeres (ns) 1442.7
|
||||
Isomer production flag 1
|
||||
Internal e- conversion flag 1
|
||||
Store e- internal conversion data 0
|
||||
Store e- internal conversion data 1
|
||||
Electron internal conversion ID 0
|
||||
Correlated gamma emission flag 0
|
||||
Max 2J for sampling of angular correlations 10
|
||||
Upload data before 1st event for Z < 9
|
||||
=======================================================================
|
||||
|
||||
========= Table of registered couples ==============================
|
||||
========= Table of registered couples ============================
|
||||
|
||||
Index : 0 used in the geometry : Yes
|
||||
Material : Molybdenum98
|
||||
Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 0 fm
|
||||
Energy thresholds : gamma 42.9443 keV e- 1.44302 MeV e+ 1.36749 MeV proton 0 eV
|
||||
Energy thresholds : gamma 42.9817 keV e- 1.43711 MeV e+ 1.35304 MeV proton 0 eV
|
||||
Region(s) which use this couple :
|
||||
DefaultRegionForTheWorld
|
||||
|
||||
====================================================================
|
||||
==================================================================
|
||||
|
||||
### Run 0 starts.
|
||||
|
||||
@@ -367,7 +425,7 @@ Index : 0 used in the geometry : Yes
|
||||
Run terminated.
|
||||
Run Summary
|
||||
Number of events processed : 10000
|
||||
User=0.130000s Real=0.145841s Sys=0.000000s
|
||||
User=0.280000s Real=0.299211s Sys=0.010000s
|
||||
|
||||
The run is 10000 proton of 10 MeV through 10 m of Molybdenum98 (density: 10.28 g/cm3 )
|
||||
|
||||
@@ -388,7 +446,7 @@ Run Summary
|
||||
|
||||
proton + Mo98 --> N gamma or e- + Tc99: 1 Q = 6.4945 MeV
|
||||
proton + Mo98 --> N gamma or e- + Tc99[142.683]: 1 Q = 6.3518 MeV
|
||||
proton + Mo98 --> N gamma or e- + neutron + Tc98: 1873 Q = -2.4725 MeV
|
||||
proton + Mo98 --> N gamma or e- + neutron + Tc98: 1873 Q = -2.4771 MeV
|
||||
proton + Mo98 --> N gamma or e- + proton + Mo98: 13 Q = -9.3784e-06 eV
|
||||
proton + Mo98 --> proton + Mo98: 8112 Q = -5.6975e-06 eV
|
||||
|
||||
@@ -396,15 +454,15 @@ Run Summary
|
||||
|
||||
List of generated particles:
|
||||
Mo98: 8125 Emean = 32.474 keV ( 5.4473 eV --> 405.17 keV)
|
||||
Tc98: 1873 Emean = 120.07 keV ( 7.7509 keV --> 296.85 keV)
|
||||
Tc98: 1873 Emean = 120.07 keV ( 7.7509 keV --> 296.88 keV)
|
||||
Tc99: 1 Emean = 88.079 keV ( 88.079 keV --> 88.079 keV)
|
||||
Tc99[142.683]: 1 Emean = 93.139 keV ( 93.139 keV --> 93.139 keV)
|
||||
e-: 506 Emean = 137.72 keV ( 21.527 keV --> 3.8124 MeV)
|
||||
e-: 506 Emean = 120.82 keV ( 18.601 keV --> 3.7913 MeV)
|
||||
gamma: 12667 Emean = 851.55 keV ( 21.805 keV --> 12.228 MeV)
|
||||
neutron: 1873 Emean = 1.6433 MeV ( 48.681 keV --> 6.3995 MeV)
|
||||
proton: 13 Emean = 7.7097 MeV ( 5.5275 MeV --> 9.3462 MeV)
|
||||
|
||||
Momentum balance: Pmean = 40.875 eV ( 2.861e-07 eV --> 2.3689 keV)
|
||||
Momentum balance: Pmean = 39.514 eV ( 2.861e-07 eV --> 2.3135 keV)
|
||||
|
||||
|
||||
--------- Ranecu engine status ---------
|
||||
|
||||
@@ -0,0 +1,55 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * License and Disclaimer *
|
||||
// * *
|
||||
// * The Geant4 software is copyright of the Copyright Holders of *
|
||||
// * the Geant4 Collaboration. It is provided under the terms and *
|
||||
// * conditions of the Geant4 Software License, included in the file *
|
||||
// * LICENSE and available at http://cern.ch/geant4/license . These *
|
||||
// * include a list of copyright holders. *
|
||||
// * *
|
||||
// * Neither the authors of this software system, nor their employing *
|
||||
// * institutes,nor the agencies providing financial support for this *
|
||||
// * work make any representation or warranty, express or implied, *
|
||||
// * regarding this software system or assume any liability for its *
|
||||
// * use. Please see the license in the file LICENSE and URL above *
|
||||
// * for the full disclaimer and the limitation of liability. *
|
||||
// * *
|
||||
// * This code implementation is the result of the scientific and *
|
||||
// * technical work of the GEANT4 collaboration. *
|
||||
// * By using, copying, modifying or distributing the software (or *
|
||||
// * any work based on the software) you agree to acknowledge its *
|
||||
// * use in resulting scientific publications, and indicate your *
|
||||
// * acceptance of all terms of the Geant4 Software license. *
|
||||
// ********************************************************************
|
||||
//
|
||||
/// \file hadronic/Hadr03/include/GammaNuclearPhysicsLEND.hh
|
||||
/// \brief Definition of the GammaNuclearPhysics class
|
||||
//
|
||||
//
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
#ifndef GammaNuclearPhysicsLEND_h
|
||||
#define GammaNuclearPhysicsLEND_h 1
|
||||
|
||||
#include "globals.hh"
|
||||
#include "G4VPhysicsConstructor.hh"
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
class GammaNuclearPhysicsLEND : public G4VPhysicsConstructor
|
||||
{
|
||||
public:
|
||||
GammaNuclearPhysicsLEND(const G4String& name="gamma");
|
||||
~GammaNuclearPhysicsLEND();
|
||||
|
||||
public:
|
||||
virtual void ConstructParticle() { };
|
||||
virtual void ConstructProcess();
|
||||
};
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
#endif
|
||||
|
||||
@@ -1,8 +1,5 @@
|
||||
#
|
||||
# Macro file for "Hadr03.cc"
|
||||
# (can be run in batch, without graphic)
|
||||
#
|
||||
# proton 10 MeV; all processes
|
||||
#
|
||||
/control/verbose 2
|
||||
/run/verbose 2
|
||||
@@ -19,9 +16,8 @@
|
||||
#
|
||||
/analysis/setFileName inelastic
|
||||
/analysis/h1/set 2 100 0. 8000 keV #gamma
|
||||
/analysis/h1/set 7 100 0. 400 keV #nuclei
|
||||
/analysis/h1/set 10 100 -10 +0 MeV #Q
|
||||
/analysis/h1/set 8 100 0. 400 keV #nuclei
|
||||
/analysis/h1/set 11 100 -10 +0 MeV #Q
|
||||
#
|
||||
/run/printProgress 1000
|
||||
#
|
||||
/run/beamOn 10000
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
#
|
||||
# Macro file for "Hadr03.cc"
|
||||
# (can be run in batch, without graphic)
|
||||
#
|
||||
/control/verbose 2
|
||||
/run/verbose 2
|
||||
@@ -22,10 +21,9 @@
|
||||
#
|
||||
/analysis/setFileName nCapture
|
||||
/analysis/h1/set 2 100 0. 15 MeV #gamma
|
||||
/analysis/h1/set 7 100 0. 70 keV #nuclei
|
||||
/analysis/h1/set 10 100 0. 70 MeV #Q
|
||||
/analysis/h1/set 11 100 0. 15 MeV #Pbalance
|
||||
/analysis/h1/set 8 100 0. 70 keV #nuclei
|
||||
/analysis/h1/set 11 100 0. 70 MeV #Q
|
||||
/analysis/h1/set 12 100 0. 15 MeV #Pbalance
|
||||
#
|
||||
/run/printProgress 10000
|
||||
#
|
||||
/run/beamOn 100000
|
||||
|
||||
@@ -22,10 +22,10 @@
|
||||
#
|
||||
/analysis/setFileName nFission
|
||||
/analysis/h1/set 2 100 0 10 MeV #gamma
|
||||
/analysis/h1/set 3 100 0 10 MeV #neutron
|
||||
/analysis/h1/set 7 100 0 150 MeV #nuclei
|
||||
/analysis/h1/set 10 100 150 250 MeV #Q
|
||||
/analysis/h1/set 12 200 1 200 none #A
|
||||
/analysis/h1/set 4 100 0 10 MeV #neutron
|
||||
/analysis/h1/set 8 100 0 150 MeV #nuclei
|
||||
/analysis/h1/set 11 100 150 250 MeV #Q
|
||||
/analysis/h1/set 13 200 1 200 none #A
|
||||
#
|
||||
/run/printProgress 1000
|
||||
/testhadr/run/printStat false
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
#
|
||||
# Macro file for "Hadr03.cc"
|
||||
# (can be run in batch, without graphic)
|
||||
#
|
||||
/control/verbose 2
|
||||
/run/verbose 2
|
||||
@@ -19,11 +18,10 @@
|
||||
#
|
||||
/analysis/setFileName neutron
|
||||
/analysis/h1/set 2 100 0. 1000 keV #gamma
|
||||
/analysis/h1/set 6 100 0. 3000 keV #alpha
|
||||
/analysis/h1/set 7 100 0. 2000 keV #nuclei
|
||||
/analysis/h1/set 10 100 0. 3000 keV #Q
|
||||
/analysis/h1/set 11 100 0. 100 keV #Pbalance
|
||||
/analysis/h1/set 7 100 0. 3000 keV #alpha
|
||||
/analysis/h1/set 8 100 0. 2000 keV #nuclei
|
||||
/analysis/h1/set 11 100 0. 3000 keV #Q
|
||||
/analysis/h1/set 12 100 0. 100 keV #Pbalance
|
||||
#
|
||||
/run/printProgress 10000
|
||||
#
|
||||
/run/beamOn 100000
|
||||
|
||||
@@ -38,6 +38,7 @@
|
||||
// Processes
|
||||
|
||||
#include "G4PhotoNuclearProcess.hh"
|
||||
#include "G4LowEGammaNuclearModel.hh"
|
||||
#include "G4CascadeInterface.hh"
|
||||
|
||||
#include "G4SystemOfUnits.hh"
|
||||
@@ -57,14 +58,26 @@ GammaNuclearPhysics::~GammaNuclearPhysics()
|
||||
|
||||
void GammaNuclearPhysics::ConstructProcess()
|
||||
{
|
||||
G4ProcessManager* pManager = G4Gamma::Gamma()->GetProcessManager();
|
||||
//
|
||||
G4PhotoNuclearProcess* process = new G4PhotoNuclearProcess();
|
||||
//
|
||||
G4CascadeInterface* bertini = new G4CascadeInterface();
|
||||
bertini->SetMaxEnergy(10*GeV);
|
||||
process->RegisterMe(bertini);
|
||||
//
|
||||
|
||||
// to not register a model, set Emax=0; eg. Emax1 = 0.
|
||||
const G4double Emax1 = 200*MeV, Emax2 = 10*GeV;
|
||||
|
||||
if (Emax1 > 0.) { // model 1
|
||||
G4LowEGammaNuclearModel* model1 = new G4LowEGammaNuclearModel();
|
||||
model1->SetMaxEnergy(Emax1);
|
||||
process->RegisterMe(model1);
|
||||
}
|
||||
|
||||
if (Emax2 > 0.) { // model 2
|
||||
G4CascadeInterface* model2 = new G4CascadeInterface();
|
||||
G4double Emin2 = std::max(Emax1-1*MeV, 0.);
|
||||
model2->SetMinEnergy(Emin2);
|
||||
model2->SetMaxEnergy(Emax2);
|
||||
process->RegisterMe(model2);
|
||||
}
|
||||
|
||||
G4ProcessManager* pManager = G4Gamma::Gamma()->GetProcessManager();
|
||||
pManager->AddDiscreteProcess(process);
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,76 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * License and Disclaimer *
|
||||
// * *
|
||||
// * The Geant4 software is copyright of the Copyright Holders of *
|
||||
// * the Geant4 Collaboration. It is provided under the terms and *
|
||||
// * conditions of the Geant4 Software License, included in the file *
|
||||
// * LICENSE and available at http://cern.ch/geant4/license . These *
|
||||
// * include a list of copyright holders. *
|
||||
// * *
|
||||
// * Neither the authors of this software system, nor their employing *
|
||||
// * institutes,nor the agencies providing financial support for this *
|
||||
// * work make any representation or warranty, express or implied, *
|
||||
// * regarding this software system or assume any liability for its *
|
||||
// * use. Please see the license in the file LICENSE and URL above *
|
||||
// * for the full disclaimer and the limitation of liability. *
|
||||
// * *
|
||||
// * This code implementation is the result of the scientific and *
|
||||
// * technical work of the GEANT4 collaboration. *
|
||||
// * By using, copying, modifying or distributing the software (or *
|
||||
// * any work based on the software) you agree to acknowledge its *
|
||||
// * use in resulting scientific publications, and indicate your *
|
||||
// * acceptance of all terms of the Geant4 Software license. *
|
||||
// ********************************************************************
|
||||
//
|
||||
/// \file hadronic/Hadr03/src/GammaNuclearPhysicsLEND.cc
|
||||
/// \brief Implementation of the GammaNuclearPhysicsLEND class
|
||||
//
|
||||
// $Id: GammaNuclearPhysics.cc 66587 2012-12-21 11:06:44Z ihrivnac $
|
||||
//
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
#include "GammaNuclearPhysicsLEND.hh"
|
||||
|
||||
#include "G4ParticleDefinition.hh"
|
||||
#include "G4ProcessManager.hh"
|
||||
|
||||
// Processes
|
||||
|
||||
#include "G4PhotoNuclearProcess.hh"
|
||||
#include "G4LENDorBERTModel.hh"
|
||||
#include "G4LENDCombinedCrossSection.hh"
|
||||
|
||||
#include "G4SystemOfUnits.hh"
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
GammaNuclearPhysicsLEND::GammaNuclearPhysicsLEND(const G4String& name)
|
||||
: G4VPhysicsConstructor(name)
|
||||
{ }
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
GammaNuclearPhysicsLEND::~GammaNuclearPhysicsLEND()
|
||||
{ }
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
void GammaNuclearPhysicsLEND::ConstructProcess()
|
||||
{
|
||||
G4ProcessManager* pManager = G4Gamma::Gamma()->GetProcessManager();
|
||||
//
|
||||
G4PhotoNuclearProcess* process = new G4PhotoNuclearProcess();
|
||||
//
|
||||
G4LENDorBERTModel* lend = new G4LENDorBERTModel(G4Gamma::Gamma());
|
||||
lend->SetMaxEnergy(20*MeV);
|
||||
process->RegisterMe(lend);
|
||||
//
|
||||
G4LENDCombinedCrossSection* lendXS = new G4LENDCombinedCrossSection(G4Gamma::Gamma());
|
||||
process->AddDataSet(lendXS);
|
||||
//
|
||||
pManager->AddDiscreteProcess(process);
|
||||
}
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
@@ -61,23 +61,24 @@ void HistoManager::Book()
|
||||
analysisManager->SetActivation(true); //enable inactivation of histograms
|
||||
|
||||
// Define histograms start values
|
||||
const G4int kMaxHisto = 13;
|
||||
const G4int kMaxHisto = 14;
|
||||
const G4String id[] = {"0","1","2","3","4","5","6","7","8","9",
|
||||
"10","11","12"};
|
||||
"10","11","12","13"};
|
||||
const G4String title[] =
|
||||
{ "dummy", //0
|
||||
"kinetic energy of scattered primary particle", //1
|
||||
"kinetic energy of gamma", //2
|
||||
"kinetic energy of neutrons", //3
|
||||
"kinetic energy of protons", //4
|
||||
"kinetic energy of deuterons", //5
|
||||
"kinetic energy of alphas", //6
|
||||
"kinetic energy of nuclei", //7
|
||||
"kinetic energy of mesons", //8
|
||||
"kinetic energy of baryons", //9
|
||||
"Q = Ekin out - Ekin in", //10
|
||||
"Pbalance = mag(P_out - P_in)", //11
|
||||
"atomic mass of nuclei" //12
|
||||
"kinetic energy of electrons", //3
|
||||
"kinetic energy of neutrons", //4
|
||||
"kinetic energy of protons", //5
|
||||
"kinetic energy of deuterons", //6
|
||||
"kinetic energy of alphas", //7
|
||||
"kinetic energy of nuclei", //8
|
||||
"kinetic energy of mesons", //9
|
||||
"kinetic energy of baryons", //10
|
||||
"Q = Ekin out - Ekin in", //11
|
||||
"Pbalance = mag(P_out - P_in)", //12
|
||||
"atomic mass of nuclei" //13
|
||||
};
|
||||
|
||||
// Default values (to be reset via /analysis/h1/set command)
|
||||
|
||||
@@ -40,8 +40,10 @@
|
||||
#include "G4HadronPhysicsFTFP_BERT_HP.hh"
|
||||
#include "G4HadronPhysicsQGSP_BIC_HP.hh"
|
||||
#include "G4HadronPhysicsQGSP_BIC_AllHP.hh"
|
||||
#include "G4HadronPhysicsQGSP_BIC.hh"
|
||||
#include "G4HadronInelasticQBBC.hh"
|
||||
#include "G4HadronPhysicsINCLXX.hh"
|
||||
#include "G4HadronPhysicsShielding.hh"
|
||||
|
||||
#include "G4IonElasticPhysics.hh"
|
||||
#include "G4IonPhysicsXS.hh"
|
||||
@@ -50,6 +52,7 @@
|
||||
#include "G4IonINCLXXPhysics.hh"
|
||||
|
||||
#include "GammaNuclearPhysics.hh"
|
||||
#include "G4RadioactiveDecayPhysics.hh"
|
||||
|
||||
// particles
|
||||
|
||||
@@ -84,9 +87,11 @@ PhysicsList::PhysicsList()
|
||||
////RegisterPhysics( new G4HadronPhysicsFTFP_BERT_HP(verb));
|
||||
RegisterPhysics( new G4HadronPhysicsQGSP_BIC_HP(verb));
|
||||
////RegisterPhysics( new G4HadronPhysicsQGSP_BIC_AllHP(verb));
|
||||
////RegisterPhysics( new G4HadronPhysicsQGSP_BIC(verb));
|
||||
////RegisterPhysics( new G4HadronInelasticQBBC(verb));
|
||||
////RegisterPhysics( new G4HadronPhysicsINCLXX(verb));
|
||||
|
||||
////RegisterPhysics( new G4HadronPhysicsShielding(verb));
|
||||
|
||||
// Ion Elastic scattering
|
||||
//
|
||||
RegisterPhysics( new G4IonElasticPhysics(verb));
|
||||
@@ -101,7 +106,9 @@ PhysicsList::PhysicsList()
|
||||
// Gamma physics
|
||||
//
|
||||
RegisterPhysics( new GammaNuclearPhysics("gamma"));
|
||||
|
||||
|
||||
// Radioactive decay
|
||||
RegisterPhysics(new G4RadioactiveDecayPhysics());
|
||||
}
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
@@ -120,18 +120,19 @@ void SteppingAction::UserSteppingAction(const G4Step* aStep)
|
||||
//energy spectrum
|
||||
ih = 0;
|
||||
if (particle == G4Gamma::Gamma()) ih = 2;
|
||||
else if (particle == G4Neutron::Neutron()) ih = 3;
|
||||
else if (particle == G4Proton::Proton()) ih = 4;
|
||||
else if (particle == G4Deuteron::Deuteron()) ih = 5;
|
||||
else if (particle == G4Alpha::Alpha()) ih = 6;
|
||||
else if (type == "nucleus") ih = 7;
|
||||
else if (type == "meson") ih = 8;
|
||||
else if (type == "baryon") ih = 9;
|
||||
else if (particle == G4Electron::Electron()) ih = 3;
|
||||
else if (particle == G4Neutron::Neutron()) ih = 4;
|
||||
else if (particle == G4Proton::Proton()) ih = 5;
|
||||
else if (particle == G4Deuteron::Deuteron()) ih = 6;
|
||||
else if (particle == G4Alpha::Alpha()) ih = 7;
|
||||
else if (type == "nucleus") ih = 8;
|
||||
else if (type == "meson") ih = 9;
|
||||
else if (type == "baryon") ih = 10;
|
||||
if (ih > 0) analysis->FillH1(ih,energy);
|
||||
//atomic mass
|
||||
if (type == "nucleus") {
|
||||
G4int A = particle->GetAtomicMass();
|
||||
analysis->FillH1(12, A);
|
||||
analysis->FillH1(13, A);
|
||||
}
|
||||
//energy-momentum balance
|
||||
G4ThreeVector momentum = (*secondary)[lp]->GetMomentum();
|
||||
@@ -146,9 +147,9 @@ void SteppingAction::UserSteppingAction(const G4Step* aStep)
|
||||
//energy-momentum balance
|
||||
G4double Pbal = Pbalance.mag();
|
||||
run->Balance(Pbal);
|
||||
ih = 10;
|
||||
analysis->FillH1(ih,Q);
|
||||
ih = 11;
|
||||
analysis->FillH1(ih,Q);
|
||||
ih = 12;
|
||||
analysis->FillH1(ih,Pbal);
|
||||
|
||||
// nuclear channel
|
||||
|
||||
Reference in New Issue
Block a user