1 / 12

Status of CHIPS cross sections and migration of the physics lists

Status of CHIPS cross sections and migration of the physics lists. Witek Pokorski 23 .05.2012. Goal. remove all the dependencies on CHIPS from the Geant4 production physics lists extract (clone) the CHIPS cross sections used by other physics lists (models)

benson
Download Presentation

Status of CHIPS cross sections and migration of the physics lists

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Status of CHIPS cross sections and migration of the physics lists Witek Pokorski 23.05.2012

  2. Goal • remove all the dependencies on CHIPS from the Geant4 production physics lists • extract (clone) the CHIPS cross sections used by other physics lists (models) • change the inheritance to use the standard Geant4 base classes • implement the standard methods, etc • remove any use of CHIPS classes (PDG, etc) • put them all in hadronic/cross_sections according to the Geant4 toolkit design allowing proper dependency of modules

  3. Inelastic cross sections • inelastic cross sections for K+/-/0, Pi+/-, p, n, hyperons, anti-baryons have been extracted from CHIPS and put in hardonic/cross_sections • naming convention: G4ChipsKaonMinusInelasticXS.hh • inheriting from G4VCrossSectionDataSet • no any dependency on CHIPS, no singleton, follows standard G4 interface for cross sections • can be used directly in physics list and handled by G4CrossSectionDataStore • removed use of ‘tolerance’ (see later)

  4. Elastic cross sections • elastic cross sections for K+/-/0, Pi+/-, p, n, hyperons, anti-baryons have been extracted from CHIPS and put in hardonic/cross_sections • naming convention: G4ChipsKaonMinusElasticXS.hh • inheriting from G4VCrossSectionDataSet • no any dependency on CHIPS, no singleton, follows standard G4 interface for cross sections • can be used directly in physics list and handled by G4CrossSectionDataStore • no use of ‘tolerance’

  5. Issues in CHIPS cross-sections (1/2) • all CHIPS (inelastic) cross sections use ‘tolerance’ • if |new_momentum - old_momentum| < tolerance*p, use the same cross section, do not recompute • physically acceptable approximation, but totally breaks reproducibility • confirmed to be one of the remaining sources of the problems observed by Alberto • fixed by Vladimir I., but commented out • for instance FTFP_BERT still using the K cross-sections with tolerance • removed use of tolerance in the new (extracted) cross section classes

  6. Issues in CHIPS cross-sections (2/2) • for K0 the following code is used in the current CHIPS interface else if(particle == G4KaonZeroLong::KaonZeroLong() || particle == G4KaonZeroShort::KaonZeroShort() || particle == G4KaonZero::KaonZero() || particle == G4AntiKaonZero::AntiKaonZero() ) { CSmanager=G4QKaonZeroNuclearCrossSection::GetPointer(); if(G4UniformRand() > 0.5) pPDG= 311; else pPDG=-311; } • uses random number to randomly choose between K0 and anti-K0

  7. Issues in CHIPS cross-sections (2/2)- continued • but... pPDG (the randomly chosen), not used anywhere afterwards.... • instead GetCrossSection for K0 returns G4double CS=(theKMinusCS->GetCrossSection(fCS,pMom,tgZ,tgN,-321) +theKPlusCS->GetCrossSection(fCS,pMom,tgZ,tgN,321))/2; • the new class follows (for the moment?) this approach

  8. Component cross sections class • common (optional) ‘interface’ to elastic and inelastic has been implemented • G4ChipsComponentXS in hadronic/cross_sections • allows to access all the cross sections (for all particles) through one class • gives also the total cross section

  9. Migrations of models (1/2) • in parton_string/diffraction there was a direct use of CHIPS cross sections • this has been migrated to the new cross sections • see G4FTFParameters • the old interface G4ComponentCHIPShadronNuclearXS from parton_string/diffraction can now be removed

  10. Migration of models (2/2) • in coherent_elastic there was the interface G4CHIPSElasticXS to CHIPS elastic cross sections and to the CHIPS elastic process (G4CHIPSElastic) • new interface has been implemented G4ChipsElasticModel for the elastic process • new cross sections can be used now directly (because they inherit from G4VCrossSectionDataSet)

  11. Migration of physics lists • G4HadronElasticPhysics and G4HadronDElasticPhysics migrated to new elastic scattering classes (cross sections) • G4HyperonFTFPBuilder, HadronPhysicsFTFP_BERT and HadronPhysicsFTFP_BERT_TRV migrated to new cross sections • FTFP_BERT and FTFP_BERT_TRV physics lists now use the new cross sections classes • Andrea has run the simplified calorimeter with the new cross sections • no crashes, no problems • results show no differences

  12. Conclusion • ‘Cloning’ of CHIPS cross sections done • reproducibility problems solved in the same time • processes using those cross sections internally (coherent elastic, FTF) has been migrated to the new ones • in SVN, tagged, accepted • FTFP_BERT physics list migrated to the new cross sections • in SVN, tagged, accepted • first validation results show no problems • ready to put in the next reference tag and in the beta release

More Related