From 797e3b280ef0f9aebadef181c8adb8f4681f3931 Mon Sep 17 00:00:00 2001 From: Dmitry Popov <dmitry.popov@cern.ch> Date: Mon, 15 Jun 2020 12:46:15 +0000 Subject: [PATCH] v104r3p1 release changes # Conflicts: # CMakeLists.txt --- CMakeLists.txt | 5 +- Geant4/G4config/CMakeLists.txt | 2 +- Geant4Sys/cmt/requirements | 63 ------------------ .../src/G4EmStandardPhysics_LHCbTest.cc | 6 ++ .../src/G4EmStandardPhysics_option1LHCb.cc | 6 ++ .../G4EmStandardPhysics_option1NoApplyCuts.cc | 64 ++++++++++--------- .../scripts/G4HadronicXSectionsTest.py | 2 + .../scripts/G4MScInThinLayerTest.py | 2 +- .../G4MScInThinLayerTest/src/PhysicsList.cc | 5 +- .../scripts/G4SamplingCaloTest.py | 2 +- .../G4SamplingCaloTest/src/PhysicsList.cc | 3 +- ReleaseNotes/v106r2.md | 13 ++++ 12 files changed, 73 insertions(+), 100 deletions(-) delete mode 100755 Geant4Sys/cmt/requirements create mode 100644 ReleaseNotes/v106r2.md diff --git a/CMakeLists.txt b/CMakeLists.txt index 246af8e973..c5bdd41748 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -3,10 +3,11 @@ CMAKE_MINIMUM_REQUIRED(VERSION 2.8.5) # NO_NINJA : Geant4 build fails with Ninja set(GEANT4_SRCS_REPOSITORY https://gitlab.cern.ch/lhcb/Geant4-srcs.git CACHE STRING "Repository for Geant4 sources") +set(GEANT4FILES_VERSION v106r1 CACHE STRING "Version for Geant4Files to match Geant4-src version") find_package(GaudiProject) -gaudi_project(Geant4 v106r1 - DATA Geant4Files VERSION v106r1) +gaudi_project(Geant4 v106r2 + DATA Geant4Files VERSION ${GEANT4FILES_VERSION}) # FIXME: hack for compatibility with CMT build file(WRITE ${CMAKE_BINARY_DIR}/dummy.cpp "") diff --git a/Geant4/G4config/CMakeLists.txt b/Geant4/G4config/CMakeLists.txt index 37a550bdab..dd3b6d73bc 100644 --- a/Geant4/G4config/CMakeLists.txt +++ b/Geant4/G4config/CMakeLists.txt @@ -30,7 +30,7 @@ if (NOT GEANT4_TAG) elseif(CMAKE_PROJECT_VERSION STREQUAL "HEAD") # Special mapping of version HEAD # WARNING this must be kept up to date manually - set(GEANT4_TAG "lhcb/v10.6.1-branch") + set(GEANT4_TAG "lhcb/v10.6.2-branch") else() set(GEANT4_TAG lhcb/${CMAKE_PROJECT_VERSION}) endif() diff --git a/Geant4Sys/cmt/requirements b/Geant4Sys/cmt/requirements deleted file mode 100755 index 5cad9b85a7..0000000000 --- a/Geant4Sys/cmt/requirements +++ /dev/null @@ -1,63 +0,0 @@ -package Geant4Sys -version v96r4p4 - -branches cmt doc - -# This package is essential for the cmt build -use G4config v* Geant4 - -# ============================================================================= -# =========== global libraries ================================================ -# ============================================================================= -use G4event v* Geant4 -use G4intercoms v* Geant4 -use G4particles v* Geant4 -use G4track v* Geant4 -use G4geometry v* Geant4 -use G4processes v* Geant4 -use G4physics_lists v* Geant4 -use G4tracking v* Geant4 -use G4global v* Geant4 -use G4materials v* Geant4 -use G4readout v* Geant4 -use G4digits_hits v* Geant4 -use G4graphics_reps v* Geant4 -use G4run v* Geant4 -use G4parmodels v* Geant4 -use G4GDML v* Geant4 - -# Visualization -use G4useVisUI v* Geant4 -use G4Tree v* Geant4 -use G4modeling v* Geant4 -use G4vis_management v* Geant4 -use G4RayTracer v* Geant4 -# Will not be built on Windows -use G4FR v* Geant4 -use G4VRML v* Geant4 -# Will not be built on Darwin nor Windows -use G4externals v* Geant4 -use G4OpenGL v* Geant4 - -# User Interface -# Will not be built on Darwin -use G4UIcommon v* Geant4 -use G4UIbasic v* Geant4 -# Will not be built on Darwin nor Windows -use G4UIGAG v* Geant4 - -# LHCb additional package (eg. for MC11 G4LHCblists) -use G4LHCblists v* Geant4 - -# G4 examples package - for checks -use G4analysis v* Geant4 -use G4examples v* Geant4 - -#============================================================================= -# ======== the end ============================================================ -# ============================================================================= -private - - -# Allow the generation of QMTest summary -apply_pattern QMTestSummarize diff --git a/LHCbG4PhysLists/src/G4EmStandardPhysics_LHCbTest.cc b/LHCbG4PhysLists/src/G4EmStandardPhysics_LHCbTest.cc index a7202a1ef8..2cdfd69c12 100644 --- a/LHCbG4PhysLists/src/G4EmStandardPhysics_LHCbTest.cc +++ b/LHCbG4PhysLists/src/G4EmStandardPhysics_LHCbTest.cc @@ -268,6 +268,8 @@ void G4EmStandardPhysics_LHCbTest::ConstructProcess() } else if (particleName == "B+" || particleName == "B-" || + particleName == "Bc+" || + particleName == "Bc-" || particleName == "D+" || particleName == "D-" || particleName == "Ds+" || @@ -277,6 +279,7 @@ void G4EmStandardPhysics_LHCbTest::ConstructProcess() particleName == "anti_deuteron" || particleName == "anti_lambda_c+" || particleName == "anti_omega-" || + particleName == "anti_omega_b-" || particleName == "anti_proton" || particleName == "anti_sigma_c+" || particleName == "anti_sigma_c++" || @@ -285,9 +288,11 @@ void G4EmStandardPhysics_LHCbTest::ConstructProcess() particleName == "anti_triton" || particleName == "anti_xi_c+" || particleName == "anti_xi-" || + particleName == "anti_xi_b-" || particleName == "deuteron" || particleName == "lambda_c+" || particleName == "omega-" || + particleName == "omega_b-" || particleName == "sigma_c+" || particleName == "sigma_c++" || particleName == "sigma+" || @@ -296,6 +301,7 @@ void G4EmStandardPhysics_LHCbTest::ConstructProcess() particleName == "tau-" || particleName == "triton" || particleName == "xi_c+" || + particleName == "xi_b-" || particleName == "xi-" ) { G4MuMultipleScattering* msc = new G4MuMultipleScattering(); diff --git a/LHCbG4PhysLists/src/G4EmStandardPhysics_option1LHCb.cc b/LHCbG4PhysLists/src/G4EmStandardPhysics_option1LHCb.cc index cbf905ede8..d98831b061 100644 --- a/LHCbG4PhysLists/src/G4EmStandardPhysics_option1LHCb.cc +++ b/LHCbG4PhysLists/src/G4EmStandardPhysics_option1LHCb.cc @@ -262,6 +262,8 @@ void G4EmStandardPhysics_option1LHCb::ConstructProcess() } else if (particleName == "B+" || particleName == "B-" || + particleName == "Bc+" || + particleName == "Bc-" || particleName == "D+" || particleName == "D-" || particleName == "Ds+" || @@ -271,6 +273,7 @@ void G4EmStandardPhysics_option1LHCb::ConstructProcess() particleName == "anti_deuteron" || particleName == "anti_lambda_c+" || particleName == "anti_omega-" || + particleName == "anti_omega_b-" || particleName == "anti_proton" || particleName == "anti_sigma_c+" || particleName == "anti_sigma_c++" || @@ -278,10 +281,12 @@ void G4EmStandardPhysics_option1LHCb::ConstructProcess() particleName == "anti_sigma-" || particleName == "anti_triton" || particleName == "anti_xi_c+" || + particleName == "anti_xi_b-" || particleName == "anti_xi-" || particleName == "deuteron" || particleName == "lambda_c+" || particleName == "omega-" || + particleName == "omega_b-" || particleName == "sigma_c+" || particleName == "sigma_c++" || particleName == "sigma+" || @@ -290,6 +295,7 @@ void G4EmStandardPhysics_option1LHCb::ConstructProcess() particleName == "tau-" || particleName == "triton" || particleName == "xi_c+" || + particleName == "xi_b-" || particleName == "xi-" ) { G4MuMultipleScattering* msc = new G4MuMultipleScattering(); diff --git a/LHCbG4PhysLists/src/G4EmStandardPhysics_option1NoApplyCuts.cc b/LHCbG4PhysLists/src/G4EmStandardPhysics_option1NoApplyCuts.cc index 1002e13b8a..3f4739cf8d 100644 --- a/LHCbG4PhysLists/src/G4EmStandardPhysics_option1NoApplyCuts.cc +++ b/LHCbG4PhysLists/src/G4EmStandardPhysics_option1NoApplyCuts.cc @@ -330,35 +330,41 @@ void G4EmStandardPhysics_option1NoApplyCuts::ConstructProcess() ph->RegisterProcess(new G4CoulombScattering(), particle); } else if (particleName == "B+" || - particleName == "B-" || - particleName == "D+" || - particleName == "D-" || - particleName == "Ds+" || - particleName == "Ds-" || - particleName == "anti_He3" || - particleName == "anti_alpha" || - particleName == "anti_deuteron" || - particleName == "anti_lambda_c+" || - particleName == "anti_omega-" || - particleName == "anti_sigma_c+" || - particleName == "anti_sigma_c++" || - particleName == "anti_sigma+" || - particleName == "anti_sigma-" || - particleName == "anti_triton" || - particleName == "anti_xi_c+" || - particleName == "anti_xi-" || - particleName == "deuteron" || - particleName == "lambda_c+" || - particleName == "omega-" || - particleName == "sigma_c+" || - particleName == "sigma_c++" || - particleName == "sigma+" || - particleName == "sigma-" || - particleName == "tau+" || - particleName == "tau-" || - particleName == "triton" || - particleName == "xi_c+" || - particleName == "xi-" ) { + particleName == "B-" || + particleName == "Bc+" || + particleName == "Bc-" || + particleName == "D+" || + particleName == "D-" || + particleName == "Ds+" || + particleName == "Ds-" || + particleName == "anti_He3" || + particleName == "anti_alpha" || + particleName == "anti_deuteron" || + particleName == "anti_lambda_c+" || + particleName == "anti_omega-" || + particleName == "anti_omega_b-" || + particleName == "anti_sigma_c+" || + particleName == "anti_sigma_c++" || + particleName == "anti_sigma+" || + particleName == "anti_sigma-" || + particleName == "anti_triton" || + particleName == "anti_xi_c+" || + particleName == "anti_xi_b-" || + particleName == "anti_xi-" || + particleName == "deuteron" || + particleName == "lambda_c+" || + particleName == "omega-" || + particleName == "omega_b-" || + particleName == "sigma_c+" || + particleName == "sigma_c++" || + particleName == "sigma+" || + particleName == "sigma-" || + particleName == "tau+" || + particleName == "tau-" || + particleName == "triton" || + particleName == "xi_c+" || + particleName == "xi_b-" || + particleName == "xi-" ) { ph->RegisterProcess(hmsc, particle); ph->RegisterProcess(new G4hIonisation(), particle); diff --git a/LHCbG4Tests/G4HadronicXSectionsTest/scripts/G4HadronicXSectionsTest.py b/LHCbG4Tests/G4HadronicXSectionsTest/scripts/G4HadronicXSectionsTest.py index ff0a8e9425..ef81779287 100755 --- a/LHCbG4Tests/G4HadronicXSectionsTest/scripts/G4HadronicXSectionsTest.py +++ b/LHCbG4Tests/G4HadronicXSectionsTest/scripts/G4HadronicXSectionsTest.py @@ -18,6 +18,8 @@ from array import array from ROOT import * from tempfile import NamedTemporaryFile +gROOT.SetBatch(True) + phys_lists = ['FTFP', 'FTFP_BERT', 'QGSP_BERT'] particles = ['pi+', 'pi-', 'kaon+', 'kaon-', 'proton', 'anti_proton'] targets = ['Al', 'Be', 'Si'] diff --git a/LHCbG4Tests/G4MScInThinLayerTest/scripts/G4MScInThinLayerTest.py b/LHCbG4Tests/G4MScInThinLayerTest/scripts/G4MScInThinLayerTest.py index 9ec86d6bd2..f3b4c32f59 100755 --- a/LHCbG4Tests/G4MScInThinLayerTest/scripts/G4MScInThinLayerTest.py +++ b/LHCbG4Tests/G4MScInThinLayerTest/scripts/G4MScInThinLayerTest.py @@ -21,7 +21,7 @@ def create_cfg_file(n_runs=1000, name='G4MScInThinLayerTest.mac'): '/testem/det/setAbsMat Silicon\n' + '/testem/det/setAbsThick 300 um\n' + '/testem/det/setAbsYZ 42 mm\n' + - '/testem/phys/addPhysics emstandard_opt1nocuts\n' + + '/testem/phys/addPhysics emstandard_opt2\n' + '/run/setCut 5 mm\n') energies = [1, 2, 3, 4, 5, 7, 9, 12, 15, 20, 25, 30, 40] diff --git a/LHCbG4Tests/G4MScInThinLayerTest/src/PhysicsList.cc b/LHCbG4Tests/G4MScInThinLayerTest/src/PhysicsList.cc index c6f47b6a32..4b7a742be8 100644 --- a/LHCbG4Tests/G4MScInThinLayerTest/src/PhysicsList.cc +++ b/LHCbG4Tests/G4MScInThinLayerTest/src/PhysicsList.cc @@ -208,7 +208,7 @@ void PhysicsList::AddPhysicsList(const G4String& name) fEmPhysicsList = new G4EmStandardPhysics_option1(); } else if (name == "emstandard_opt2") { - + std::cout << "Passed 'emstandard_opt2' in Physicslist.cc" << std::endl; fEmName = name; delete fEmPhysicsList; fEmPhysicsList = new G4EmStandardPhysics_option2(); @@ -226,8 +226,9 @@ void PhysicsList::AddPhysicsList(const G4String& name) fEmPhysicsList = new G4EmStandardPhysics_option4(); } else if (name == "emstandard_opt1nocuts") { + fEmName = name; - std::cout << "Passed if statement in Physicslist.cc" << std::endl; + std::cout << "Passed 'emstandard_opt1nocuts' in Physicslist.cc" << std::endl; delete fEmPhysicsList; fEmPhysicsList = new G4EmStandardPhysics_option1NoApplyCuts(); diff --git a/LHCbG4Tests/G4SamplingCaloTest/scripts/G4SamplingCaloTest.py b/LHCbG4Tests/G4SamplingCaloTest/scripts/G4SamplingCaloTest.py index 78ab9c55b9..d7158f6417 100755 --- a/LHCbG4Tests/G4SamplingCaloTest/scripts/G4SamplingCaloTest.py +++ b/LHCbG4Tests/G4SamplingCaloTest/scripts/G4SamplingCaloTest.py @@ -28,7 +28,7 @@ def create_cfg_file(n_evts=10000, name='G4SamplingCaloTest.mac'): '/testem/det/setAbsor 2 Scintillator 4 mm\n' + '/testem/det/setSizeYZ 20 cm\n' + '#\n' + - '/testem/phys/addPhysics emstandard_opt1nocuts\n' + + '/testem/phys/addPhysics emstandard_opt2\n' + '#\n' + '#/gun/particle e-\n' + '#/gun/energy 100 GeV\n' + diff --git a/LHCbG4Tests/G4SamplingCaloTest/src/PhysicsList.cc b/LHCbG4Tests/G4SamplingCaloTest/src/PhysicsList.cc index c09e9ca4c7..9ed1579a10 100644 --- a/LHCbG4Tests/G4SamplingCaloTest/src/PhysicsList.cc +++ b/LHCbG4Tests/G4SamplingCaloTest/src/PhysicsList.cc @@ -169,6 +169,7 @@ void PhysicsList::AddPhysicsList(const G4String& name) } else if (name == "emstandard_opt2") { + std::cout << "Passed 'emstandard_opt2' in Physicslist.cc" << std::endl; fEmName = name; delete fEmPhysicsList; fEmPhysicsList = new G4EmStandardPhysics_option2(); @@ -189,7 +190,7 @@ void PhysicsList::AddPhysicsList(const G4String& name) // LHCb else if (name == "emstandard_opt1nocuts") { fEmName = name; - std::cout << "Passed if statement in Physicslist.cc" << std::endl; + std::cout << "Passed 'emstandard_opt1nocuts' in Physicslist.cc" << std::endl; delete fEmPhysicsList; fEmPhysicsList = new G4EmStandardPhysics_option1NoApplyCuts(); } diff --git a/ReleaseNotes/v106r2.md b/ReleaseNotes/v106r2.md new file mode 100644 index 0000000000..750c9d209d --- /dev/null +++ b/ReleaseNotes/v106r2.md @@ -0,0 +1,13 @@ +2020-06-15 Geant4 v106r2 +=== +This release is based on `GEANT4 r10.6.2`, uses `LCG 96b` and `Geant4Files v106r1`. + +This version is released on `Sim10` branch. + +## Latest Changes + +#### LHCb G4 Physics Lists & G4 stock EMStandardOpt2 +**[MR !57] Added more charged b-hadrons as ionising particles + +#### LHCb G4 Standalone Tests +**[MR !58] Switch to G4 stock EMStandardOpt2 physics list -- GitLab