280 likes | 441 Views
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
E N D
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
Target b Projectile What do (stored) Glauber data refer to? • 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
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.
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
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 Save as parameterised (not full) data oxygen in any material
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)
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);
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
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 usesg77 + g2c • Looking into gfortran
Error in Glauber Profiles from Monte Carlo statistics (1 of 2)
Error in Glauber Profiles from Monte Carlo statistics (2 of 2)
Error in determination of impact parameter due to existing MODB interpolation
Each Curve Represents the Variations in Glauber profiles for fixed Aprojectile and Atarget but range of Zprojectile and Ztarget
Each Curve Represents the Variations in Glauber profiles for fixed Aprojectile and Atarget but range of Zprojectile and Ztarget
Each Curve Represents the Variations in Glauber profiles for fixed Aprojectile and Atarget but range of Zprojectile and Ztarget
Each Curve Represents the Variations in Glauber profiles for fixed Aprojectile and Atarget but range of Zprojectile and Ztarget
Errors due to use of parametric fit of impact parameter to integral probability
With de-excitation 12C on C @10 GeV/n Without de-excitation protons protons neutrons neutrons
With de-excitation 12C on C @200 GeV/n Without de-excitation protons protons neutrons neutrons
With de-excitation 12C on Al @10 GeV/n Without de-excitation protons protons neutrons neutrons
With de-excitation 12C on Al @200 GeV/n Without de-excitation protons protons neutrons neutrons