From 53620ed3d8ee3cdbab5990b6fc2421b71f4e1b0d Mon Sep 17 00:00:00 2001 From: Marco Del Tutto Date: Wed, 26 Feb 2025 10:59:32 -0600 Subject: [PATCH 1/8] Update GeomScan file to flux L and gdml 02_03 --- sbndcode/LArSoftConfigurations/gen/genie_sbnd.fcl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sbndcode/LArSoftConfigurations/gen/genie_sbnd.fcl b/sbndcode/LArSoftConfigurations/gen/genie_sbnd.fcl index 7cd0e4787..61672d575 100644 --- a/sbndcode/LArSoftConfigurations/gen/genie_sbnd.fcl +++ b/sbndcode/LArSoftConfigurations/gen/genie_sbnd.fcl @@ -376,7 +376,7 @@ sbnd_genie_simple_rockbox: { # As we are changing the FV we need to recalculate the maximum path lengths # This file was generated by running with: # GeomScan: "flux: 10000 1.1 1" - GeomScan: "file: GENIE/sbnd_rock_maxpathlength_fluxI_gdmlv02_00.xml" + GeomScan: "file: GENIE/sbnd_rock_maxpathlength_fluxL_gdmlv02_03.xml" } From 4617947237e98b3db91402d779d2785935d891c5 Mon Sep 17 00:00:00 2001 From: Marco Del Tutto Date: Wed, 26 Feb 2025 10:25:46 -0600 Subject: [PATCH 2/8] Add check to ensure the GeomScan is compatible with current gdml and flux files. --- test/CMakeLists.txt | 1 + test/GENIE/CMakeLists.txt | 5 ++++ test/GENIE/check_genie_geom_scan.py | 40 +++++++++++++++++++++++++++++ 3 files changed, 46 insertions(+) create mode 100644 test/GENIE/CMakeLists.txt create mode 100644 test/GENIE/check_genie_geom_scan.py diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index a731aec44..763dee8cc 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -8,6 +8,7 @@ cet_enable_asserts() add_subdirectory(Geometry) add_subdirectory(LArSoftConfigurations) add_subdirectory(JobConfigurations) +add_subdirectory(GENIE) #add_subdirectory(CRT) add_subdirectory(fcl) diff --git a/test/GENIE/CMakeLists.txt b/test/GENIE/CMakeLists.txt new file mode 100644 index 000000000..d49554c1d --- /dev/null +++ b/test/GENIE/CMakeLists.txt @@ -0,0 +1,5 @@ +cet_test(CheckGENIEGeomScan HANDBUILT + TEST_EXEC python + TEST_ARGS ${CMAKE_CURRENT_SOURCE_DIR}/check_genie_geom_scan.py + DATAFILES check_genie_geom_scan.py + diff --git a/test/GENIE/check_genie_geom_scan.py b/test/GENIE/check_genie_geom_scan.py new file mode 100644 index 000000000..27307fbfa --- /dev/null +++ b/test/GENIE/check_genie_geom_scan.py @@ -0,0 +1,40 @@ +import fhicl + +pset = fhicl.make_pset('prodoverlay_corsika_cosmics_proton_genie_rockbox_sbnd.fcl') + +# +# Extract flux and GDML used to make the GeomScan file +# +pset_geom_scan = pset['physics']['producers']['generator']['GeomScan'] + +geom_scan_flux_config = pset_geom_scan.split('flux')[1][0] +geom_scan_gdml_version = pset_geom_scan.split('gdml')[1][:6] + +print('Using GeomScan file:', pset_geom_scan) +print('\t -> using flux configuration:', geom_scan_flux_config) +print('\t -> using gdml version:', geom_scan_gdml_version) + + +# +# Extract flux and GDML set in services and GENIE +# +pset_gdml = pset['services']['Geometry']['GDML'] +pset_flux = pset['physics']['producers']['generator']['FluxSearchPaths'] + +flux_config = pset_flux.split('config')[1][0] +gdml_version = pset_gdml.split('sbnd_')[1][:6] + +print('Using:') +print('\t -> gdml version:', gdml_version) +print('\t -> flux configuration:', flux_config) + +# +# Check that the two are the same, if not, need to regenerate the GeomScan file +# +message = 'Please regenerate the GeomScan file. Instructions: link.' + +assert geom_scan_flux_config == flux_config, f"Have you updated/changed the flux files? {message}" + +assert geom_scan_gdml_version == gdml_version, f"Have you updated/changed the GDML file? {message}" + + From eb14c1d9d73a0d433c99185eac53d4d066bb22b2 Mon Sep 17 00:00:00 2001 From: Marco Del Tutto Date: Wed, 26 Feb 2025 13:17:25 -0600 Subject: [PATCH 3/8] Add fhiclpy dependency --- ups/product_deps | 1 + 1 file changed, 1 insertion(+) diff --git a/ups/product_deps b/ups/product_deps index 4ca07006f..097409170 100644 --- a/ups/product_deps +++ b/ups/product_deps @@ -257,6 +257,7 @@ sbncode v10_04_06 - cetmodules v3_24_01 - only_for_build sbnd_data v01_28_00 - optional sbndutil v10_04_05 - optional +fhiclpy v04_03_05 - end_product_list #################################### From 32a189d40eda27c4c79811d18818a5a02a34836e Mon Sep 17 00:00:00 2001 From: Marco Del Tutto Date: Wed, 26 Feb 2025 16:27:35 -0600 Subject: [PATCH 4/8] Resolve conflicts --- ups/product_deps | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/ups/product_deps b/ups/product_deps index 097409170..8eafa4722 100644 --- a/ups/product_deps +++ b/ups/product_deps @@ -257,7 +257,7 @@ sbncode v10_04_06 - cetmodules v3_24_01 - only_for_build sbnd_data v01_28_00 - optional sbndutil v10_04_05 - optional -fhiclpy v04_03_05 - +fhiclpy v4_03_05 - end_product_list #################################### @@ -312,11 +312,11 @@ end_product_list # case it is optional. # #################################### -qualifier sbncode sbndutil sbnd_data notes -c14:debug c14:debug c14:debug -nq- -c14:prof c14:prof c14:prof -nq- -e26:debug e26:debug e26:debug -nq- -e26:prof e26:prof e26:prof -nq- +qualifier sbncode sbndutil sbnd_data fhiclpy notes +c14:debug c14:debug c14:debug -nq- c14:debug +c14:prof c14:prof c14:prof -nq- c14:prof +e26:debug e26:debug e26:debug -nq- e26:debug +e26:prof e26:prof e26:prof -nq- e26:prof end_qualifier_list #################################### From 67c61a3fef7518daaae4e632ac11ae2b7aeca7f8 Mon Sep 17 00:00:00 2001 From: Brinden Carlson Date: Thu, 20 Mar 2025 10:41:20 -0500 Subject: [PATCH 5/8] Update to sbncode v10_04_06_01 --- CMakeLists.txt | 4 ++-- ups/product_deps | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 13eb1ae25..fbf8eaec5 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -15,12 +15,12 @@ cmake_minimum_required(VERSION 3.20 FATAL_ERROR) -set(${PROJECT_NAME}_CMAKE_PROJECT_VERSION_STRING 10.04.05) +set(${PROJECT_NAME}_CMAKE_PROJECT_VERSION_STRING 10.04.06.01) find_package(cetmodules REQUIRED) project(sbndcode LANGUAGES CXX) # for CI: -# project(sbndcode VERSION 10.04.05) +# project(sbndcode VERSION 10.04.06.01) message(STATUS "\n") message(STATUS "================================= ${PROJECT_NAME} =================================") diff --git a/ups/product_deps b/ups/product_deps index 8eafa4722..e5e34d7ca 100644 --- a/ups/product_deps +++ b/ups/product_deps @@ -253,10 +253,10 @@ wpdir product_dir wire-cell-cfg # #################################### product version qual flags -sbncode v10_04_06 - +sbncode v10_04_06_01 - cetmodules v3_24_01 - only_for_build sbnd_data v01_28_00 - optional -sbndutil v10_04_05 - optional +sbndutil v10_04_06_01 - optional fhiclpy v4_03_05 - end_product_list #################################### From 1d11f8a1eee56e3d633fbd4195d34c98820915b9 Mon Sep 17 00:00:00 2001 From: Marco Del Tutto Date: Mon, 24 Mar 2025 11:30:47 -0500 Subject: [PATCH 6/8] Add missing ) --- test/GENIE/CMakeLists.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/test/GENIE/CMakeLists.txt b/test/GENIE/CMakeLists.txt index d49554c1d..3489662f0 100644 --- a/test/GENIE/CMakeLists.txt +++ b/test/GENIE/CMakeLists.txt @@ -2,4 +2,5 @@ cet_test(CheckGENIEGeomScan HANDBUILT TEST_EXEC python TEST_ARGS ${CMAKE_CURRENT_SOURCE_DIR}/check_genie_geom_scan.py DATAFILES check_genie_geom_scan.py +) From 86fc8c012aa2b4e9232210fc5080809ab0233ee3 Mon Sep 17 00:00:00 2001 From: Marco Del Tutto Date: Mon, 24 Mar 2025 11:31:09 -0500 Subject: [PATCH 7/8] Add fcl file to generate GENIE geomscan file --- .../gen/make_genie_geomscan_file_sbnd.fcl | 21 +++++++++++++++++++ test/GENIE/check_genie_geom_scan.py | 2 +- 2 files changed, 22 insertions(+), 1 deletion(-) create mode 100644 sbndcode/LArSoftConfigurations/gen/make_genie_geomscan_file_sbnd.fcl diff --git a/sbndcode/LArSoftConfigurations/gen/make_genie_geomscan_file_sbnd.fcl b/sbndcode/LArSoftConfigurations/gen/make_genie_geomscan_file_sbnd.fcl new file mode 100644 index 000000000..b0835f847 --- /dev/null +++ b/sbndcode/LArSoftConfigurations/gen/make_genie_geomscan_file_sbnd.fcl @@ -0,0 +1,21 @@ +# This FHiCL file generates the geomscal file needed for GENIE rockbox. +# Author: Marco Del Tutto (mdeltutt@fnal.gov) +# +# Run with: +# +# bash> lar -c make_genie_geomscan_file_sbnd.fcl -n 1 +# +# This will generate a file called "maxpathlength.xml". Rename this file +# to include the current flux config and gdml version. For example, +# for flux config L and gdml v02_03, assign it the following name: +# +# bash> mv maxpathlength.xml sbnd_rock_maxpathlength_fluxL_gdmlv02_03.xml +# +# Lastly, this file needs to live in sbnd_data. Specifically, in +# sbnd_data/GENIE/. Ask the currect release manager to copy your +# file in sbnd_data/GENIE/ and tag a new sbnd_data version. + +#include "prodgenie_corsika_proton_rockbox_sbnd.fcl" + +physics.producers.generator.GeomScan: "flux: 10000 1.1 1" + diff --git a/test/GENIE/check_genie_geom_scan.py b/test/GENIE/check_genie_geom_scan.py index 27307fbfa..0658e8adc 100644 --- a/test/GENIE/check_genie_geom_scan.py +++ b/test/GENIE/check_genie_geom_scan.py @@ -31,7 +31,7 @@ # # Check that the two are the same, if not, need to regenerate the GeomScan file # -message = 'Please regenerate the GeomScan file. Instructions: link.' +message = 'Please regenerate the GeomScan file. Instructions are in fcl file make_genie_geomscan_file_sbnd.fcl.' assert geom_scan_flux_config == flux_config, f"Have you updated/changed the flux files? {message}" From 77b8935a15f281cf5980eb4015abc5fa2cbec31b Mon Sep 17 00:00:00 2001 From: Marco Del Tutto Date: Thu, 27 Mar 2025 10:37:26 -0500 Subject: [PATCH 8/8] Update check_genie_geom_scan.py with new fcl file --- test/GENIE/check_genie_geom_scan.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/GENIE/check_genie_geom_scan.py b/test/GENIE/check_genie_geom_scan.py index 0658e8adc..d86231085 100644 --- a/test/GENIE/check_genie_geom_scan.py +++ b/test/GENIE/check_genie_geom_scan.py @@ -1,6 +1,6 @@ import fhicl -pset = fhicl.make_pset('prodoverlay_corsika_cosmics_proton_genie_rockbox_sbnd.fcl') +pset = fhicl.make_pset('prodgenie_corsika_proton_rockbox_sbnd.fcl') # # Extract flux and GDML used to make the GeomScan file