Www.QinetiQ.com © Copyright QinetiQ limited 2008 03 July 2008 DPMJET-II.5 and DPMJET-III...
-
Upload
alexis-sweeney -
Category
Documents
-
view
225 -
download
9
Transcript of Www.QinetiQ.com © Copyright QinetiQ limited 2008 03 July 2008 DPMJET-II.5 and DPMJET-III...
03 July 2008
www.QinetiQ.com
© Copyright QinetiQ limited 2008
DPMJET-II.5 and DPMJET-III Implementation in Geant4Overview & Status Report
Pete TruscottQinetiQ Space LoB
www.QinetiQ.com
2© Copyright QinetiQ limited 2008
Implementation of DPMJET-II.5 model in Geant4 (1)
• Existing FORTRAN code DPMJET-II.5 to act as an event generator:
− 5GeV/nuc to 1E+11 GeV/nuc
− applicable to all projectiles & targets
− Poorly documented code: no explanation of the design / organisation of the code; each subroutine having little (or often no) description; little explanation of internal variables/common blocks
• Geant4 DPMJET-II.5 interface: G4DPMJET2_5Model class now developed and under test
• After prompt nuclear-nuclear collisions, nuclear de-excitation treated using other Geant4 models (precompound, evaporation, Fermi break-up)
− Default is precompound, but user can override and declare her own precompound, G4ExcitationHandler or no de-excitation.
• DPMJET-II.5 FORTRAN code requires Glauber profile data: integral probability function used to sample impact parameter
− For Geant4 implementation, determined as a function of AP and AT rather than (AP, ZP) and (AT, ZT)
− Current version of database of Glauber profile data available applicable to projectiles from AP = 2 to AP = 58 on target nuclei with AT = 2 to AT = 58
− It is hoped that this will be expanded in due course to projectiles up to A=240 and similarly for targets, but time for generating data extensive (it took ~10 CPU months for A=2 to A=58)
www.QinetiQ.com
3© Copyright QinetiQ limited 2008
Implementation of DPMJET-II.5 model in Geant4 (2)
Total inelastic cross-sections
• Total inelastic cross-section class G4DPMJET2_5CrossSection created to do this, and also covers projectiles from A=2 to A=58 on targets from A=2 to A=58 (by-product of DPMJET-II.5)
• Some comparisons performed at the low-energy (~5GeV) end of the cross-section curve, but limited available data for total inelastic cross-sections at ultra-relativistic energies – does anyone know of any data?
S/W Compatibility
• Tested with G4 v8.3 (tested at reference tag 0), v9.0 (patch 01), v9.1 (tested at reference tag 3) (so I have been told!) built with compiler versions:
− gcc v3.2.3 with g77 v3.2.3
− gcc v4.0.0 with g77 v3.2.3
− gcc v4.2.0 with gfortran v4.2.0
− gcc v4.2.3 with gfortran v4.2.3
• WARNING: DPMJET-II.5 FORTRAN has problems with gfortran v4.0.0 and gfortran v4.1.0 (see software manual); it’s possible that latter will work with 32-bit machines.
www.QinetiQ.com
4© Copyright QinetiQ limited 2008
Implementation of DPMJET-II.5 model in Geant4 (3)Use in physics list G4ExcitationHandler *theExcitationHandler = new G4ExcitationHandler; G4Evaporation * theEvaporation = new G4Evaporation; G4FermiBreakUp * theFermiBreakUp = new G4FermiBreakUp; theExcitationHandler->SetEvaporation(theEvaporation); theExcitationHandler->SetFermiModel(theFermiBreakUp); theExcitationHandler->SetMaxAandZForFermiBreakUp(17, 9); theDPM = new G4DPMJET2_5Model(DEFAULT); theDPM->SetExcitationHandler(theExcitationHandler); theDPM->SetMinEnergy(6*GeV); theDPM->SetMaxEnergy(100*TeV);
Notes/other constraints:
• Interactions of heavy ions on protons currently ignored (G4DPMJET2_5Model doesn’t currently treat protons)
• QinetiQ has not included DPMJET-II.5 FORTRAN with release, but easy to download from Ranft’s web-site (see G4dpmjet2_5 software manual)
• Scripts included with G4dpmjet2_5 to apply patch the DPMJET-II.5 FORTRAN source before compilation
• Instructions in software manual on how to install & build G4dpmjet2_5, and modifications required to user’s GNUmakefile
www.QinetiQ.com
5© Copyright QinetiQ limited 2008
Secondary proton energy spectra from A-A collisionsG4dpmjet2_5 & FLUKA (1)
12C on C: Elab = 10 GeV/nuc
1.E+00
1.E+01
1.E+02
1.E+03
0 5 10 15
Energy [GeV]
Cro
ss-s
ecti
on
[m
b/G
eV-s
ter]
DPMJET2.5 FLUKA
G4DPMJET2_5Model v0.A with de-ex.
Updated G4DPMJET2_5Model with de-ex
12C on Fe: Elab = 200 GeV/nuc
1.E-01
1.E+00
1.E+01
1.E+02
0 50 100 150 200 250
Energy [GeV]
Cro
ss-s
ecti
on
[m
b/G
eV-s
ter]
DPMJET2.5 FLUKAG4DPMJET2_5Model v0.A with de-ex.Updated G4DPMJET2_5Model with de-exDPMJET3 FLUKA
12C on Fe: Elab= 10GeV/nuc
1.E+00
1.E+01
1.E+02
1.E+03
0 5 10 15
Energy [GeV]
Cro
ss-s
ecti
on
[m
b/G
eV-s
ter]
DPMJET2.5 FLUKA
Updated G4DPMJET2_5Model with de-ex
DPMJET3 FLUKA
12C + 12C 200GeV/nuc
1.E-02
1.E-01
1.E+00
1.E+01
0 50 100 150 200 250
Energy [GeV]
Cro
ss-s
ecti
on
[m
b/G
eV-s
ter]
DPMJET2.5 FLUKA
G4DPMJET2_5Model v0.A with de-ex.
Updated G4DPMJET2_5Model with de-ex
www.QinetiQ.com
6© Copyright QinetiQ limited 2008
Secondary proton energy spectra from A-A collisionsG4dpmjet2_5 & FLUKA (2)
27Al + Fe 200GeV/nuc
1.E-01
1.E+00
1.E+01
1.E+02
0 50 100 150 200 250
Energy [GeV]
Cro
ss-s
ecti
on
[m
b/G
eV-s
ter]
DPMJET2.5 FLUKA
Updated G4DPMJET2_5Model with de-ex
27Al on Fe: Elab = 10GeV/nuc
1.E+00
1.E+01
1.E+02
1.E+03
0 5 10 15
Energy [GeV]
Cro
ss-s
ecti
on
[m
b/G
eV-s
ter]
DPMJET2.5 FLUKA
DPMJET3 FLUKA
G4DPMJET2_5Model with PC
Suggests at low-energy collisions, G4dpmjet2_5 over predicts (at least compared with FLUKA)?
G4dpmjet2_5 following DPMJET-III here?
www.QinetiQ.com
7© Copyright QinetiQ limited 2008
Secondary proton & rapidity spectra from A-A collisions G4dpmjet2_5 & experiment
28Si+27Al 13.7GeV/nuc
0
1
2
3
4
5
6
7
8
9
-4 -3 -2 -1 0 1 2 3 4
y-ycm, rapidity
Dif
fere
nti
al
yie
ld,
dN
/dy
G4DPMJET2_5Model results
G4DPMJET2_5Model with tau=105
Abbott et al data 28Si+Cu 13.7GeV/nuc
0
5
10
15
20
25
30
35
-4 -3 -2 -1 0 1 2 3 4
y-ycm, rapidity
Dif
fere
nti
al y
ield
, dN
/dy
G4dpmjet2_5Abbott et al
28Si+Cu 13.7GeV/nuc
0
2
4
6
8
10
12
14
-4 -3 -2 -1 0 1 2 3 4
y-ycm, rapidity
Dif
fere
nti
al y
ield
, dN
/dy
pi+ G4dpmjet2_5pi+ Abbott et alpi- G4dpmjet2_5pi- Abbott et al
Proton
28Si+27Al 13.7GeV/nuc
0
2
4
6
8
10
12
-4 -3 -2 -1 0 1 2 3 4
y-ycm, rapidity
Dif
fere
nti
al
yie
ld,
dN
/dy
pi+ G4dpmjet2_5pi+ Abbot et alpi- G4dpmjet2_5pi- Abbot et al
Shows underprediction
www.QinetiQ.com
8© Copyright QinetiQ limited 2008
Status & future work
• G4dpmjet2_5 showing good consistency at high collision energies, but discrepancies at lower energies (~10GeV/nuc)
• No feedback yet on draft code … I’m not sure anyone has tried to use it
• Functional and physics testing performed but more testing should be undertaken – critical to other MarsREM project deliverables
• Need to discuss with, e.g. Gunter, how to implement in G4 release, and once this is sorted, commit source to repository
• Proton-nuclear and nuclear-proton interactions
• Already started DPMJET-III implementation (MarsREM)
• Extend Glauber profile data and Glauber inelastic cross-section data beyond A=58
www.QinetiQ.com
9© Copyright QinetiQ limited 2008
Backup Slides
www.QinetiQ.com
10© Copyright QinetiQ limited 2008
N
Instantiate GDS for just this proj/target
Y
N
“Miss” declared and no interaction products returned
DPMJET-II.5 Subroutine DPMEVT
Simulate interaction by call to DPMEVT
Transfer information about secondary products to product vector, de-excite nuclear fragments if required and store nuclear de-excitation products
Point to applicable GDS, ready to be used by DPMJET-II.5
Define Glauber Data Sets Retrieve ptr to GDSH Set limits on max #
GDS data to be loaded/generated
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
DPMJET-II.5 Common blocks accessed through C Struct declarations
ApplyYourself Determine projectile and target
Initialise DPMJET-II.5 common block data for interaction
DPMJET-II.5 Common blocks
GDS already loaded for interaction?
N Does filed GDS exist and can it be loaded?
Can GDS be loaded for just this Proj/Target
Instantiate new GDS objects & load with data and keep for run
Y Y
Glauber data set for AP on AT
Get impact parameter from current Glauber dataset & RND
Note this route should not normally be taken if data already generated f or all AP on all AT
G4dDPMJET2_5Model logical flow
www.QinetiQ.com
11© Copyright QinetiQ limited 2008
Summary of G4DPMJET2_5Model classes
G4DPMJET_modb_
G4FullGlaubAADataSet
G4DPMJET2_5Model
G4GlaubAADataSetHandler
G4ParamType1GlaubAADataSet
G4GlaubAADataSet G4VGlauberDataSet
G4Type1GlauberParameterisation
G4HadronicInteraction
Note G4FullGlaubAADataSet is has been created as an intermediate object f or holding Glauber data immediately af ter generation, and prior to parameterisation. Therefore, under normal circumstances, the user need not worry about this class.
www.QinetiQ.com
12© Copyright QinetiQ limited 2008
G4dDPMJET2_5CrossSection logical flow
Determine cross-section from fit
N
Flag to G4cerr no available data. Return zero
IsApplicable / IsZAApplicable If specified for target G4Element, determine isotopes
Check that projectile & target A and energy are within range
Instantiate G4DPMJET2_5CrossSection Initialise std::map used to cross-reference cross-section parameters to projectile-targets
Instantiation G4DPMJET2_5CrossSectionl
Initialisation Load all cross-section fit parameters for any projectiles incident upon the nuclides defined in the G4 element/isotope tables
GetCrossSection
Calculate CoM energy
Are AP, AT and E within range?
Y Determine AP AT and E per nucleon
N
Note currently the cross-section database is limited to 2AP58 and 2AT58
Determine individual target isotopes based on G4Element. Repeatedly call G4IsoZACrossSection and weight according to isotopic abundance
GetIsoZACrossSection