www.qinetiq.com © copyright qinetiq limited 2007 1 dpmjet-2.5 & dpmjet-3 treats hadron-nuclear...
TRANSCRIPT
www.QinetiQ.com
1© Copyright QinetiQ limited 2007
DPMJET-2.5 & DPMJET-3
• Treats hadron-nuclear and nuclear-nuclear interactions >5 GeV/nuc, with the upper limited reported to be of order 1000TeV
• Two versions currently available, both of which treat nuclear-nuclear interactions:
− DPMJET-2.5 (Johannes Ranft) - source code publicly released
− DPMJET-3 (Stefan Roesler) - access to source controlled by Roesler
• Both versions of DPMJET available in FLUKA-2006, but distributed as compiled libraries
• A version of DPMJET-II.5 has been implemented as the model G4DPMJET2_5Model and is being tested. There have been challenges:
− Very limited documentation on the code, none covering explanation of design / organisation
− How to handling Glauber data generated as a part of the DPMJET-II.5 initialisation process
www.QinetiQ.com
2© Copyright QinetiQ limited 2007
What do (stored) Glauber data refer to?
Target
Projectile
b
• Cumulative probability distribution function
• Used to sample impact parameter, once it is confirmed an impact has occurred
• Unique to each projectile (AZNP) and
target (AZNT) and must be generated as
a function of momentum
1.E-04
1.E-03
1.E-02
1.E-01
1.E+00
1 10 100 1000
Impact parameter bin #
Cu
mu
lati
ve
pro
ba
bil
ity
www.QinetiQ.com
3© Copyright QinetiQ limited 2007
Need to Generation Glauber Profile Data Has Added Significant Complexity
• DPMJET-II.5 expects the data to be a function of:
− A & Z of projectile
− A & Z of target
− Projectile momentum/nucleon
• If we created data for 2546 projectiles (~301 stable nuclides + ~2245 well-quantified radioactive nuclides) on 301 stable targets = 676,046 combinations ~100 GBytes is full-size ASCII files
• This is the reason this wasn’t pre-computed.
www.QinetiQ.com
4© Copyright QinetiQ limited 2007
DPMJET-II.5 interface (Old Version)theExcitationHandler->SetEvaporation(theEvaporation);
theExcitationHandler->SetFermiModel(theFermiBreakUp);
theExcitationHandler->SetMaxAandZForFermiBreakUp(12, 6);
G4DPMJET2_5Model *theDPM = new G4DPMJET2_5Model(theExcitationHandler);
theDPM->SetMinEnergy(9.0*GeV);
theDPM->SetVerboseLevel(2);
• Get or define Glauber Data for projectiles and target
G4GlauberDataSetHandler *theGDSHandler = theDPM->GetGlauberDataSetHandler();
theGDSHandler->AddGlauberDataDir(“/home/geant4/g4/geant4/data/GlauberDat”);
theGDSHandler->AddGlauberDataDir(“.”);
theGDSHandler->LoadGlauberData(12,6,false);
theGDSHandler->LoadGlauberData(56,26,27,13,false);
theGDSHandler->CreateGlauberData(24,12, true);
Carbon on all materials in geometry
Iron on aluminium
magnesium on all materials in geometry
www.QinetiQ.com
5© Copyright QinetiQ limited 2007
DPMJET-II.5 interface (Old Version)G4ParticleDefinition *anIon = G4ParticleTable::GetParticleTable()->GetIonTable()->
GetIon(8,16)
theGDSHandler->CreateGlauberData(anIon);
theGDSHandler->SetSaveGlauberDataType(1);
theGDSHandler->SetSaveGlauberDataDir(“/home/geant4/g4/geant4/data/GlauberDat”);
theGDSHandler->SaveGlauberData(anIon);
• Or for saving lots of data:
theGDSHandler->SaveAllGlauberData();
• Set limits for the amount of Glauber data which can be generated or loaded.
theGDSHandler->SetMaxGlauberDataSets (0,75);
theGDSHandler->SetMaxGlauberDataSets (-1,1000);
oxygen on all materials in geometry
oxygen in any material
Save as parameterised (not full) data
www.QinetiQ.com
6© Copyright QinetiQ limited 2007
DPMJET-II.5 Subroutine SHMAKI
Can new GDS be created (for 1 momentum)
generate new data for one momentum only, transfer to DPMJET
N N
Instantiate new GDS objects generate new data (all momenta)
Y
N
Transfer projectile to product vector
DPMJET-II.5 Subroutine DPMEVT
Simulate interaction Transfer information about secondary products to product vector, de-excite nuclear fragments if required and store nuclear de-excitation products
Instantiate new GDS objects & load with data
Instantiate G4DPMJET2_5Model Initialise C++ variables and DPMJET-II.5 common block data Instantiation G4DPMJET2_5Model
Instantiate Glauber DSH object Initialise Glauber DSH variables & clear map of ptr to GDS objects
Define Glauber Data Sets Retrieve ptr to GDSH
Load existing GDS based on projectile – target
Create any new GDS based on projectile – target
Set limits on max # GDS data to be loaded/generated
Instantiate GDS objects & generate new data
Save GDS data to file if required
Unload GDS based on projectile – target
Delete GDS objects
ApplyYourself
DPMJET-II.5 Common blocks accessed through C Struct declarations
Determine projectile and target
Initialise DPMJET-II.5 common block data for interaction
DPMJET-II.5 Common blocks
Get GDS and transfer Glauber data to DPMJET-II.5
GDS already loaded for interaction?
Instantiate new GDS objects & load with data
Does filed GDS exist and can it be loaded?
Can new GDS be created (for all momenta)?
DPMJET-II.5 Subroutine SHMAKI
Y Y Y
N
LOGICAL FLOW DIAGRAM – Old Version (part 1 of 2)
www.QinetiQ.com
7© Copyright QinetiQ limited 2007
DPMJET-II.5 Subroutine SHMAKI
Can new GDS be created (for 1 momentum)
generate new data for one momentum only, transfer to DPMJET
N N
Instantiate new GDS objects generate new data (all momenta)
Y
N
Transfer projectile to product vector
DPMJET-II.5 Subroutine DPMEVT
Simulate interaction Transfer information about secondary products to product vector, de-excite nuclear fragments if required and store nuclear de-excitation products
Instantiate new GDS objects & load with data
Instantiate G4DPMJET2_5Model Initialise C++ variables and DPMJET-II.5 common block data Instantiation G4DPMJET2_5Model
Instantiate Glauber DSH object Initialise Glauber DSH variables & clear map of ptr to GDS objects
Define Glauber Data Sets Retrieve ptr to GDSH
Load existing GDS based on projectile – target
Create any new GDS based on projectile – target
Set limits on max # GDS data to be loaded/generated
Instantiate GDS objects & generate new data
Save GDS data to file if required
Unload GDS based on projectile – target
Delete GDS objects
ApplyYourself
DPMJET-II.5 Common blocks accessed through C Struct declarations
Determine projectile and target
Initialise DPMJET-II.5 common block data for interaction
DPMJET-II.5 Common blocks
Get GDS and transfer Glauber data to DPMJET-II.5
GDS already loaded for interaction?
Instantiate new GDS objects & load with data
Does filed GDS exist and can it be loaded?
Can new GDS be created (for all momenta)?
DPMJET-II.5 Subroutine SHMAKI
Y Y Y
N
LOGICAL FLOW DIAGRAM – Old Version (part 2 of 2)
www.QinetiQ.com
8© Copyright QinetiQ limited 2007
Review of Existing Sources of Error and Assessment of Approximations to Reduce Demand on No. Data Sets
• There are three sources of error already within the Glauber profile data as used/generated by DPMJET-II.5
− Stochastic errors: generated by MC calculation (up to ~3%)
− MODB interpolation errors i.e. interpolation between different probabilities->impact parameters shown in page 2 (80% of data within error of ~10% for light proj/targets, rising to 90% for others)
− Errors in interpolation between different projectile momenta (90% with 3%)
• There is a better way:
− Only generate and store Glauber profile data as a function of Aprojectile and Atarget (typically <3% error)
− Instead of MODB interpolation, fit impact parameter as a function of integral probability: 200 datapoints -> 10 parameters
− ~300 Mbytes ASCII (uncompressed)
9999.095.0)1ln(
95.003.0
1
03.0
)(
3
0
2
1
2
2
1
PPc
P
P
Pb
PPb
PX
i
ii
M
M
M
www.QinetiQ.com
9© Copyright QinetiQ limited 2007
DPMJET-II.5 interface (New Version)
theExcitationHandler->SetEvaporation(theEvaporation);
theExcitationHandler->SetFermiModel(theFermiBreakUp);
theExcitationHandler->SetMaxAandZForFermiBreakUp(12, 6);
G4DPMJET2_5Model *theDPM = new G4DPMJET2_5Model(theExcitationHandler);
theDPM->SetMinEnergy(9.0*GeV);
theDPM->SetVerboseLevel(2);
G4GlaubAADataSetHandler *theGDSHandler =theDPM->GetGlauberDataSetHandler();
theGDSHandler->SetMaxGlauberDataSets (0,75);
www.QinetiQ.com
10© Copyright QinetiQ limited 2007
LOGICAL FLOW DIAGRAM – New Version (part 1 of 2)
www.QinetiQ.com
11© Copyright QinetiQ limited 2007
LOGICAL FLOW DIAGRAM – New Version (part 2 of 2)
www.QinetiQ.com
12© Copyright QinetiQ limited 2007
Data Generation
• Just completed re-writing of code; need to test/debug
• Currently generating Glauber profiles for 2AP 58 and 2 AT 58
• Also, as part of this process, generating cross-sections for all inelastic interactions and intend to produce updated cross-section class for E>2GeV/nuc
− Necessary since currently using Tripathi, Shen or Kox approximations, and Tripathi only seems to be tested to ~2GeV/nuc
• Taking ~4 CPU-months
• Need to extent to 2 AP 240 and 2 AT 240
• Need for proton-nuclear interactions acknowledged
www.QinetiQ.com
13© Copyright QinetiQ limited 2007
WP1 DPMJET-II.5 interface design constraints
• Will NOT be able to instantiate G4DPMJET2_5Model more than once, due to reliance on FORTRAN subroutines
• In order to run G4DPMJET2_5Model, you require cernlib, kernlib, mathlib,
− Currently uses g77 + g2c
− Looking into gfortran
www.QinetiQ.com© Copyright QinetiQ limited 2007
QinetiQ Proprietary - MarsREM Project-in-Confidence
Back-up slides
www.QinetiQ.com
15© Copyright QinetiQ limited 2007
Error in Glauber Profiles from Monte Carlo statistics (1 of 2)
0%
20%
40%
60%
80%
100%
0.0% 1.0% 2.0% 3.0%
Error, E [%]
% d
ata
wit
h e
rro
r <
= E
[%
]
3H+3H3He+3H3He+3He6He+6He6Li+6Li6Be+6Be
www.QinetiQ.com
16© Copyright QinetiQ limited 2007
Error in Glauber Profiles from Monte Carlo statistics (2 of 2)
0%
20%
40%
60%
80%
100%
0.0% 0.5% 1.0% 1.5%
Error, E [%]
% d
ata
wit
h e
rro
r <
= E
[%
]
12C+12C12C+24Mg12C+56Fe24Mg+24Mg24Mg+56Fe56Fe+56Fe
www.QinetiQ.com
17© Copyright QinetiQ limited 2007
Error in determination of impact parameter due to existing MODB interpolation
40%
60%
80%
100%
0.001% 0.010% 0.100% 1.000% 10.000% 100.000%
Error, E [%]
% D
ata
wit
h e
rro
r >
= E
[%
]
MODB 3H+3H
MODB 6Li+6Li
MODB 12C+12C
MODB 24Mg+24Mg
MODB 56Fe+56Fe
www.QinetiQ.com
18© Copyright QinetiQ limited 2007
Errors from interpolating in projectile momentum
0%
20%
40%
60%
80%
100%
0.0% 1.0% 2.0% 3.0%
Error, E [%]
% d
ata
wit
h e
rro
r <
=E
[%
]
3H+3H
6He+6He
12B+12Be
24Na+24Si
www.QinetiQ.com
19© Copyright QinetiQ limited 2007
0%
20%
40%
60%
80%
100%
0.0% 1.0% 2.0% 3.0%
Error, E [%]
% d
ata
wit
h e
rro
r <
= E
[%
]
A=3 on A=3
A=3 on A=6
A=3 on A=12
A=3 on A=24
A=3 on A=56
Each Curve Represents the Variations in Glauber profiles for fixed Aprojectile and Atarget but range of Zprojectile and Ztarget
www.QinetiQ.com
20© Copyright QinetiQ limited 2007
0%
20%
40%
60%
80%
100%
0.0% 1.0% 2.0% 3.0%
Error, E [%]
% d
ata
wit
h e
rro
r <
=E
[%
]
A=6 on A=6
A=6 on A=12
A=6 on A=24
A=6 on A=56
Each Curve Represents the Variations in Glauber profiles for fixed Aprojectile and Atarget but range of Zprojectile and Ztarget
www.QinetiQ.com
21© Copyright QinetiQ limited 2007
0%
20%
40%
60%
80%
100%
0.0% 1.0% 2.0% 3.0%
Error, E [%]
% d
ata
wit
h e
rro
r <
=E
[%
]
A=12 on A=12
A=12 on A=24
A=12 on A=56
Each Curve Represents the Variations in Glauber profiles for fixed Aprojectile and Atarget but range of Zprojectile and Ztarget
www.QinetiQ.com
22© Copyright QinetiQ limited 2007
0%
20%
40%
60%
80%
100%
0.0% 1.0% 2.0% 3.0%
Error, E [%]
% d
ata
wit
h e
rro
r <
=E
[%
]
A=24 on A=24
A=24 on A=56
A=56 on A=56
Each Curve Represents the Variations in Glauber profiles for fixed Aprojectile and Atarget but range of Zprojectile and Ztarget
www.QinetiQ.com
23© Copyright QinetiQ limited 2007
WP1 Parameterisation of Glauber data - inverse function
74.071119
1.901494
El
x Dl n n
11.514841 10
3 Dl n
1 103
0.01 0.1 1
1
10
100
Cumulative probability, f
i, im
pact
par
amet
er
74.071119
60
El
x Dl n n
10.99 Dl n
0.99 0.992 0.994 0.996 0.998 160
62
64
66
68
70
72
74
76
Cumulative probability , f
i, im
pact
par
amet
er
www.QinetiQ.com
24© Copyright QinetiQ limited 2007
Errors due to use of parametric fit of impact parameter to integral probability
40%
60%
80%
100%
0.000% 2.000% 4.000% 6.000% 8.000% 10.000%
Error, E [%]
% D
ata
wit
h e
rro
r >
= E
[%
]
Interp F 3H+3H
Interp F 6Li+6Li
Interp F 12C+12C
Interp F 24Mg+24Mg
Interp F 56Fe+56Fe
www.QinetiQ.com
25© Copyright QinetiQ limited 2007
1.E-04
1.E-03
1.E-02
1.E-01
0 2 4 6 8 10 12 14
Energy [GeV]
Cro
ss
-se
cti
on
[m
b]
Original DPMJET2.5
Geant4 DPMJET without de-ex.
1.E-04
1.E-03
1.E-02
1.E-01
0 2 4 6 8 10 12 14
Energy [GeV]
Cro
ss
-se
cti
on
[m
b]
DPMJET2.5 FLUKA
Geant4 DPMJET with de-ex.
1.E-04
1.E-03
1.E-02
1.E-01
0 2 4 6 8 10 12 14
Energy [GeV]
Cro
ss-s
ecti
on
[m
b]
Original DPMJET2.5
Geant4 DPMJET2 without de-ex.
12C on C @10 GeV/n
1.E-04
1.E-03
1.E-02
1.E-01
0 2 4 6 8 10 12 14
Energy [GeV]
Cro
ss-s
ecti
on
[m
b]
DPMJET2.5 FLUKA
Geant4 DPMJET with de-ex.
protons protons
neutrons neutrons
Without de-excitation With de-excitation
www.QinetiQ.com
26© Copyright QinetiQ limited 2007
1.E-06
1.E-05
1.E-04
1.E-03
0 50 100 150 200 250
Energy [GeV]
Cro
ss
-se
cti
on
[m
b]
Original DPMJET2.5
Geant4 DPMJET without de-ex.
1.E-06
1.E-05
1.E-04
1.E-03
0 50 100 150 200 250
Energy [GeV]
Cro
ss
-se
cti
on
[m
b]
DPMJET2.5 FLUKA
Geant4 DPMJET with de-ex.
1.E-06
1.E-05
1.E-04
1.E-03
0 50 100 150 200 250
Energy [GeV]
Cro
ss-s
ecti
on
[m
b]
Original DPMJET-2.5
Geant4 DPMJET wo de-ex.
1.E-06
1.E-05
1.E-04
1.E-03
0 50 100 150 200 250
Energy [GeV]
Cro
ss-s
ecti
on
[m
b]
DPMJET2.5 FLUKA
Geant4 DPMJET with de-ex.
12C on C @200 GeV/n
protons protons
neutrons neutrons
Without de-excitation With de-excitation
www.QinetiQ.com
27© Copyright QinetiQ limited 2007
1.E-04
1.E-03
1.E-02
1.E-01
0 2 4 6 8 10 12 14
Energy [GeV]
Cro
ss-s
ecti
on
[m
b]
Original DPMJET2.5
Geant4 DPMJET without de-ex
1.E-04
1.E-03
1.E-02
1.E-01
0 2 4 6 8 10 12 14
Energy [GeV]
Cro
ss
-se
cti
on
[m
b]
DPMJET2.5 FLUKA
Geant4 DPMJET with de-ex.
1.E-04
1.E-03
1.E-02
1.E-01
0 2 4 6 8 10 12 14
Energy [GeV]
Cro
ss-s
ecti
on
[m
b]
Original DPMJET2.5
Geant4 DPMJET without de-ex.
1.E-04
1.E-03
1.E-02
1.E-01
0 2 4 6 8 10 12 14
Energy [GeV]
Cro
ss-s
ecti
on
[m
b]
DPMJET2.5 FLUKA
Geant4 DPMJET with de-ex.
12C on Al @10 GeV/n
protons protons
neutrons neutrons
Without de-excitation With de-excitation
www.QinetiQ.com
28© Copyright QinetiQ limited 2007
1.E-06
1.E-05
1.E-04
1.E-03
0 50 100 150 200 250
Energy [GeV]
Cro
ss
-sec
tio
n [
mb
]
Original DPMJET2.5
Geant4 DPMJET without de-ex.
1.E-06
1.E-05
1.E-04
1.E-03
0 50 100 150 200 250
Energy [GeV]
Cro
ss
-sec
tio
n [
mb
]
DPMJET2.5 FLUKA
Geant4 DPMJET with de-ex.
1.E-06
1.E-05
1.E-04
1.E-03
0 50 100 150 200 250
Energy [GeV]
Cro
ss-s
ecti
on
[m
b]
Original DPMJET2.5
Geant4 DPMJET without de-ex.
1.E-06
1.E-05
1.E-04
1.E-03
0 50 100 150 200 250
Energy [GeV]
Cro
ss-s
ecti
on
[m
b]
DPMJET2.5 FLUKA
Geant4 DPMJET with de-ex.
12C on Al @200 GeV/n
protons protons
neutrons neutrons
Without de-excitation With de-excitation