From ac4afce813f1401bf72f2aedaeb01fb088679a1c Mon Sep 17 00:00:00 2001 From: Valerii Kholoimov Date: Tue, 21 Jul 2026 11:46:00 +0200 Subject: [PATCH 1/2] test: add FairShip regression test suite Add reusable regression-test harnesses, reference outputs, CTest integration, and documentation. Isolate lint tooling and preserve generated reference files during formatting checks. --- .pre-commit-config.yaml | 1 + README.md | 15 + gconfig/DecayConfigTEvtGen.C | 8 + macro/run_simScript.py | 4 + pixi.lock | 98 +- pixi.toml | 6 +- shipgen/DPPythia8Generator.cxx | 5 +- shipgen/DPPythia8Generator.h | 2 + shipgen/FixedTargetGenerator.cxx | 6 +- shipgen/HNLPythia8Generator.cxx | 5 +- shipgen/HNLPythia8Generator.h | 6 +- shipgen/Pythia8Generator.cxx | 7 +- shipgen/Pythia8Generator.h | 2 + shipgen/TEvtGenDecayer.cxx | 2 +- shipgen/TEvtGenDecayer.h | 2 + stubs/ROOT/__init__.pyi | 3 +- tests/CMakeLists.txt | 62 +- tests/README.md | 179 ++ tests/fairship_tests/README.md | 99 + tests/fairship_tests/__init__.py | 2 + tests/fairship_tests/harness.py | 324 +++ tests/fairship_tests/references/ci-sim.txt | 1887 +++++++++++++++++ .../references/evtgen-summary.txt | 1101 ++++++++++ .../fairship_tests/references/muonback-io.txt | 497 +++++ .../references/muonback-summary.txt | 707 ++++++ .../references/particle-gun.txt | 470 ++++ .../references/pythia8-summary.txt | 785 +++++++ .../references/reconstruction.txt | 97 + .../references/tracking-benchmark.txt | 544 +++++ tests/fairship_tests/regenerate_references.sh | 8 + tests/fairship_tests/scripts/ci-sim.sh | 18 + .../fairship_tests/scripts/evtgen-summary.sh | 16 + tests/fairship_tests/scripts/muonback-io.sh | 22 + .../scripts/muonback-summary.sh | 23 + tests/fairship_tests/scripts/particle-gun.sh | 22 + .../fairship_tests/scripts/pythia8-summary.sh | 16 + .../fairship_tests/scripts/reconstruction.sh | 13 + .../scripts/tracking-benchmark.sh | 21 + tests/fairship_tests/skip_patterns.conf | 52 + tests/fairship_tests/test_cases.yaml | 13 + tests/test_data_class_io.cxx | 21 +- tests/test_rntuple_io.cxx | 26 +- 42 files changed, 7065 insertions(+), 132 deletions(-) create mode 100644 tests/README.md create mode 100644 tests/fairship_tests/README.md create mode 100644 tests/fairship_tests/__init__.py create mode 100644 tests/fairship_tests/harness.py create mode 100644 tests/fairship_tests/references/ci-sim.txt create mode 100644 tests/fairship_tests/references/evtgen-summary.txt create mode 100644 tests/fairship_tests/references/muonback-io.txt create mode 100644 tests/fairship_tests/references/muonback-summary.txt create mode 100644 tests/fairship_tests/references/particle-gun.txt create mode 100644 tests/fairship_tests/references/pythia8-summary.txt create mode 100644 tests/fairship_tests/references/reconstruction.txt create mode 100644 tests/fairship_tests/references/tracking-benchmark.txt create mode 100755 tests/fairship_tests/regenerate_references.sh create mode 100755 tests/fairship_tests/scripts/ci-sim.sh create mode 100755 tests/fairship_tests/scripts/evtgen-summary.sh create mode 100755 tests/fairship_tests/scripts/muonback-io.sh create mode 100755 tests/fairship_tests/scripts/muonback-summary.sh create mode 100755 tests/fairship_tests/scripts/particle-gun.sh create mode 100755 tests/fairship_tests/scripts/pythia8-summary.sh create mode 100755 tests/fairship_tests/scripts/reconstruction.sh create mode 100755 tests/fairship_tests/scripts/tracking-benchmark.sh create mode 100644 tests/fairship_tests/skip_patterns.conf create mode 100644 tests/fairship_tests/test_cases.yaml diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index bf15efc52b..2e1cae97e6 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -4,6 +4,7 @@ # # pixi run install-hooks # one-off: install the git hooks # pixi run lint # run all hooks on all files +exclude: ^tests/fairship_tests/references/ repos: # prek runs these as native Rust builtins (no environment, fully portable). - repo: https://github.com/pre-commit/pre-commit-hooks diff --git a/README.md b/README.md index f2346c21d0..0c4d5f95ee 100644 --- a/README.md +++ b/README.md @@ -11,6 +11,7 @@ - [Using pixi](#using-pixi) - [Run instructions](#run-instructions) - [Docker instructions](#docker-instructions) + - [Testing](#testing) - [Troubleshooting information](#troubleshooting-information) - [Documentation](#documentation) - [License](#license) @@ -174,6 +175,20 @@ desirable. ``` The option `-e DISPLAY=unix$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix` forwards graphics from the docker to your local system (similar to `ssh -X`). The option `-v /local_workdir:/image_workdir` mounts `/local_workdir` on the local system as `/image_workdir` within docker. +## Testing + +Build and run the complete CTest suite, including the C++ and terminal-output +regression tests, with: + +```bash +pixi run test +``` + +Some regression tests download remote input data and therefore require network +access. See [`tests/README.md`](tests/README.md) for commands that select +individual tests or only the regression suite, and for instructions on adding +tests and regenerating reference output. + ## Troubleshooting information Please see the wiki for [FAQ](https://github.com/ShipSoft/FairShip/wiki/FAQ-and-common-issues#faq)s and [common issues](https://github.com/ShipSoft/FairShip/wiki/FAQ-and-common-issues#common-issues). diff --git a/gconfig/DecayConfigTEvtGen.C b/gconfig/DecayConfigTEvtGen.C index 36a24a3dcf..218b422fac 100644 --- a/gconfig/DecayConfigTEvtGen.C +++ b/gconfig/DecayConfigTEvtGen.C @@ -9,6 +9,14 @@ void DecayConfig() { // Create the custom EvtGen decayer TEvtGenDecayer* decayer = new TEvtGenDecayer(); + // run_simScript exports the resolved command-line seed before VMC loads this + // macro. Pass it explicitly so initialization cannot advance the ROOT RNG + // and silently change the EvtGen/Pythia8-decayer seed. + TString RandomSeed = gSystem->Getenv("FAIRSHIP_RANDOM_SEED"); + if (!RandomSeed.IsNull()) { + decayer->SetSeed(static_cast(RandomSeed.Atoll())); + } + // Configure EvtGen files using EVTGENDATA TString DecayFile = TString(gSystem->Getenv("EVTGENDATA")) + "/DECAY.DEC"; TString ParticleFile = TString(gSystem->Getenv("EVTGENDATA")) + "/evt.pdl"; diff --git a/macro/run_simScript.py b/macro/run_simScript.py index b92868c612..871b6d1be2 100755 --- a/macro/run_simScript.py +++ b/macro/run_simScript.py @@ -479,6 +479,7 @@ def _fraction_0_1(value: str) -> float: if seed > 900000000: seed = seed % 900000000 ROOT.gRandom.SetSeed(seed) +os.environ["FAIRSHIP_RANDOM_SEED"] = str(seed) shipRoot_conf.configure(0) # load basic libraries, prepare atexit for python if options.reproducible and options.debug == 0: ROOT.gErrorIgnoreLevel = ROOT.kWarning @@ -616,6 +617,7 @@ def _fraction_0_1(value: str) -> float: sys.exit() if HNL or options.RPVSUSY or options.DarkPhoton: assert P8gen is not None # guaranteed by the three branches above + P8gen.SetSeed(seed) P8gen.SetSmearBeam(options.SmearBeam * u.cm) # Gaussian beam smearing P8gen.SetPaintRadius(options.PaintBeam * u.cm) # beam painting radius P8gen.SetLmin(ship_geo.decayVolume.z0 - ship_geo.target.z0) @@ -640,6 +642,7 @@ def _fraction_0_1(value: str) -> float: ) # Uniform distribution in x/y on the target (0.5 cm of margin at both sides) primGen.SmearVertexXY(True) P8gen = ROOT.Pythia8Generator() + P8gen.SetSeed(seed) P8gen.UseExternalFile(inputFile, options.firstEvent) # Use geometry constants instead of fragile TGeo navigation P8gen.SetTargetCoordinates(ship_geo.target.z0, ship_geo.target.z0 + ship_geo.target.length) @@ -651,6 +654,7 @@ def _fraction_0_1(value: str) -> float: if options.fixedTarget: HNL = False P8gen = ROOT.FixedTargetGenerator() + P8gen.SetSeed(seed) P8gen.SetZoffset(options.z_offset * u.mm) # Use geometry constants instead of fragile TGeo navigation P8gen.SetTargetCoordinates(ship_geo.target.z0, ship_geo.target.z0 + ship_geo.target.length) diff --git a/pixi.lock b/pixi.lock index 8e6960abbc..4826f3defc 100644 --- a/pixi.lock +++ b/pixi.lock @@ -283,7 +283,6 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/cached_property-1.5.2-pyha770c72_2.conda - conda: https://prefix.dev/conda-forge/noarch/certifi-2026.6.17-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/charset-normalizer-3.4.9-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/comm-0.2.3-pyhe01879c_0.conda - conda: https://prefix.dev/conda-forge/noarch/compiler-rt22_linux-64-22.1.8-hffcefe0_1.conda - conda: https://prefix.dev/conda-forge/noarch/compiler-rt_linux-64-22.1.8-ha770c72_1.conda @@ -292,7 +291,6 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/decorator-5.3.1-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/defusedxml-0.7.1-pyhd8ed1ab_0.tar.bz2 - conda: https://prefix.dev/conda-forge/noarch/exceptiongroup-1.3.1-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/execnet-2.1.2-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/executing-2.2.1-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2 - conda: https://prefix.dev/conda-forge/noarch/font-ttf-inconsolata-3.000-h77eed37_0.tar.bz2 @@ -321,7 +319,6 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/hyperframe-6.1.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/idna-3.18-pyhcf101f3_0.conda - conda: https://prefix.dev/conda-forge/noarch/importlib-metadata-9.0.0-pyhcf101f3_0.conda - - conda: https://prefix.dev/conda-forge/noarch/iniconfig-2.3.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/ipykernel-7.3.0-pyha191276_0.conda - conda: https://prefix.dev/conda-forge/noarch/ipyparallel-9.2.0-pyhcf101f3_0.conda - conda: https://prefix.dev/conda-forge/noarch/ipython-9.15.0-pyh53cf698_0.conda @@ -364,7 +361,6 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/parso-0.8.7-pyhcf101f3_0.conda - conda: https://prefix.dev/conda-forge/noarch/pexpect-4.9.0-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/platformdirs-4.10.1-pyhcf101f3_0.conda - - conda: https://prefix.dev/conda-forge/noarch/pluggy-1.6.0-pyhf9edf01_1.conda - conda: https://prefix.dev/conda-forge/noarch/prometheus_client-0.25.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/prompt-toolkit-3.0.52-pyha770c72_0.conda - conda: https://prefix.dev/conda-forge/noarch/ptyprocess-0.7.0-pyhd8ed1ab_1.conda @@ -373,8 +369,6 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/pygments-2.20.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/pyparsing-3.3.2-pyhcf101f3_0.conda - conda: https://prefix.dev/conda-forge/noarch/pysocks-1.7.1-pyha55dd90_7.conda - - conda: https://prefix.dev/conda-forge/noarch/pytest-9.1.1-pyhc364b38_2.conda - - conda: https://prefix.dev/conda-forge/noarch/pytest-xdist-3.8.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/python-dateutil-2.9.0.post0-pyhe01879c_2.conda - conda: https://prefix.dev/conda-forge/noarch/python-fastjsonschema-2.21.2-pyhe01879c_0.conda - conda: https://prefix.dev/conda-forge/noarch/python-gil-3.13.14-h4df99d1_100.conda @@ -719,7 +713,6 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/docopt-0.6.2-pyhd8ed1ab_2.conda - conda: https://prefix.dev/conda-forge/noarch/entrypoints-0.4-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/exceptiongroup-1.3.1-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/execnet-2.1.2-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/executing-2.2.1-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2 - conda: https://prefix.dev/conda-forge/noarch/font-ttf-inconsolata-3.000-h77eed37_0.tar.bz2 @@ -744,7 +737,6 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/hyperframe-6.1.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/idna-3.18-pyhcf101f3_0.conda - conda: https://prefix.dev/conda-forge/noarch/importlib-metadata-9.0.0-pyhcf101f3_0.conda - - conda: https://prefix.dev/conda-forge/noarch/iniconfig-2.3.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/ipykernel-6.29.5-pyh3099207_0.conda - conda: https://prefix.dev/conda-forge/noarch/ipyparallel-9.2.0-pyhcf101f3_0.conda - conda: https://prefix.dev/conda-forge/noarch/ipython-9.15.0-pyh53cf698_0.conda @@ -782,7 +774,6 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/pathspec-1.1.1-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/pexpect-4.9.0-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/platformdirs-4.10.1-pyhcf101f3_0.conda - - conda: https://prefix.dev/conda-forge/noarch/pluggy-1.6.0-pyhf9edf01_1.conda - conda: https://prefix.dev/conda-forge/noarch/pre-commit-hooks-6.0.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/prometheus_client-0.25.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/prompt-toolkit-3.0.51-pyha770c72_0.conda @@ -794,8 +785,6 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/pykwalify-1.8.0-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/pyparsing-3.3.2-pyhcf101f3_0.conda - conda: https://prefix.dev/conda-forge/noarch/pysocks-1.7.1-pyha55dd90_7.conda - - conda: https://prefix.dev/conda-forge/noarch/pytest-9.1.1-pyhc364b38_2.conda - - conda: https://prefix.dev/conda-forge/noarch/pytest-xdist-3.8.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/python-dateutil-2.9.0.post0-pyhe01879c_2.conda - conda: https://prefix.dev/conda-forge/noarch/python-debian-1.1.1-pyhcf101f3_0.conda - conda: https://prefix.dev/conda-forge/noarch/python-fastjsonschema-2.21.2-pyhe01879c_0.conda @@ -919,7 +908,7 @@ packages: license: MIT license_family: MIT purls: - - pkg:pypi/ast-serialize?source=hash-mapping + - pkg:pypi/ast-serialize?source=compressed-mapping run_exports: {} size: 1120486 timestamp: 1782863830347 @@ -986,7 +975,7 @@ packages: - zstd >=1.5.7,<1.6.0a0 license: BSD-3-Clause AND MIT AND EPL-2.0 purls: - - pkg:pypi/backports-zstd?source=compressed-mapping + - pkg:pypi/backports-zstd?source=hash-mapping run_exports: {} size: 242845 timestamp: 1781450812380 @@ -1558,7 +1547,7 @@ packages: license: MIT license_family: MIT purls: - - pkg:pypi/debugpy?source=compressed-mapping + - pkg:pypi/debugpy?source=hash-mapping run_exports: {} size: 2825625 timestamp: 1780390153372 @@ -3929,7 +3918,7 @@ packages: license: BSD-3-Clause license_family: BSD purls: - - pkg:pypi/numpy?source=compressed-mapping + - pkg:pypi/numpy?source=hash-mapping run_exports: weak: - numpy >=1.23,<3 @@ -5914,18 +5903,6 @@ packages: run_exports: {} size: 21333 timestamp: 1763918099466 -- conda: https://prefix.dev/conda-forge/noarch/execnet-2.1.2-pyhd8ed1ab_0.conda - sha256: 1acc6a420efc5b64c384c1f35f49129966f8a12c93b4bb2bdc30079e5dc9d8a8 - md5: a57b4be42619213a94f31d2c69c5dda7 - depends: - - python >=3.10 - license: MIT - license_family: MIT - purls: - - pkg:pypi/execnet?source=hash-mapping - run_exports: {} - size: 39499 - timestamp: 1762974150770 - conda: https://prefix.dev/conda-forge/noarch/executing-2.2.1-pyhd8ed1ab_0.conda sha256: 210c8165a58fdbf16e626aac93cc4c14dbd551a01d1516be5ecad795d2422cad md5: ff9efb7f7469aed3c4a8106ffa29593c @@ -6219,18 +6196,6 @@ packages: run_exports: {} size: 34766 timestamp: 1779714582554 -- conda: https://prefix.dev/conda-forge/noarch/iniconfig-2.3.0-pyhd8ed1ab_0.conda - sha256: e1a9e3b1c8fe62dc3932a616c284b5d8cbe3124bbfbedcf4ce5c828cb166ee19 - md5: 9614359868482abba1bd15ce465e3c42 - depends: - - python >=3.10 - license: MIT - license_family: MIT - purls: - - pkg:pypi/iniconfig?source=hash-mapping - run_exports: {} - size: 13387 - timestamp: 1760831448842 - conda: https://prefix.dev/conda-forge/noarch/ipykernel-6.29.5-pyh3099207_0.conda sha256: 33cfd339bb4efac56edf93474b37ddc049e08b1b4930cf036c893cc1f5a1f32a md5: b40131ab6a36ac2c09b7c57d4d3fbf99 @@ -6558,7 +6523,7 @@ packages: license: BSD-3-Clause license_family: BSD purls: - - pkg:pypi/jupyter-client?source=compressed-mapping + - pkg:pypi/jupyter-client?source=hash-mapping run_exports: {} size: 117954 timestamp: 1781019994076 @@ -6677,7 +6642,7 @@ packages: license: BSD-3-Clause license_family: BSD purls: - - pkg:pypi/jupyter-server?source=compressed-mapping + - pkg:pypi/jupyter-server?source=hash-mapping run_exports: {} size: 363068 timestamp: 1781713810089 @@ -7136,19 +7101,6 @@ packages: run_exports: {} size: 26412 timestamp: 1784376970393 -- conda: https://prefix.dev/conda-forge/noarch/pluggy-1.6.0-pyhf9edf01_1.conda - sha256: e14aafa63efa0528ca99ba568eaf506eb55a0371d12e6250aaaa61718d2eb62e - md5: d7585b6550ad04c8c5e21097ada2888e - depends: - - python >=3.9 - - python - license: MIT - license_family: MIT - purls: - - pkg:pypi/pluggy?source=hash-mapping - run_exports: {} - size: 25877 - timestamp: 1764896838868 - conda: https://prefix.dev/conda-forge/noarch/pre-commit-hooks-6.0.0-pyhd8ed1ab_0.conda sha256: 292e8666ed5338b1a43a3a7f21030e95e393cfa245725c3d502d87481c4d6ef9 md5: 00a7fda6ccb684f36a8f2f0a17851da9 @@ -7303,44 +7255,6 @@ packages: run_exports: {} size: 21085 timestamp: 1733217331982 -- conda: https://prefix.dev/conda-forge/noarch/pytest-9.1.1-pyhc364b38_2.conda - sha256: 430051d80765207a7d782b2b188230ba1489d35c6e75fd9903f76cb9fda4af16 - md5: 64c98a12c4e23eb238bf66bbecafdf3c - depends: - - colorama - - pygments >=2.7.2 - - python >=3.10 - - iniconfig >=1.0.1 - - packaging >=22 - - pluggy >=1.5,<2 - - tomli >=1 - - exceptiongroup >=1 - - python - constrains: - - pytest-faulthandler >=2 - license: MIT - license_family: MIT - purls: - - pkg:pypi/pytest?source=compressed-mapping - run_exports: {} - size: 306724 - timestamp: 1782127176429 -- conda: https://prefix.dev/conda-forge/noarch/pytest-xdist-3.8.0-pyhd8ed1ab_0.conda - sha256: b7b58a5be090883198411337b99afb6404127809c3d1c9f96e99b59f36177a96 - md5: 8375cfbda7c57fbceeda18229be10417 - depends: - - execnet >=2.1 - - pytest >=7.0.0 - - python >=3.9 - constrains: - - psutil >=3.0 - license: MIT - license_family: MIT - purls: - - pkg:pypi/pytest-xdist?source=hash-mapping - run_exports: {} - size: 39300 - timestamp: 1751452761594 - conda: https://prefix.dev/conda-forge/noarch/python-dateutil-2.9.0.post0-pyhe01879c_2.conda sha256: d6a17ece93bbd5139e02d2bd7dbfa80bee1a4261dced63f65f679121686bf664 md5: 5b8d21249ff20967101ffa321cab24e8 diff --git a/pixi.toml b/pixi.toml index 0c68d0168c..cb20ef4c46 100644 --- a/pixi.toml +++ b/pixi.toml @@ -29,8 +29,6 @@ numpy = "*" scipy = "*" matplotlib = "*" pandas = "*" -pytest = "*" -pytest-xdist = "*" pyyaml = "*" tabulate = "*" @@ -71,7 +69,9 @@ configure = { cmd = """cmake -S . -B build -G Ninja \ "-DCMAKE_CXX_FLAGS=-isystem $CONDA_PREFIX/include/geant4vmc -isystem $CONDA_PREFIX/include/Geant4" """ } build = { cmd = "cmake --build build -j$(nproc)", depends-on = ["configure"] } install = { cmd = "cmake --install build", depends-on = ["build"] } -test = { cmd = "ctest --test-dir build --output-on-failure", depends-on = ["build"] } +test = { cmd = "ctest --test-dir build --output-on-failure -LE regression", depends-on = ["build"] } +test-fairship = { cmd = "ctest --test-dir build --output-on-failure --parallel 4 -L regression", depends-on = ["build"] } +regenerate-fairship-references = { cmd = "tests/fairship_tests/regenerate_references.sh", depends-on = ["build"] } # --- CI sim-chain tasks --- # Mirror the per-step commands in .github/workflows/build-run.yml so the diff --git a/shipgen/DPPythia8Generator.cxx b/shipgen/DPPythia8Generator.cxx index a36494c054..149c560357 100644 --- a/shipgen/DPPythia8Generator.cxx +++ b/shipgen/DPPythia8Generator.cxx @@ -48,8 +48,9 @@ void DPPythia8Generator::Print() { fPythia->settings.listAll(); }; // ----- Init ---------------------------------------------------------- Bool_t DPPythia8Generator::Init() { - if (fUseRandom1) fRandomEngine = std::make_shared(); - if (fUseRandom3) fRandomEngine = std::make_shared(); + const UInt_t seed = fSeed != 0 ? fSeed : gRandom->GetSeed(); + if (fUseRandom1) fRandomEngine = std::make_shared(seed); + if (fUseRandom3) fRandomEngine = std::make_shared(seed); fPythia->setRndmEnginePtr(fRandomEngine); // fPythiaHadDecay->setRndmEnginePtr(fRandomEngine); fn = 0; diff --git a/shipgen/DPPythia8Generator.h b/shipgen/DPPythia8Generator.h index fa99f7b3fe..7ba9b0b289 100644 --- a/shipgen/DPPythia8Generator.h +++ b/shipgen/DPPythia8Generator.h @@ -57,6 +57,7 @@ class DPPythia8Generator : public SHiP::Generator { void SetMom(Double_t mom) { fMom = mom; }; Double_t GetMom() { return fMom; }; void SetId(Double_t id) { fId = id; }; + void SetSeed(UInt_t seed) { fSeed = seed; }; void SetDPId(Int_t id) { fDP = id; }; Int_t GetDPId() { return fDP; }; void SetLmin(Double_t z) { fLmin = z; }; @@ -98,6 +99,7 @@ class DPPythia8Generator : public SHiP::Generator { Int_t fId; // target type Bool_t fUseRandom1{kFALSE}; // flag to use TRandom1 Bool_t fUseRandom3{kTRUE}; // flag to use TRandom3 (default) + UInt_t fSeed{0}; // explicit RNG seed; 0 uses gRandom's seed Bool_t fpbrem; // flag to do proton bremstrahlung production (default is false) TH2F* fpbremPDF; // pointer to TH2 containing PDF(p,theta) to have a dark diff --git a/shipgen/FixedTargetGenerator.cxx b/shipgen/FixedTargetGenerator.cxx index 14b21e0ab6..c97634b273 100644 --- a/shipgen/FixedTargetGenerator.cxx +++ b/shipgen/FixedTargetGenerator.cxx @@ -174,8 +174,10 @@ Bool_t FixedTargetGenerator::Init() { LOG(error) << "Option not known " << Option.Data() << ", abort"; return kFALSE; } - if (fUseRandom1) fRandomEngine = std::make_shared(); - if (fUseRandom3) fRandomEngine = std::make_shared(); + const UInt_t seed = + fSeed != 0 ? static_cast(fSeed) : gRandom->GetSeed(); + if (fUseRandom1) fRandomEngine = std::make_shared(seed); + if (fUseRandom3) fRandomEngine = std::make_shared(seed); std::vector r = {221, 221, 223, 223, 113, 331, 333}; std::vector c = {6, 7, 5, 7, 5, 6, 9}; // decay channel mumu mumuX diff --git a/shipgen/HNLPythia8Generator.cxx b/shipgen/HNLPythia8Generator.cxx index 3212d4a73c..759a16c817 100644 --- a/shipgen/HNLPythia8Generator.cxx +++ b/shipgen/HNLPythia8Generator.cxx @@ -41,8 +41,9 @@ Bool_t HNLPythia8Generator::Init() { if (debug) { List(9900015); } - if (fUseRandom1) fRandomEngine = std::make_shared(); - if (fUseRandom3) fRandomEngine = std::make_shared(); + const UInt_t seed = fSeed != 0 ? fSeed : gRandom->GetSeed(); + if (fUseRandom1) fRandomEngine = std::make_shared(seed); + if (fUseRandom3) fRandomEngine = std::make_shared(seed); fPythia->setRndmEnginePtr(fRandomEngine); fn = 0; if (fextFile) { diff --git a/shipgen/HNLPythia8Generator.h b/shipgen/HNLPythia8Generator.h index 1757bd00b1..e71c3c037b 100644 --- a/shipgen/HNLPythia8Generator.h +++ b/shipgen/HNLPythia8Generator.h @@ -21,7 +21,7 @@ class FairPrimaryGenerator; class PyTr1Rng : public Pythia8::RndmEngine { public: - PyTr1Rng() : rng(std::make_unique(gRandom->GetSeed())) {} + explicit PyTr1Rng(UInt_t seed) : rng(std::make_unique(seed)) {} ~PyTr1Rng() override = default; Double_t flat() override { return rng->Rndm(); }; @@ -32,7 +32,7 @@ class PyTr1Rng : public Pythia8::RndmEngine { class PyTr3Rng : public Pythia8::RndmEngine { public: - PyTr3Rng() : rng(std::make_unique(gRandom->GetSeed())) {} + explicit PyTr3Rng(UInt_t seed) : rng(std::make_unique(seed)) {} ~PyTr3Rng() override = default; Double_t flat() override { return rng->Rndm(); }; @@ -69,6 +69,7 @@ class HNLPythia8Generator : public SHiP::Generator { void SetMom(Double_t mom) { fMom = mom; }; void SetId(Double_t id) { fId = id; }; + void SetSeed(UInt_t seed) { fSeed = seed; }; void SetHNLId(Int_t id) { fHNL = id; }; void SetLmin(Double_t z) { fLmin = z * 10; }; // Conversion from cm to mm void SetLmax(Double_t z) { fLmax = z * 10; }; // Conversion from cm to mm @@ -101,6 +102,7 @@ class HNLPythia8Generator : public SHiP::Generator { Int_t fId; // target type Bool_t fUseRandom1{kFALSE}; // flag to use TRandom1 Bool_t fUseRandom3{kTRUE}; // flag to use TRandom3 (default) + UInt_t fSeed{0}; // explicit RNG seed; 0 uses gRandom's seed Double_t fLmin; // m minimum decay position z Double_t fLmax; // m maximum decay position z Int_t fnRetries; // retries: no HNL produced diff --git a/shipgen/Pythia8Generator.cxx b/shipgen/Pythia8Generator.cxx index 5fc6334bae..6ac48400be 100644 --- a/shipgen/Pythia8Generator.cxx +++ b/shipgen/Pythia8Generator.cxx @@ -40,8 +40,10 @@ Pythia8Generator::Pythia8Generator() { // ----- Default constructor ------------------------------------------- Bool_t Pythia8Generator::Init() { - if (fUseRandom1) fRandomEngine = std::make_shared(); - if (fUseRandom3) fRandomEngine = std::make_shared(); + const UInt_t seed = fSeed != 0 ? fSeed : gRandom->GetSeed(); + if (fUseRandom1) fRandomEngine = std::make_shared(seed); + if (fUseRandom3) fRandomEngine = std::make_shared(seed); + fPythia->setRndmEnginePtr(fRandomEngine); if (fextFile) { if (firstEvent < 0) { LOG(error) << "Pythia8Generator: firstEvent must be >= 0, got " @@ -130,7 +132,6 @@ Bool_t Pythia8Generator::Init() { } } } else { - fPythia->setRndmEnginePtr(fRandomEngine); fPythia->settings.mode("Beams:idA", fId); fPythia->settings.mode("Beams:idB", 2212); fPythia->settings.mode("Beams:frameType", 2); diff --git a/shipgen/Pythia8Generator.h b/shipgen/Pythia8Generator.h index 8bf5c6bdd5..88a82a2213 100644 --- a/shipgen/Pythia8Generator.h +++ b/shipgen/Pythia8Generator.h @@ -40,6 +40,7 @@ class Pythia8Generator : public SHiP::Generator { void SetMom(Double_t mom) { fMom = mom; }; void SetId(Double_t id) { fId = id; }; + void SetSeed(UInt_t seed) { fSeed = seed; }; void UseRandom1() { fUseRandom1 = kTRUE; fUseRandom3 = kFALSE; @@ -70,6 +71,7 @@ class Pythia8Generator : public SHiP::Generator { Int_t fId; // target type Bool_t fUseRandom1; // flag to use TRandom1 Bool_t fUseRandom3; // flag to use TRandom3 (default) + UInt_t fSeed{0}; // explicit RNG seed; 0 uses gRandom's seed Float_t hpx[1], hpy[1], hpz[1], hE[1], hM[1], mpx[1], mpy[1], mpz[1], mE[1], hid[1], mid[1], ck[1]; Float_t ancestors[16], subprocCodes[16]; diff --git a/shipgen/TEvtGenDecayer.cxx b/shipgen/TEvtGenDecayer.cxx index a8cf3a86ae..c81bbc783f 100644 --- a/shipgen/TEvtGenDecayer.cxx +++ b/shipgen/TEvtGenDecayer.cxx @@ -64,7 +64,7 @@ void TEvtGenDecayer::Init() { // Initialize EvtGen if decay files are specified if (fDecayFile != "" && fParticleFile != "") { // Set up EvtGen random engine with ROOT's random number generator seed - UInt_t seed = gRandom->GetSeed(); + const UInt_t seed = fSeed != 0 ? fSeed : gRandom->GetSeed(); // Also seed Pythia8 with the same seed for consistency TPythia8* pythia8 = TPythia8::Instance(); diff --git a/shipgen/TEvtGenDecayer.h b/shipgen/TEvtGenDecayer.h index 3c2730df92..d2b08ba904 100644 --- a/shipgen/TEvtGenDecayer.h +++ b/shipgen/TEvtGenDecayer.h @@ -36,6 +36,7 @@ class TEvtGenDecayer : public TVirtualMCDecayer { // EvtGen-specific methods void SetEvtGenDecayFile(const char* decayFile); void SetEvtGenParticleFile(const char* particleFile); + void SetSeed(UInt_t seed) { fSeed = seed; } void AddEvtGenParticle(Int_t pdg); // Add particle to be handled by EvtGen // Access methods @@ -59,6 +60,7 @@ class TEvtGenDecayer : public TVirtualMCDecayer { // Storage for EvtGen decay products TClonesArray* fEvtGenProducts; // Array to store converted EvtGen particles Bool_t fHasEvtGenDecay; // Flag indicating if last decay was from EvtGen + UInt_t fSeed{0}; // explicit RNG seed; 0 uses gRandom's seed }; #endif // SHIPGEN_TEVTGENDECAYER_H_ diff --git a/stubs/ROOT/__init__.pyi b/stubs/ROOT/__init__.pyi index 81ed1d5980..bc036131ee 100644 --- a/stubs/ROOT/__init__.pyi +++ b/stubs/ROOT/__init__.pyi @@ -1442,6 +1442,7 @@ class rangeStruct: # Partial stub class Pythia8Generator: # Partial stub def __init__(self) -> None: ... + def SetSeed(self, seed: int) -> None: ... def UseExternalFile(self, filename: str | list[str], firstEvent: int = ...) -> None: ... def SetTargetCoordinates(self, z0: float, z1: float) -> None: ... def SetMom(self, mom: float) -> None: ... @@ -1485,6 +1486,7 @@ class DPPythia8Generator(Pythia8Generator): # Partial stub class FixedTargetGenerator: # Partial stub def __init__(self) -> None: ... + def SetSeed(self, seed: int) -> None: ... def SetTargetCoordinates(self, z0: float, z1: float) -> None: ... def SetMom(self, mom: float) -> None: ... def SetSmearBeam(self, smear: float) -> None: ... @@ -1493,7 +1495,6 @@ class FixedTargetGenerator: # Partial stub def SetHeartBeat(self, n: int) -> None: ... def SetG4only(self) -> None: ... def SetZoffset(self, z: float) -> None: ... - def SetSeed(self, seed: int) -> None: ... def SetBoost(self, boost: float) -> None: ... def SetDebug(self, debug: bool) -> None: ... def SetTauOnly(self) -> None: ... diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 1e4d43f788..9023108d4b 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -25,7 +25,7 @@ target_link_libraries( ) add_test(NAME DataClassIO COMMAND testDataClassIO) -# Test for actual RNtuple I/O operations +# Test for actual RNTuple I/O operations add_executable(testRNtupleIO test_rntuple_io.cxx) target_link_libraries( testRNtupleIO @@ -50,3 +50,63 @@ target_link_libraries( FairLogger::FairLogger ) add_test(NAME RNtupleIO COMMAND testRNtupleIO) + +# Shell-driven FairShip regression tests. The Python harness validates the YAML +# configuration, emits test declarations, and filters/compares output; CTest +# owns execution ordering, resource locking, and parallelism. +find_package(Python3 REQUIRED COMPONENTS Interpreter) + +option( + FAIRSHIP_KEEP_TEST_OUTPUT + "Keep FairShip regression-test working directories after CTest finishes" + OFF +) +set(FAIRSHIP_TEST_WORKDIR_ROOT "${CMAKE_BINARY_DIR}/Testing/fairship_tests") + +function(fairship_add_regression_test) + cmake_parse_arguments(TEST "PREPARE;CLEANUP" "NAME;GROUP" "DEPENDS" ${ARGN}) + set(test_name "FairShip.${TEST_NAME}") + set(workdir "${FAIRSHIP_TEST_WORKDIR_ROOT}/${TEST_GROUP}") + set(lifecycle_arguments "") + if(TEST_PREPARE) + list(APPEND lifecycle_arguments --prepare) + endif() + if(TEST_CLEANUP AND NOT FAIRSHIP_KEEP_TEST_OUTPUT) + list(APPEND lifecycle_arguments --cleanup) + endif() + + add_test( + NAME "${test_name}" + COMMAND + "${Python3_EXECUTABLE}" + "${CMAKE_CURRENT_SOURCE_DIR}/fairship_tests/harness.py" --run + "${TEST_NAME}" --workdir "${workdir}" ${lifecycle_arguments} + ) + set(dependencies "") + foreach(dependency IN LISTS TEST_DEPENDS) + list(APPEND dependencies "FairShip.${dependency}") + endforeach() + set_tests_properties( + "${test_name}" + PROPERTIES + DEPENDS "${dependencies}" + LABELS "fairship;regression" + RESOURCE_LOCK "fairship_${TEST_GROUP}" + ) +endfunction() + +execute_process( + COMMAND + "${Python3_EXECUTABLE}" + "${CMAKE_CURRENT_SOURCE_DIR}/fairship_tests/harness.py" --emit-cmake + RESULT_VARIABLE fairship_test_configuration_status + OUTPUT_VARIABLE fairship_test_declarations + ERROR_VARIABLE fairship_test_configuration_error +) +if(NOT fairship_test_configuration_status EQUAL 0) + message( + FATAL_ERROR + "Invalid FairShip regression-test configuration:\n${fairship_test_configuration_error}" + ) +endif() +cmake_language(EVAL CODE "${fairship_test_declarations}") diff --git a/tests/README.md b/tests/README.md new file mode 100644 index 0000000000..909d52bf8f --- /dev/null +++ b/tests/README.md @@ -0,0 +1,179 @@ +# FairShip tests + +The `tests` directory contains two complementary test suites: + +- C++ unit and I/O tests registered with CTest. +- Shell-driven regression tests, implemented by a Python harness and registered + with CTest, that compare terminal output with committed reference files. + +## Default CTest suite + +The following command builds FairShip and runs the original C++ tests used by +the default GitHub CI pipeline. Regression tests are opt-in: + +Using Pixi: + +```sh +pixi run test +``` + +With an existing configured build directory: + +```sh +cmake --build build +ctest --test-dir build --output-on-failure -LE regression +``` + +## C++ tests + +The C++ tests are declared in `tests/CMakeLists.txt`, built with FairShip, and +registered with CTest. To run one by name: + +```sh +ctest --test-dir build --output-on-failure -R DataClassIO +``` + +New C++ tests should be added as executables in `tests/CMakeLists.txt` and +registered with `add_test()`. + +## FairShip regression tests + +The `fairship_tests` suite runs shell-configured commands, captures their +combined standard output and standard error, and compares the result with +reference text files committed under `fairship_tests/references`. + +Run the suite with: + +```sh +ctest --test-dir build --output-on-failure --parallel 4 -L regression +``` + +or: + +```sh +pixi run test-fairship +``` + +### Adding a FairShip regression test + +All FairShip regression tests are configured in +`fairship_tests/test_cases.yaml`. To add a test: + +1. Add a `name` mapping to the `tests` list in `test_cases.yaml`. +2. Create an executable `fairship_tests/scripts/TEST_NAME.sh` file containing + the command. +3. Regenerate the reference files. +4. Review and commit the generated + `fairship_tests/references/TEST_NAME.txt` file. + +Test names may contain letters, numbers, dots, underscores, and hyphens. +A nonzero exit status fails the test, even if its output matches the reference. + +Each YAML entry is a mapping containing a test name: + +```yaml +tests: + - name: example +``` + +Tests that depend on other tests use `name` and `depends_on`: + +```yaml +tests: + - name: simulation + - name: reconstruction + depends_on: + - simulation +``` + +Unknown dependencies, self-dependencies, duplicate dependencies, and dependency +cycles are rejected as configuration errors. When the complete suite is +selected, CTest runs each prerequisite once and orders the dependent test after +it. + +CTest's `DEPENDS` property controls execution order only: a dependent test is +still attempted if a prerequisite fails. It also does not add a prerequisite +that was excluded by a test-name or label filter. Run the complete regression +suite when testing dependency-connected cases. + +List every prerequisite before its dependents in `test_cases.yaml`. The first +test in each connected dependency group prepares its shared directory and the +last cleans it; listing a dependent first can produce conflicting CTest +ordering constraints. + +CTest dependency properties and resource locks run dependency-connected +tests sequentially in one working directory. Independent groups use isolated +directories and can execute concurrently. + +For each test name, the harness automatically locates: + +- The executable script at `fairship_tests/scripts/TEST_NAME.sh`. +- The reference output at `fairship_tests/references/TEST_NAME.txt`. + +The script and reference filenames must use exactly the configured test name. + +FairShip regression scripts execute in temporary working directories organized +by dependency group under the build tree. Outputs from dependencies remain +available to dependent tests, unrelated groups are isolated, and the harness +removes generated files after the complete group runs. Filtered or interrupted +runs can leave a working directory behind. + +The harness provides the repository root through the `FAIRSHIP_ROOT` +environment variable. Scripts should use it for repository-relative programs +and input files: + +```sh +python "$FAIRSHIP_ROOT/macro/example.py" +``` + +Other relative paths resolve inside the temporary working directory. + +Configure CMake to preserve those directories for inspection: + +```sh +cmake -S . -B build -DFAIRSHIP_KEEP_TEST_OUTPUT=ON +``` + +Without the option, these directories are removed after a complete group run. + +### Nondeterministic output + +`fairship_tests/skip_patterns.conf` contains full-line wildcard patterns for +lines that should be excluded from comparison. An asterisk (`*`) matches any +text, while all other characters are matched literally. Start a block with +`test NAME` and list its patterns on the following lines. Use `test *` for +patterns that apply to every test: + +```ini +test * + Timestamp: * + +test example-test + Processing time: * s +``` + +Patterns must match the complete line. Keep them as narrow as possible because +matching lines are removed before validation. + +### Regenerating references + +After an intentional output change, regenerate all reference files with: + +```sh +tests/fairship_tests/regenerate_references.sh +``` + +or: + +```sh +pixi run regenerate-fairship-references +``` + +The regeneration command updates the configured reference file for every test. +Always review the resulting diff before committing it. + +Several configured commands download remote input files, so running or +regenerating the complete regression suite requires network access. + +More implementation details are available in +[`fairship_tests/README.md`](fairship_tests/README.md). diff --git a/tests/fairship_tests/README.md b/tests/fairship_tests/README.md new file mode 100644 index 0000000000..26d961bcb3 --- /dev/null +++ b/tests/fairship_tests/README.md @@ -0,0 +1,99 @@ +# FairShip regression tests + +These CTest tests run shell scripts declared in `test_cases.yaml` and compare +their combined standard output and standard error with configured reference +files. + +To add a test: + +1. Add a `name` mapping to the `tests` list in `test_cases.yaml`. +2. Create an executable `scripts/TEST_NAME.sh` file containing the test + command. +3. Reconfigure CMake and run `tests/fairship_tests/regenerate_references.sh`. +4. Review and commit the generated `references/TEST_NAME.txt` file. + +Each YAML entry is a mapping containing a test name: + +```yaml +tests: + - name: example +``` + +To order a test after other tests, use a mapping with `name` and `depends_on`: + +```yaml +tests: + - name: simulation + - name: reconstruction + depends_on: + - simulation +``` + +Dependencies may themselves have dependencies. The harness validates that +every dependency exists and rejects dependency cycles. CTest's `DEPENDS` +property orders selected prerequisites before their dependents; it does not +prevent a dependent from running after a prerequisite fails. It also does not +select prerequisites excluded by a CTest name or label filter. Run the complete +regression suite when testing dependency-connected cases. + +Prerequisites must be listed before their dependents in `test_cases.yaml`. +Dependency-connected tests share a working directory and a resource lock, so +they run sequentially without file races. Independent groups can run +concurrently. + +For a test named `example`, the harness automatically uses: + +- `scripts/example.sh` as the executable test script. +- `references/example.txt` as the expected terminal output. + +Test names may contain letters, numbers, dots, underscores, and hyphens. The +script filename and reference filename must use exactly the same test name. + +Test scripts run in build-tree working directories organized by dependency +group. Tests in the same dependency-connected graph share a directory, while +unrelated groups are isolated. During a complete suite run, the harness creates +a clean directory before each group and removes it afterward. Filtered or +interrupted runs can leave a directory behind. + +The harness sets `FAIRSHIP_ROOT` to the repository root. Scripts should use it +when referring to repository files: + +```sh +python "$FAIRSHIP_ROOT/macro/example.py" +``` + +Relative input and output paths inside a test script refer to the temporary +working directory. + +To preserve working directories for inspection, configure with: + +```sh +cmake -S . -B build -DFAIRSHIP_KEEP_TEST_OUTPUT=ON +``` + +Without this option, directories are deleted after their complete groups run. + +Run the tests with: + +```sh +ctest --test-dir build --output-on-failure --parallel 4 -L regression +# or +pixi run test-fairship +``` + +Regenerate every reference after an intentional output change with: + +```sh +tests/fairship_tests/regenerate_references.sh +# or +pixi run regenerate-fairship-references +``` + +Several configured scripts download remote input files, so the complete suite +and reference regeneration require network access. + +`skip_patterns.conf` contains full-line wildcard patterns for output that is +expected to vary. An asterisk (`*`) matches any text; all other characters are +matched literally. Start a block with `test NAME` and list its patterns on the +following lines. Use `test *` for patterns that apply to every test. Use this +sparingly, because skipped lines are excluded from validation. diff --git a/tests/fairship_tests/__init__.py b/tests/fairship_tests/__init__.py new file mode 100644 index 0000000000..d05cdeed39 --- /dev/null +++ b/tests/fairship_tests/__init__.py @@ -0,0 +1,2 @@ +# SPDX-License-Identifier: LGPL-3.0-or-later +# SPDX-FileCopyrightText: Copyright CERN for the benefit of the SHiP Collaboration diff --git a/tests/fairship_tests/harness.py b/tests/fairship_tests/harness.py new file mode 100644 index 0000000000..47201a5cab --- /dev/null +++ b/tests/fairship_tests/harness.py @@ -0,0 +1,324 @@ +# SPDX-License-Identifier: LGPL-3.0-or-later +# SPDX-FileCopyrightText: Copyright CERN for the benefit of the SHiP Collaboration + +"""Run shell-configured tests and compare their terminal output.""" + +from __future__ import annotations + +import argparse +import difflib +import os +import re +import shutil +import subprocess +import tempfile +from dataclasses import dataclass +from pathlib import Path + +import yaml + +HERE = Path(__file__).resolve().parent +REPOSITORY_ROOT = HERE.parent.parent +TEST_CASES = HERE / "test_cases.yaml" +SKIP_PATTERNS = HERE / "skip_patterns.conf" +VALID_TEST_NAME = re.compile(r"[A-Za-z0-9_.-]+") +TEST_TIMEOUT_SECONDS = 30 * 60 + + +@dataclass(frozen=True) +class TestCase: + name: str + script: Path + reference: Path + dependencies: tuple[str, ...] + + +def test_cases() -> list[TestCase]: + """Return and validate the tests declared by the configuration file.""" + try: + configuration = yaml.safe_load(TEST_CASES.read_text(encoding="utf-8")) + except yaml.YAMLError as error: + raise RuntimeError(f"Invalid YAML in {TEST_CASES}: {error}") from error + + if not isinstance(configuration, dict) or set(configuration) != {"tests"}: + raise RuntimeError(f"{TEST_CASES} must contain exactly one top-level 'tests' key") + configured_tests = configuration["tests"] + if not isinstance(configured_tests, list) or not configured_tests: + raise RuntimeError(f"'tests' in {TEST_CASES} must be a non-empty list") + + cases: list[TestCase] = [] + for index, configured_test in enumerate(configured_tests, start=1): + location = f"{TEST_CASES} test #{index}" + if isinstance(configured_test, dict) and set(configured_test) == {"name"}: + name = configured_test["name"] + dependencies = [] + elif isinstance(configured_test, dict) and set(configured_test) == {"name", "depends_on"}: + name = configured_test["name"] + dependencies = configured_test["depends_on"] + else: + raise RuntimeError( + f"{location} must be a test name or a mapping containing 'name' and optional 'depends_on'" + ) + if not isinstance(name, str) or not name: + raise RuntimeError(f"{location} must be a non-empty test name") + if VALID_TEST_NAME.fullmatch(name) is None: + raise RuntimeError(f"Invalid test name {name!r} in {location}") + if not isinstance(dependencies, list) or not all( + isinstance(dependency, str) and dependency for dependency in dependencies + ): + raise RuntimeError(f"'depends_on' in {location} must be a list of non-empty test names") + if len(dependencies) != len(set(dependencies)): + raise RuntimeError(f"Duplicate dependencies for {name!r} in {location}") + + script = (HERE / "scripts" / f"{name}.sh").resolve() + reference = (HERE / "references" / f"{name}.txt").resolve() + if not script.is_file(): + raise RuntimeError(f"Test script does not exist for {name!r}: {script}") + if not script.stat().st_mode & 0o111: + raise RuntimeError(f"Test script is not executable for {name!r}: {script}") + + cases.append(TestCase(name=name, script=script, reference=reference, dependencies=tuple(dependencies))) + + names = [case.name for case in cases] + if len(names) != len(set(names)): + raise RuntimeError(f"Duplicate test names in {TEST_CASES}") + + known_names = set(names) + seen_names: set[str] = set() + for case in cases: + unknown = set(case.dependencies) - known_names + if unknown: + raise RuntimeError(f"Unknown dependencies for {case.name!r} in {TEST_CASES}: {', '.join(sorted(unknown))}") + if case.name in case.dependencies: + raise RuntimeError(f"Test {case.name!r} cannot depend on itself in {TEST_CASES}") + later = set(case.dependencies) - seen_names + if later: + raise RuntimeError( + f"Dependencies for {case.name!r} must appear earlier in {TEST_CASES}: {', '.join(sorted(later))}" + ) + seen_names.add(case.name) + + cases_by_name = {case.name: case for case in cases} + visited: set[str] = set() + visiting: list[str] = [] + + def validate_acyclic(name: str) -> None: + if name in visited: + return + if name in visiting: + cycle = visiting[visiting.index(name) :] + [name] + raise RuntimeError(f"Dependency cycle in {TEST_CASES}: {' -> '.join(cycle)}") + visiting.append(name) + for dependency in cases_by_name[name].dependencies: + validate_acyclic(dependency) + visiting.pop() + visited.add(name) + + for name in names: + validate_acyclic(name) + + return cases + + +def test_names() -> list[str]: + """Return the configured test names.""" + return [case.name for case in test_cases()] + + +def dependency_groups() -> dict[str, str]: + """Map every test to its dependency-connected CTest working-directory group.""" + cases = test_cases() + neighbours = {case.name: set(case.dependencies) for case in cases} + for case in cases: + for dependency in case.dependencies: + neighbours[dependency].add(case.name) + + groups: dict[str, str] = {} + for case in cases: + if case.name in groups: + continue + group_name = case.name + pending = [case.name] + while pending: + name = pending.pop() + if name in groups: + continue + groups[name] = group_name + pending.extend(neighbours[name]) + return groups + + +def _test_case(test_name: str) -> TestCase: + try: + return next(case for case in test_cases() if case.name == test_name) + except StopIteration: + raise RuntimeError(f"Unknown FairShip test: {test_name}") from None + + +def _compile_wildcard(pattern: str) -> re.Pattern[str]: + """Compile a full-line pattern in which only ``*`` is special.""" + expression = ".*".join(re.escape(part) for part in pattern.split("*")) + return re.compile(expression) + + +def _patterns_for(test_name: str) -> list[re.Pattern[str]]: + known_tests = set(test_names()) + patterns: list[str] = [] + current_selector: str | None = None + for line_number, raw_line in enumerate(SKIP_PATTERNS.read_text(encoding="utf-8").splitlines(), start=1): + line = raw_line.strip() + if not line or line.startswith("#"): + continue + if raw_line.startswith("test "): + current_selector = line.removeprefix("test ").strip() + if not current_selector: + raise RuntimeError(f"Missing test name in {SKIP_PATTERNS}:{line_number}") + if current_selector != "*" and current_selector not in known_tests: + raise RuntimeError(f"Unknown test name {current_selector!r} in {SKIP_PATTERNS}:{line_number}") + elif not raw_line[:1].isspace(): + raise RuntimeError(f"Expected 'test NAME' or an indented pattern in {SKIP_PATTERNS}:{line_number}") + elif current_selector is None: + raise RuntimeError(f"Pattern outside a test block in {SKIP_PATTERNS}:{line_number}") + elif current_selector in {"*", test_name}: + patterns.append(line) + + return [_compile_wildcard(pattern) for pattern in patterns] + + +def run(test_name: str, workdir: Path) -> tuple[int, str]: + """Run one configured test, returning its status and normalized output.""" + case = _test_case(test_name) + environment = os.environ.copy() + environment["FAIRSHIP_ROOT"] = str(REPOSITORY_ROOT) + try: + result = subprocess.run( + [str(case.script)], + cwd=workdir, + env=environment, + stdout=subprocess.PIPE, + stderr=subprocess.STDOUT, + text=True, + timeout=TEST_TIMEOUT_SECONDS, + ) + returncode = result.returncode + stdout = result.stdout + except subprocess.TimeoutExpired as error: + returncode = 124 + stdout = error.stdout or "" + if isinstance(stdout, bytes): + stdout = stdout.decode(errors="replace") + stdout += f"\nTest timed out after {TEST_TIMEOUT_SECONDS} seconds\n" + patterns = _patterns_for(test_name) + lines = stdout.splitlines(keepends=True) + output = "".join(line for line in lines if not any(pattern.fullmatch(line.rstrip("\r\n")) for pattern in patterns)) + return returncode, output + + +def assert_matches_reference(test_name: str, workdir: Path, prepare: bool) -> None: + """Run one test and compare its output with its reference.""" + if prepare: + shutil.rmtree(workdir, ignore_errors=True) + workdir.mkdir(parents=True, exist_ok=True) + returncode, output = run(test_name, workdir) + if returncode != 0: + raise RuntimeError(f"{test_name} exited with status {returncode}\n\n{output}") + + path = _test_case(test_name).reference + if not path.exists(): + raise RuntimeError(f"Missing reference file {path}. Run {HERE / 'regenerate_references.sh'}.") + expected = path.read_text(encoding="utf-8") + diff = "".join( + difflib.unified_diff( + expected.splitlines(keepends=True), + output.splitlines(keepends=True), + fromfile=str(path), + tofile=f"{test_name} (current output)", + ) + ) + if diff: + raise RuntimeError(f"Terminal output changed for {test_name}:\n\n{diff}") + + +def regenerate() -> None: + """Replace all reference files with current successful output.""" + completed: set[str] = set() + temporary_root = Path(tempfile.mkdtemp(prefix="fairship-tests-")) + + def regenerate_test(name: str) -> None: + if name in completed: + return + case = _test_case(name) + for dependency in case.dependencies: + regenerate_test(dependency) + + workdir = temporary_root / dependency_groups()[name] + workdir.mkdir(parents=True, exist_ok=True) + returncode, output = run(name, workdir) + if returncode != 0: + raise RuntimeError( + f"{case.name} exited with status {returncode}; references were not fully regenerated\n\n{output}" + ) + case.reference.parent.mkdir(parents=True, exist_ok=True) + case.reference.write_text(output, encoding="utf-8") + print(f"wrote {case.reference}") + completed.add(name) + + try: + for case in test_cases(): + regenerate_test(case.name) + finally: + shutil.rmtree(temporary_root, ignore_errors=True) + + +def emit_cmake() -> None: + """Emit validated test declarations consumed by tests/CMakeLists.txt.""" + cases = test_cases() + groups = dependency_groups() + group_members: dict[str, list[str]] = {} + for case in cases: + group_members.setdefault(groups[case.name], []).append(case.name) + for case in cases: + members = group_members[groups[case.name]] + dependencies = list(case.dependencies) + if case.name != members[0] and members[0] not in dependencies: + dependencies.append(members[0]) + if case.name == members[-1]: + dependencies.extend(name for name in members[:-1] if name not in dependencies) + dependency_arguments = " ".join(f'"{dependency}"' for dependency in dependencies) + lifecycle = " PREPARE" if case.name == members[0] else "" + lifecycle += " CLEANUP" if case.name == members[-1] else "" + print( + f'fairship_add_regression_test(NAME "{case.name}" ' + f'GROUP "{groups[case.name]}"{lifecycle} DEPENDS {dependency_arguments})' + ) + + +def main() -> None: + parser = argparse.ArgumentParser(description=__doc__) + actions = parser.add_mutually_exclusive_group(required=True) + actions.add_argument("--regenerate", action="store_true", help="replace reference files with current output") + actions.add_argument("--emit-cmake", action="store_true", help="write CTest declarations to standard output") + actions.add_argument("--run", metavar="NAME", help="run and validate one configured test") + parser.add_argument("--workdir", type=Path, help="working directory used with --run") + parser.add_argument("--prepare", action="store_true", help="clean the work directory before running") + parser.add_argument("--cleanup", action="store_true", help="remove the work directory after running") + args = parser.parse_args() + if args.regenerate: + regenerate() + elif args.emit_cmake: + emit_cmake() + elif args.run: + if args.workdir is None: + parser.error("--run requires --workdir") + workdir = args.workdir.resolve() + try: + assert_matches_reference(args.run, workdir, args.prepare) + finally: + if args.cleanup: + shutil.rmtree(workdir, ignore_errors=True) + else: + parser.error("no action requested") + + +if __name__ == "__main__": + main() diff --git a/tests/fairship_tests/references/ci-sim.txt b/tests/fairship_tests/references/ci-sim.txt new file mode 100644 index 0000000000..cda51ffaa0 --- /dev/null +++ b/tests/fairship_tests/references/ci-sim.txt @@ -0,0 +1,1887 @@ +[DEBUG] - RTDB container factory FairBaseContFact + +[DEBUG] FairRootFileSink created------------ +Info in : to 4 +[DEBUG] Function ShipMuonShield MS + + *------------------------------------------------------------------------------------* + | | + | *------------------------------------------------------------------------------* | + | | | | + | | | | + | | PPP Y Y TTTTT H H III A Welcome to the Lund Monte Carlo! | | + | | P P Y Y T H H I A A This is PYTHIA version 8.312 | | + | | PPP Y T HHHHH I AAAAA Last date of change: 23 May 2024 | | + | | P Y T H H I A A | | + | | | | + | | Program documentation and an archive of historic versions is found on: | | + | | | | + | | https://pythia.org/ | | + | | | | + | | PYTHIA is authored by a collaboration consisting of: | | + | | | | + | | Javira Altmann, Christian Bierlich, Naomi Cooke, Nishita Desai, | | + | | Leif Gellersen, Ilkka Helenius, Philip Ilten, Leif Lonnblad, | | + | | Stephen Mrenna, Christian Preuss, Torbjorn Sjostrand, Peter Skands, | | + | | Marius Utheim, and Rob Verheyen. | | + | | | | + | | The complete list of authors, including contact information and | | + | | affiliations, can be found on https://pythia.org/. | | + | | Problems or bugs should be reported on email at authors@pythia.org. | | + | | | | + | | The main program reference is C. Bierlich et al, | | + | | 'A comprehensive guide to the physics and usage of Pythia 8.3', | | + | | SciPost Phys. Codebases 8-r8.3 (2022) [arXiv:2203.11601 [hep-ph]] | | + | | | | + | | PYTHIA is released under the GNU General Public Licence version 2 or later.| | + | | Please respect the MCnet Guidelines for Event Generator Authors and Users. | | + | | | | + | | Disclaimer: this program comes without any guarantees. | | + | | Beware of errors and use common sense when interpreting results. | | + | | | | + | | Copyright (C) 2024 Torbjorn Sjostrand | | + | | | | + | | | | + | *------------------------------------------------------------------------------* | + | | + *------------------------------------------------------------------------------------* + +[DEBUG] fPythia->readString("Next:numberCount = 0") +[DEBUG] fPythia->readString("HardQCD::hardccbar = on") +[DEBUG] fPythia->readString("9900015:new = N2 N2 2 0 0 1.0 0.0 0.0 0.0 64439435.5355 0 1 0 1 0") +[DEBUG] fPythia->readString("9900015:isResonance = false") +[DEBUG] fPythia->readString("9900015:addChannel = 1 0.0941122393137 0 211 13") +[DEBUG] fPythia->readString("9900015:addChannel = 1 0.0941122393137 0 -211 -13") +[DEBUG] fPythia->readString("9900015:mayDecay = on") +[DEBUG] fPythia->readString("4132:new Xi_c0 Xi_cbar0 2 0 0 2.47088 0.00000 0.00000 0.00000 3.36000e-02 0 1 0 1 0") +[DEBUG] fPythia->readString("421:new D0 Dbar0 1 0 0 1.86486 0.00000 0.00000 0.00000 1.22900e-01 0 1 0 1 0") +[DEBUG] fPythia->readString("431:new D_s+ D_s- 1 3 0 1.96849 0.00000 0.00000 0.00000 1.49900e-01 0 1 0 1 0") +[DEBUG] fPythia->readString("4122:new Lambda_c+ Lambda_cbar- 2 3 0 2.28646 0.00000 0.00000 0.00000 5.99000e-02 0 1 0 1 0") +[DEBUG] fPythia->readString("411:new D+ D- 1 3 0 1.86962 0.00000 0.00000 0.00000 3.11800e-01 0 1 0 1 0") +[DEBUG] fPythia->readString("15:new tau- tau+ 2 -3 0 1.77682 0.00000 0.00000 0.00000 8.71100e-02 0 1 0 1 0") +[DEBUG] fPythia->readString("4132:addChannel 1 4.9648543278775927e-06 22 -11 9900015 -3312") +[DEBUG] fPythia->readString("4132:addChannel 1 3.6067574240258648e-05 22 -13 9900015 -3312") +[DEBUG] fPythia->readString("421:addChannel 1 0.00042133198603154325 22 -11 9900015 -321") +[DEBUG] fPythia->readString("421:addChannel 1 0.0055549407674330212 22 -13 9900015 -321") +[DEBUG] fPythia->readString("431:addChannel 1 0.92801838463873643 0 9900015 -13") +[DEBUG] fPythia->readString("431:addChannel 1 0.057102543400208421 0 9900015 -11") +[DEBUG] fPythia->readString("431:addChannel 1 0.00055203417721480356 22 -11 9900015 221") +[DEBUG] fPythia->readString("431:addChannel 1 0.0077723284774612184 22 -13 9900015 221") +[DEBUG] fPythia->readString("4122:addChannel 1 2.5164587558414057e-05 22 -11 9900015 3122") +[DEBUG] fPythia->readString("4122:addChannel 1 0.00014276748136769047 22 -13 9900015 3122") +[DEBUG] fPythia->readString("411:addChannel 1 0.060171266937806903 0 9900015 -13") +[DEBUG] fPythia->readString("411:addChannel 1 0.0037015891094863938 0 9900015 -11") +[DEBUG] fPythia->readString("411:addChannel 1 0.0010809769798012109 22 -11 9900015 -311") +[DEBUG] fPythia->readString("411:addChannel 1 0.014262154127562572 22 -13 9900015 -311") +[DEBUG] fPythia->readString("431:addChannel 1 0.00655470930638 0 -15 16") +[DEBUG] fPythia->readString("15:addChannel 1 0.2437410269496529 1521 9900015 -211") +[DEBUG] fPythia->readString("15:addChannel 1 0.01141276230424944 1521 9900015 -321") +[DEBUG] fPythia->readString("15:addChannel 1 0.05044299985797746 1521 9900015 -213") +[DEBUG] fPythia->readString("15:addChannel 1 0.123689133403953 1531 9900015 11 -12") +[DEBUG] fPythia->readString("15:addChannel 1 0.02940903031940181 1531 9900015 11 16") +[DEBUG] fPythia->readString("15:addChannel 1 0.1126969533410586 1531 9900015 13 -14") +[DEBUG] fPythia->readString("15:addChannel 1 0.4286080938237068 1531 9900015 13 16") +[DEBUG] fPythia->readString("4132:addChannel 1 0.9999589675714319 0 22 22") +[DEBUG] fPythia->readString("421:addChannel 1 0.9940237272465354 0 22 22") +[DEBUG] fPythia->readString("4122:addChannel 1 0.9998320679310739 0 22 -11") +[DEBUG] fPythia->readString("411:addChannel 1 0.9207840128453429 0 22 -11") + + -------- PYTHIA Particle Data Table (partial) ----------------------------------------------------------------------------------- + + id name antiName spn chg col m0 mWidth mMin mMax tau0 res dec ext vis wid + no onMode bRatio meMode products + + 9900015 N2 N2 2 0 0 1.00000 0.00000 0.00000 0.00000 6.44394e+07 0 1 0 1 0 + 0 1 0.0941122 0 211 13 + 1 1 0.0941122 0 -211 -13 + + -------- End PYTHIA Particle Data Table ----------------------------------------------------------------------------------------- + +[DEBUG] fPythia->readString("ProcessLevel:all = off") +[INFO] FairRootFileSink initialized. +[INFO] - cbmroot +[INFO] - ./sim_ci-test.root +[INFO] ============== FairRunSim: Initialising simulation run ============== +Info in : Geometry FAIRGeom, FAIR geometry created +[INFO] FairGeoMedia: Read media + +************************************************************* +************************************************************* +[WARN] FairGenericVMCConfig::Setup() Using gConfig.C macro DEPRACATED. +[WARN] Check FairRoot/examples/common/gconfig/ for current YAML implementation. +[INFO] ---------------User config is used: g4Config.C + +============================================================= + Virtual Monte Carlo Library + Version 2.2 ( 22 April 2026 ) +============================================================= + +============================================================= + Geant4 Virtual Monte Carlo + Version 6.8 ( 2 February 2026 ) + WWW : http://root.cern.ch/drupal/content/geant4-vmc +============================================================= + +Running TVirtualMCApplication::ConstructGeometry +Info in : Top volume is cave. Master volume is cave +Info in : --- Maximum geometry depth set to 100 +[INFO] -- Target cooler: PressurisedHe90 T=363.15 K, P=9.98641e+09 MeV/mm3, Density=0.002121 +[INFO] Fiber length set to 60.2272 cm +[DEBUG] Construct Geometry of the MS +[DEBUG] Initialize the MS +[DEBUG] magnet i: Magn1 +[DEBUG] magnet i: Magn2 +[DEBUG] magnet i: Magn3 +[DEBUG] magnet i: Magn4 +[DEBUG] magnet i: Magn5 +[DEBUG] Magnet 0: dZ=0, Z_rel=115.5, dXIn=50, dXOut=50, dYIn=119, dYOut=119, gapIn=2, gapOut=2, ratio_yokesIn=1, ratio_yokesOut=1, dY_yokeIn=50, dY_yokeOut=50, midGapIn=0, midGapOut=0, Bgoal=1.9, Z=319.5 +[DEBUG] Magnet 1: dZ=20, Z_rel=495, dXIn=67.1, dXOut=79.92, dYIn=27, dYOut=43, gapIn=5, gapOut=5, ratio_yokesIn=1.38, ratio_yokesOut=1.06, dY_yokeIn=67.1, dY_yokeOut=79.92, midGapIn=0, midGapOut=0, Bgoal=1.9, Z=950 +[DEBUG] Magnet 2: dZ=10, Z_rel=280.48, dXIn=53.12, dXOut=49.56, dYIn=43, dYOut=56, gapIn=5.03, gapOut=5, ratio_yokesIn=2.11, ratio_yokesOut=2.4, dY_yokeIn=53.12, dY_yokeOut=49.56, midGapIn=0, midGapOut=0, Bgoal=1.9, Z=1735.48 +[DEBUG] Magnet 3: dZ=10, Z_rel=232.53, dXIn=2.73, dXOut=3.68, dYIn=56, dYOut=56, gapIn=5, gapOut=5.21, ratio_yokesIn=60.44, ratio_yokesOut=45.63, dY_yokeIn=2.73, dY_yokeOut=3.68, midGapIn=0.5, midGapOut=0.5, Bgoal=-1.91, Z=2258.49 +[DEBUG] Magnet 4: dZ=10, Z_rel=85, dXIn=31, dXOut=107.12, dYIn=56, dYOut=56, gapIn=5.27, gapOut=5, ratio_yokesIn=4.55, ratio_yokesOut=0.63, dY_yokeIn=1, dY_yokeOut=77.12, midGapIn=0, midGapOut=0, Bgoal=-1.91, Z=2586.02 +[DEBUG] Magnet 5: dZ=10, Z_rel=233.82, dXIn=30.03, dXOut=40, dYIn=56, dYOut=56, gapIn=5, gapOut=5.01, ratio_yokesIn=4.83, ratio_yokesOut=3.37, dY_yokeIn=30.03, dY_yokeOut=40, midGapIn=0, midGapOut=0, Bgoal=-1.91, Z=2914.84 +[DEBUG] ending of Initialize the MS +[DEBUG] Create a magnet of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create a magnet of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create a magnet of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create a magnet of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create a magnet of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS 5 +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS 5 +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create a magnet of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS 5 +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS 5 +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS +[DEBUG] Create CreateArb8 of the MS +[INFO] veto: Decay Volume medium set as: vacuums +Info in : Automatic visible depth disabled + Z Position (Upstream Tagger1) 3272.0000000 +Info in : Fixing runtime shapes... +Info in : ...Nothing to fix +Info in : Counting nodes... +Info in : Voxelizing... +Info in : Building cache... +Info in : max level = 6, max placements = 14153 +Info in : 3731249 nodes/ 722 volume UID's in FAIR geometry +Info in : ----------------modeler ready---------------- +[INFO] TGeometry will be imported to VMC + +Info in : TG4RootNavigator created and registered to G4TransportationManager +isMaster=1 + +************************************************************** + Geant4 version Name: geant4-11-04-patch-02 [MT] (12-June-2026) + Copyright : Geant4 Collaboration + References : NIM A 506 (2003), 250-303 + : IEEE-TNS 53 (2006), 270-278 + : NIM A 835 (2016), 186-225 + WWW : http://geant4.org/ +************************************************************** + +Info in : Creating G4 hierarchy ... +Info in : Converting reflections in: FAIRGeom - FAIR geometry ... +Info in : Done +===> GEANT4 materials created and mapped to TGeo ones... +===> GEANT4 physical volumes created and mapped to TGeo hierarchy... +### INFO: TG4RootDetectorConstruction::Construct() finished +TG4PostDetConstruction::Initialize +G4 Stat: instantiated 1316 logical volumes + 230963 physical volumes +Info in : ROOT detector construction class connected to G4RunManager +Adding HadronPhysicsList FTFP_BERT_HP_EMZ +G4PhysListFactory::GetReferencePhysList +<<< Geant4 Physics List simulation engine: FTFP_BERT_HP + +G4VModularPhysicsList::ReplacePhysics: G4EmStandard with type : 2 is replaced with G4EmStandard_opt4 + +Adding SpecialPhysicsList stepLimiter+specialCuts+ +[INFO] External Decay Modes with script +[INFO] TEvtGenDecayer: Added PDG 443 to EvtGen particle list (Total: 1) +[INFO] TEvtGenDecayer: Added PDG 553 to EvtGen particle list (Total: 2) + + *------------------------------------------------------------------------------------* + | | + | *------------------------------------------------------------------------------* | + | | | | + | | | | + | | PPP Y Y TTTTT H H III A Welcome to the Lund Monte Carlo! | | + | | P P Y Y T H H I A A This is PYTHIA version 8.312 | | + | | PPP Y T HHHHH I AAAAA Last date of change: 23 May 2024 | | + | | P Y T H H I A A | | + | | | | + | | Program documentation and an archive of historic versions is found on: | | + | | | | + | | https://pythia.org/ | | + | | | | + | | PYTHIA is authored by a collaboration consisting of: | | + | | | | + | | Javira Altmann, Christian Bierlich, Naomi Cooke, Nishita Desai, | | + | | Leif Gellersen, Ilkka Helenius, Philip Ilten, Leif Lonnblad, | | + | | Stephen Mrenna, Christian Preuss, Torbjorn Sjostrand, Peter Skands, | | + | | Marius Utheim, and Rob Verheyen. | | + | | | | + | | The complete list of authors, including contact information and | | + | | affiliations, can be found on https://pythia.org/. | | + | | Problems or bugs should be reported on email at authors@pythia.org. | | + | | | | + | | The main program reference is C. Bierlich et al, | | + | | 'A comprehensive guide to the physics and usage of Pythia 8.3', | | + | | SciPost Phys. Codebases 8-r8.3 (2022) [arXiv:2203.11601 [hep-ph]] | | + | | | | + | | PYTHIA is released under the GNU General Public Licence version 2 or later.| | + | | Please respect the MCnet Guidelines for Event Generator Authors and Users. | | + | | | | + | | Disclaimer: this program comes without any guarantees. | | + | | Beware of errors and use common sense when interpreting results. | | + | | | | + | | Copyright (C) 2024 Torbjorn Sjostrand | | + | | | | + | | | | + | *------------------------------------------------------------------------------* | + | | + *------------------------------------------------------------------------------------* + + + *------- PYTHIA Process Initialization --------------------------* + | | + | We collide p+ with p+ at a CM energy of 1.400e+04 GeV | + | | + |------------------------------------------------------------------| + | | | + | Subprocess Code | Estimated | + | | max (mb) | + | | | + |------------------------------------------------------------------| + | | | + | A B -> A B elastic 102 | 2.258e+01 | + | | + *------- End PYTHIA Process Initialization -----------------------* + + *------- PYTHIA Multiparton Interactions Initialization ---------* + | | + | sigmaNonDiffractive = 57.17 mb | + | | + | pT0 = 2.65 gives sigmaInteraction = 328.46 mb: accepted | + | | + *------- End PYTHIA Multiparton Interactions Initialization -----* + + *------- PYTHIA Flag + Mode + Parm + Word + FVec + MVec + PVec + WVec Settings (changes only) ------------------* + | | + | Name | Now | Default Min Max | + | | | | + | SoftQCD:elastic | on | off | + | | + *------- End PYTHIA Flag + Mode + Parm + Word + FVec + MVec + PVec + WVec Settings -----------------------------* + + -------- PYTHIA Particle Data Table (changed only) ------------------------------------------------------------------------------ + + id name antiName spn chg col m0 mWidth mMin mMax tau0 res dec ext vis wid + no onMode bRatio meMode products + + no particle data has been changed from its default value + + -------- End PYTHIA Particle Data Table ----------------------------------------------------------------------------------------- + + + *------------------------------------------------------------------------------------* + | | + | *------------------------------------------------------------------------------* | + | | | | + | | | | + | | PPP Y Y TTTTT H H III A Welcome to the Lund Monte Carlo! | | + | | P P Y Y T H H I A A This is PYTHIA version 8.312 | | + | | PPP Y T HHHHH I AAAAA Last date of change: 23 May 2024 | | + | | P Y T H H I A A | | + | | | | + | | Program documentation and an archive of historic versions is found on: | | + | | | | + | | https://pythia.org/ | | + | | | | + | | PYTHIA is authored by a collaboration consisting of: | | + | | | | + | | Javira Altmann, Christian Bierlich, Naomi Cooke, Nishita Desai, | | + | | Leif Gellersen, Ilkka Helenius, Philip Ilten, Leif Lonnblad, | | + | | Stephen Mrenna, Christian Preuss, Torbjorn Sjostrand, Peter Skands, | | + | | Marius Utheim, and Rob Verheyen. | | + | | | | + | | The complete list of authors, including contact information and | | + | | affiliations, can be found on https://pythia.org/. | | + | | Problems or bugs should be reported on email at authors@pythia.org. | | + | | | | + | | The main program reference is C. Bierlich et al, | | + | | 'A comprehensive guide to the physics and usage of Pythia 8.3', | | + | | SciPost Phys. Codebases 8-r8.3 (2022) [arXiv:2203.11601 [hep-ph]] | | + | | | | + | | PYTHIA is released under the GNU General Public Licence version 2 or later.| | + | | Please respect the MCnet Guidelines for Event Generator Authors and Users. | | + | | | | + | | Disclaimer: this program comes without any guarantees. | | + | | Beware of errors and use common sense when interpreting results. | | + | | | | + | | Copyright (C) 2024 Torbjorn Sjostrand | | + | | | | + | | | | + | *------------------------------------------------------------------------------* | + | | + *------------------------------------------------------------------------------------* + + PYTHIA Error in ProcessLevel::init: no process switched on + PYTHIA Abort from Pythia::init: processLevel initialization failed +[DEBUG] TEvtGenDecayer: Pythia8 RNG seeded with 42 +EvtMTRandomEngine:Mersenne-Twister random number generator with seed = 42 +[INFO] TEvtGenDecayer: Random engine initialized with seed 42 +EvtGen:Defining EvtPhotosEngine using photonType = gamma +EvtGen:Setting up PHOTOS. +EvtGen:Using EvtGen random number engine also for Photos++ +Message from PHCORK(MODCOR):: initialization +MODOP=5 -- corrects Energy from mass+flow + +******************************************************************************** + + ========================= + PHOTOS, Version: 3.64 + Released at: 18/2/20 + ========================= + + Photos QED corrections in Particle Decays + + Monte Carlo Program - by E. Barberio, B. van Eijk and Z. Was + From version 2.09 - by P. Golonka and Z. Was + From version 3.00 - by N. Davidson, T. Przedzinski and Z. Was +******************************************************************************** + + Internal (default) input parameters: + + INTERF= 1 ISEC= 0 ITRE= 0 IEXP= 1 IFTOP= 1 IFW= 1 + ALPHA_QED= 7.297350e-03 XPHCUT= 1.000000e-07 + + Option with interference is active + Option with exponentiation is active EPSEXP=1.000000e-04 + Emision in t tbar production is active + Correction wt in decay of W is active + + WARNING: /HEPEVT/ is not anymore used. + +******************************************************************************** +MODOP=2 -- blocks emission in Kl to gamma e+e-: DEFAULT +MODOP=2 -- blocks emission in pi0 to gamma e+e-: DEFAULT + IPHQRK_setQarknoEmission MODOP=1 -- blocks emission from light quarks: DEFAULT +Message from PHCORK(MODCOR):: initialization +MODOP=5 -- corrects Energy from mass+flow +EvtGen:Pythia 8 codes need to be used in decay files +EvtGen:Using EvtGen random engine for Pythia 8 as well +EvtGen:Creating generic Pythia generator + + *------------------------------------------------------------------------------------* + | | + | *------------------------------------------------------------------------------* | + | | | | + | | | | + | | PPP Y Y TTTTT H H III A Welcome to the Lund Monte Carlo! | | + | | P P Y Y T H H I A A This is PYTHIA version 8.312 | | + | | PPP Y T HHHHH I AAAAA Last date of change: 23 May 2024 | | + | | P Y T H H I A A | | + | | | | + | | Program documentation and an archive of historic versions is found on: | | + | | | | + | | https://pythia.org/ | | + | | | | + | | PYTHIA is authored by a collaboration consisting of: | | + | | | | + | | Javira Altmann, Christian Bierlich, Naomi Cooke, Nishita Desai, | | + | | Leif Gellersen, Ilkka Helenius, Philip Ilten, Leif Lonnblad, | | + | | Stephen Mrenna, Christian Preuss, Torbjorn Sjostrand, Peter Skands, | | + | | Marius Utheim, and Rob Verheyen. | | + | | | | + | | The complete list of authors, including contact information and | | + | | affiliations, can be found on https://pythia.org/. | | + | | Problems or bugs should be reported on email at authors@pythia.org. | | + | | | | + | | The main program reference is C. Bierlich et al, | | + | | 'A comprehensive guide to the physics and usage of Pythia 8.3', | | + | | SciPost Phys. Codebases 8-r8.3 (2022) [arXiv:2203.11601 [hep-ph]] | | + | | | | + | | PYTHIA is released under the GNU General Public Licence version 2 or later.| | + | | Please respect the MCnet Guidelines for Event Generator Authors and Users. | | + | | | | + | | Disclaimer: this program comes without any guarantees. | | + | | Beware of errors and use common sense when interpreting results. | | + | | | | + | | Copyright (C) 2024 Torbjorn Sjostrand | | + | | | | + | | | | + | *------------------------------------------------------------------------------* | + | | + *------------------------------------------------------------------------------------* + +EvtGen:Creating alias Pythia generator +EvtGen:Defining EvtTauolaEngine. +EvtGen:Setting up TAUOLA. +EvtGen:Using EvtGen random number engine also for Tauola++ + + + + *************************************************************************** + * *****TAUOLA LIBRARY: VERSION 2.9 ****** * + * ***********October 2011 *************** * + * **AUTHORS: S.JADACH, Z.WAS************* * + * **R. DECKER, M. JEZABEK, J.H.KUEHN***** * + * **AVAILABLE FROM: www.cern.ch/wasm**** * + * ***** PUBLISHED IN COMP. PHYS. COMM.*** * + * 0: Physics initialization CLEO collab * + * see Alain Weinstein www home page: * + * http://www.cithep.caltech.edu/~ajw/ * + * /korb_doc.html#files * + * 1: Physics initialization RChL of: * + * O. Shekhovtsova, T. Przedzinski, * + * P. Roig and Z. Was * + * IFJPAN-2013-5, UAB-FT-731 * + * *******CPC 76 (1993) 361 ***** * + * **5 or more pi dec.: precision limited * + * ****DEKAY ROUTINE: INITIALIZATION****** * + * 0 JAK1 = DECAY MODE TAU+ * + * 0 JAK2 = DECAY MODE TAU- * + *************************************************************************** + + * 1 IVER = hadronic current version * + RANMAR INITIALIZED: 54217137 0 0 + + ************************************* + * TAUOLA C++ Interface v1.1.8 * + *-----------------------------------* + * * + * (c) Nadia Davidson, (1,2) * + * (c) Gizo Nanava, (3) * + * Tomasz Przedzinski,(4) * + * Elzbieta Richter-Was,(2,4) * + * Zbigniew Was (2,5) * + * * + * 1) Unimelb, Melbourne, Australia * + * 2) INP, Krakow, Poland * + * 3) University Bonn, Germany * + * 4) UJ, Krakow, Poland * + * 5) CERN, Geneva, Switzerland * + ************************************* + In F3pi: chpt + 1 resonance + 2 resonance (RchT) + KORB: rho/rhop -> pi-pi0 mixing: + KORB: rho = 0.769900024 0.151199996 + KORB: rhop = 1.37000000 0.509999990 -0.109999999 + KORB: K*/K*prime -> Kpi mixing: + KORB: kstp = 1.70000005 0.234999999 -3.79999988E-02 + KORB: a1/a1prime -> 3pi, KKpi mixing: + KORB: a1 = 1.27499998 0.699999988 + KORB: a1prim= 1.46099997 0.250000000 0.00000000 + KORB: K1A/K1B -> Kpipi mixing: + KORB: K1A = 1.26999998 9.00000036E-02 1.00000000 + KORB: K1B = 1.40199995 0.173999995 0.800000012 + KORB: rho/rhop/rhopp -> 4pi mixing: + KORB: rho = 0.769900024 0.151199996 + KORB: rhopp = 1.46500003 0.310000002 -0.109999999 + KORB: rhoppp= 1.70000005 0.234999999 -0.109999999 + KORB: 3PI-PI0 PARAMS: 0.00000000 0.124200001 0.160400003 0.271100014 0.444299996 + KORB: PI-3PI0 PARAMS: 0.00000000 1.00000000 + + *************************************************************************** + +Reading SANC input files. +File 'table1-1.txt' missing... skipped. +File 'table2-2.txt' missing... skipped. +File 'table11-11.txt' missing... skipped. + +[INFO] TEvtGenDecayer: PHOTOS radiative corrections enabled +EvtGen:Initializing EvtGen +EvtGen:Storing known decay models +EvtGen:Defining EvtBcToNPi model: Bc -> V + npi and Bc -> P + npi decays +from A.V. Berezhnoy, A.K. Likhoded, A.V. Luchinsky: Phys.Rev.D 82, 014012 (2010) and arXiV:1104.0808. +EvtGen:Warning, sum of branching fractions for omega is 0.994 +EvtGen:rescaled to one! +EvtGen:Warning, sum of branching fractions for phi is 0.999 +EvtGen:rescaled to one! +EvtGen:Warning, sum of branching fractions for f_2 is 0.999 +EvtGen:rescaled to one! +EvtGen:Warning, sum of branching fractions for chi_c1 is 0.996 +EvtGen:rescaled to one! +EvtGen:Warning, sum of branching fractions for Upsilon(2S) is 0.992 +EvtGen:rescaled to one! +EvtGen:Warning, sum of branching fractions for Upsilon(3S) is 0.999 +EvtGen:rescaled to one! +EvtGen:Mixing type integer set to 1 +EvtGen:Done initializing EvtGen +[DEBUG] TEvtGenDecayer: EvtGen created with 549 particle entries +[INFO] TEvtGenDecayer initialized - EvtGen: YES, Pythia8 fallback: YES, Particles configured for EvtGen: 2 +[DEBUG] EvtGen particle: PDG 443 +[DEBUG] EvtGen particle: PDG 553 +=== TEvtGenDecayer Configuration === +Particles using EvtGen: J/psi(443), Upsilon(553) +Other particles use TPythia8Decayer fallback +### TG4SpecialControlsV2 constructed +Visualization Manager instantiating with verbosity "warnings (3)"... +SetCuts Macro: Setting Processes.. +SetCuts Macro: Setting cuts.. +TG4RootDetectorConstruction::ConstructSDandField +TG4PostDetConstruction::InitializeSDandField +[INFO] FairMCApplication::InitGeometry: 0 +[DEBUG] nn.Data before: cbmroot.Event.MCEventHeader. +[DEBUG] nn.Data after: MCEventHeader. +[DEBUG] ################## +[DEBUG] nn.Data before: cbmroot.Event.MCEventHeader.TNamed +[DEBUG] nn.Data after: MCEventHeader.TNamed +[DEBUG] ################## +[DEBUG] nn.Data before: cbmroot.Event.MCEventHeader.TNamed.TObject +[DEBUG] nn.Data after: MCEventHeader.TNamed.TObject +[DEBUG] ################## +[DEBUG] nn.Data before: cbmroot.Event.MCEventHeader.TNamed.fUniqueID +[DEBUG] nn.Data after: MCEventHeader.TNamed.fUniqueID +[DEBUG] ################## +[DEBUG] nn.Data before: cbmroot.Event.MCEventHeader.TNamed.fBits +[DEBUG] nn.Data after: MCEventHeader.TNamed.fBits +[DEBUG] ################## +[DEBUG] nn.Data before: cbmroot.Event.MCEventHeader.TNamed.fName +[DEBUG] nn.Data after: MCEventHeader.TNamed.fName +[DEBUG] ################## +[DEBUG] nn.Data before: cbmroot.Event.MCEventHeader.TNamed.fTitle +[DEBUG] nn.Data after: MCEventHeader.TNamed.fTitle +[DEBUG] ################## +[DEBUG] nn.Data before: cbmroot.Event.MCEventHeader.fRunId +[DEBUG] nn.Data after: MCEventHeader.fRunId +[DEBUG] ################## +[DEBUG] nn.Data before: cbmroot.Event.MCEventHeader.fEventId +[DEBUG] nn.Data after: MCEventHeader.fEventId +[DEBUG] ################## +[DEBUG] nn.Data before: cbmroot.Event.MCEventHeader.fX +[DEBUG] nn.Data after: MCEventHeader.fX +[DEBUG] ################## +[DEBUG] nn.Data before: cbmroot.Event.MCEventHeader.fY +[DEBUG] nn.Data after: MCEventHeader.fY +[DEBUG] ################## +[DEBUG] nn.Data before: cbmroot.Event.MCEventHeader.fZ +[DEBUG] nn.Data after: MCEventHeader.fZ +[DEBUG] ################## +[DEBUG] nn.Data before: cbmroot.Event.MCEventHeader.fT +[DEBUG] nn.Data after: MCEventHeader.fT +[DEBUG] ################## +[DEBUG] nn.Data before: cbmroot.Event.MCEventHeader.fB +[DEBUG] nn.Data after: MCEventHeader.fB +[DEBUG] ################## +[DEBUG] nn.Data before: cbmroot.Event.MCEventHeader.fNPrim +[DEBUG] nn.Data after: MCEventHeader.fNPrim +[DEBUG] ################## +[DEBUG] nn.Data before: cbmroot.Event.MCEventHeader.fIsSet +[DEBUG] nn.Data after: MCEventHeader.fIsSet +[DEBUG] ################## +[DEBUG] nn.Data before: cbmroot.Event.MCEventHeader.fRotX +[DEBUG] nn.Data after: MCEventHeader.fRotX +[DEBUG] ################## +[DEBUG] nn.Data before: cbmroot.Event.MCEventHeader.fRotY +[DEBUG] nn.Data after: MCEventHeader.fRotY +[DEBUG] ################## +[DEBUG] nn.Data before: cbmroot.Event.MCEventHeader.fRotZ +[DEBUG] nn.Data after: MCEventHeader.fRotZ +[DEBUG] ################## +[DEBUG] nn.Data before: MCEventHeader. +[DEBUG] nn.Data after: MCEventHeader. +[DEBUG] ################## +[DEBUG] nn.Data before: MCEventHeader.TNamed +[DEBUG] nn.Data after: MCEventHeader.TNamed +[DEBUG] ################## +[DEBUG] nn.Data before: MCEventHeader.TNamed.TObject +[DEBUG] nn.Data after: MCEventHeader.TNamed.TObject +[DEBUG] ################## +[DEBUG] nn.Data before: MCEventHeader.TNamed.fUniqueID +[DEBUG] nn.Data after: MCEventHeader.TNamed.fUniqueID +[DEBUG] ################## +[DEBUG] nn.Data before: MCEventHeader.TNamed.fBits +[DEBUG] nn.Data after: MCEventHeader.TNamed.fBits +[DEBUG] ################## +[DEBUG] nn.Data before: MCEventHeader.TNamed.fName +[DEBUG] nn.Data after: MCEventHeader.TNamed.fName +[DEBUG] ################## +[DEBUG] nn.Data before: MCEventHeader.TNamed.fTitle +[DEBUG] nn.Data after: MCEventHeader.TNamed.fTitle +[DEBUG] ################## +[DEBUG] nn.Data before: MCEventHeader.fRunId +[DEBUG] nn.Data after: MCEventHeader.fRunId +[DEBUG] ################## +[DEBUG] nn.Data before: MCEventHeader.fEventId +[DEBUG] nn.Data after: MCEventHeader.fEventId +[DEBUG] ################## +[DEBUG] nn.Data before: MCEventHeader.fX +[DEBUG] nn.Data after: MCEventHeader.fX +[DEBUG] ################## +[DEBUG] nn.Data before: MCEventHeader.fY +[DEBUG] nn.Data after: MCEventHeader.fY +[DEBUG] ################## +[DEBUG] nn.Data before: MCEventHeader.fZ +[DEBUG] nn.Data after: MCEventHeader.fZ +[DEBUG] ################## +[DEBUG] nn.Data before: MCEventHeader.fT +[DEBUG] nn.Data after: MCEventHeader.fT +[DEBUG] ################## +[DEBUG] nn.Data before: MCEventHeader.fB +[DEBUG] nn.Data after: MCEventHeader.fB +[DEBUG] ################## +[DEBUG] nn.Data before: MCEventHeader.fNPrim +[DEBUG] nn.Data after: MCEventHeader.fNPrim +[DEBUG] ################## +[DEBUG] nn.Data before: MCEventHeader.fIsSet +[DEBUG] nn.Data after: MCEventHeader.fIsSet +[DEBUG] ################## +[DEBUG] nn.Data before: MCEventHeader.fRotX +[DEBUG] nn.Data after: MCEventHeader.fRotX +[DEBUG] ################## +[DEBUG] nn.Data before: MCEventHeader.fRotY +[DEBUG] nn.Data after: MCEventHeader.fRotY +[DEBUG] ################## +[DEBUG] nn.Data before: MCEventHeader.fRotZ +[DEBUG] nn.Data after: MCEventHeader.fRotZ +[DEBUG] ################## +[DEBUG] nn.Data before: MCEventHeader. +[DEBUG] nn.Data after: MCEventHeader. +[DEBUG] ################## +[DEBUG] nn.Data before: MCEventHeader.TNamed +[DEBUG] nn.Data after: MCEventHeader.TNamed +[DEBUG] ################## +[DEBUG] nn.Data before: MCEventHeader.TNamed.TObject +[DEBUG] nn.Data after: MCEventHeader.TNamed.TObject +[DEBUG] ################## +[DEBUG] nn.Data before: MCEventHeader.TNamed.fUniqueID +[DEBUG] nn.Data after: MCEventHeader.TNamed.fUniqueID +[DEBUG] ################## +[DEBUG] nn.Data before: MCEventHeader.TNamed.fBits +[DEBUG] nn.Data after: MCEventHeader.TNamed.fBits +[DEBUG] ################## +[DEBUG] nn.Data before: MCEventHeader.TNamed.fName +[DEBUG] nn.Data after: MCEventHeader.TNamed.fName +[DEBUG] ################## +[DEBUG] nn.Data before: MCEventHeader.TNamed.fTitle +[DEBUG] nn.Data after: MCEventHeader.TNamed.fTitle +[DEBUG] ################## +[DEBUG] nn.Data before: MCEventHeader.fRunId +[DEBUG] nn.Data after: MCEventHeader.fRunId +[DEBUG] ################## +[DEBUG] nn.Data before: MCEventHeader.fEventId +[DEBUG] nn.Data after: MCEventHeader.fEventId +[DEBUG] ################## +[DEBUG] nn.Data before: MCEventHeader.fX +[DEBUG] nn.Data after: MCEventHeader.fX +[DEBUG] ################## +[DEBUG] nn.Data before: MCEventHeader.fY +[DEBUG] nn.Data after: MCEventHeader.fY +[DEBUG] ################## +[DEBUG] nn.Data before: MCEventHeader.fZ +[DEBUG] nn.Data after: MCEventHeader.fZ +[DEBUG] ################## +[DEBUG] nn.Data before: MCEventHeader.fT +[DEBUG] nn.Data after: MCEventHeader.fT +[DEBUG] ################## +[DEBUG] nn.Data before: MCEventHeader.fB +[DEBUG] nn.Data after: MCEventHeader.fB +[DEBUG] ################## +[DEBUG] nn.Data before: MCEventHeader.fNPrim +[DEBUG] nn.Data after: MCEventHeader.fNPrim +[DEBUG] ################## +[DEBUG] nn.Data before: MCEventHeader.fIsSet +[DEBUG] nn.Data after: MCEventHeader.fIsSet +[DEBUG] ################## +[DEBUG] nn.Data before: MCEventHeader.fRotX +[DEBUG] nn.Data after: MCEventHeader.fRotX +[DEBUG] ################## +[DEBUG] nn.Data before: MCEventHeader.fRotY +[DEBUG] nn.Data after: MCEventHeader.fRotY +[DEBUG] ################## +[DEBUG] nn.Data before: MCEventHeader.fRotZ +[DEBUG] nn.Data after: MCEventHeader.fRotZ +[DEBUG] ################## +[INFO] CREATING BRANCH MCTrack +[INFO] CREATING BRANCH MTCDetPoint +[INFO] CREATING BRANCH SiliconTargetPoint +[INFO] CREATING BRANCH TTPoint +[INFO] CREATING BRANCH TargetPoint +[INFO] CREATING BRANCH TimeDetPoint +[INFO] CREATING BRANCH UpstreamTaggerPoint +[INFO] CREATING BRANCH splitcalPoint +[INFO] CREATING BRANCH strawtubesPoint +[INFO] CREATING BRANCH vetoPoint +Global field created with stepper DormandPrince745 +Local (in MTC_iron) field created with stepper DormandPrince745 + G4ChordFinder: stepperDriverId: 2 +### INFO: TG4RootDetectorConstruction::ConstructSDandField finished + + hInelastic FTFP_BERT_HP : threshold between BERT and FTFP is over the interval + for pions : 3 to 6 GeV + for kaons : 3 to 6 GeV + for proton : 3 to 6 GeV + for neutron : 3 to 6 GeV + +TG4ComposedPhysicsList::ConstructProcess done +Available UI session types: [ Qt, tcsh, csh ] +[INFO] Open external file with charm or beauty hadrons: $FAIRSHIP/files/Cascade-parp16-MSTP82-1-MSEL4-76Mpot_1_5000.root +[DEBUG] tau root 0.000214947[s] ctau root = 6.4484e+06[cm] +[DEBUG] ctau pythia 6.44394e+07[mm] + + *------- PYTHIA Flag + Mode + Parm + Word + FVec + MVec + PVec + WVec Settings (changes only) ------------------* + | | + | Name | Now | Default Min Max | + | | | | + | HardQCD:hardccbar | on | off | + | Next:numberCount | 0 | 1000 0 | + | ProcessLevel:all | off | on | + | | + *------- End PYTHIA Flag + Mode + Parm + Word + FVec + MVec + PVec + WVec Settings -----------------------------* + + -------- PYTHIA Particle Data Table (changed only) ------------------------------------------------------------------------------ + + id name antiName spn chg col m0 mWidth mMin mMax tau0 res dec ext vis wid + no onMode bRatio meMode products + + 13 mu- mu+ 2 -3 0 0.10566 0.00000 0.10566 0.10566 6.58654e+05 0 0 0 1 0 + 0 1 1.0000000 22 -12 11 14 + + 15 tau- tau+ 2 -3 0 1.77682 0.00000 1.77682 1.77682 8.71100e-02 0 1 0 1 0 + 0 1 0.2437410 1521 9900015 -211 + 1 1 0.0114128 1521 9900015 -321 + 2 1 0.0504430 1521 9900015 -213 + 3 1 0.1236891 1531 9900015 11 -12 + 4 1 0.0294090 1531 9900015 11 16 + 5 1 0.1126970 1531 9900015 13 -14 + 6 1 0.4286081 1531 9900015 13 16 + + 130 K_L0 1 0 0 0.49761 0.00000 0.49761 0.49761 1.53300e+04 0 0 0 1 0 + 0 1 0.1952278 0 111 111 111 + 1 1 0.1254178 0 211 -211 111 + 2 1 0.2027688 22 -12 11 211 + 3 1 0.2027688 22 12 -11 -211 + 4 1 0.1352191 22 -14 13 211 + 5 1 0.1352191 22 14 -13 -211 + 6 1 0.0019673 0 211 -211 + 7 1 0.0008641 0 111 111 + 8 1 0.0005471 0 22 22 + + 211 pi+ pi- 1 3 0 0.13957 0.00000 0.13957 0.13957 7.80450e+03 0 0 0 1 0 + 0 1 0.9998770 0 -13 14 + 1 1 0.0001230 0 -11 12 + + 310 K_S0 1 0 0 0.49761 0.00000 0.49761 0.49761 2.68420e+01 0 0 0 1 0 + 0 1 0.6922420 0 211 -211 + 1 1 0.3070073 0 111 111 + 2 1 0.0000479 12 211 -211 11 -11 + 3 1 0.0003501 22 -12 11 211 + 4 1 0.0003501 22 12 -11 -211 + 5 1 0.0000026 0 22 22 + + 321 K+ K- 1 3 0 0.49368 0.00000 0.49368 0.49368 3.71300e+03 0 0 0 1 0 + 0 1 0.6355250 0 -13 14 + 1 1 0.0000158 0 -11 12 + 2 1 0.2066081 0 211 111 + 3 1 0.0559022 0 211 211 -211 + 4 1 0.0176107 0 211 111 111 + 5 1 0.0507020 22 12 -11 111 + 6 1 0.0335313 22 14 -13 111 + 7 1 0.0000220 0 -11 12 111 111 + 8 1 0.0000409 0 -11 12 211 -211 + 9 1 0.0000140 0 -13 14 111 111 + 10 1 0.0000280 0 -13 14 211 -211 + + 411 D+ D- 1 3 0 1.86962 0.00000 1.86962 1.86962 3.11800e-01 0 1 0 1 0 + 0 1 0.0601713 0 9900015 -13 + 1 1 0.0037016 0 9900015 -11 + 2 1 0.0010810 22 -11 9900015 -311 + 3 1 0.0142622 22 -13 9900015 -311 + 4 1 0.9207840 0 22 -11 + + 421 D0 Dbar0 1 0 0 1.86486 0.00000 1.86486 1.86486 1.22900e-01 0 1 0 1 0 + 0 1 0.0004213 22 -11 9900015 -321 + 1 1 0.0055549 22 -13 9900015 -321 + 2 1 0.9940237 0 22 22 + + 431 D_s+ D_s- 1 3 0 1.96849 0.00000 1.96849 1.96849 1.49900e-01 0 1 0 1 0 + 0 1 0.9280184 0 9900015 -13 + 1 1 0.0571025 0 9900015 -11 + 2 1 0.0005520 22 -11 9900015 221 + 3 1 0.0077723 22 -13 9900015 221 + 4 1 0.0065547 0 -15 16 + + 2112 n0 nbar0 2 0 0 0.93957 0.00000 0.93957 0.93957 2.65500e+14 0 0 0 1 0 + 0 1 1.0000000 22 -12 11 2212 + + 3112 Sigma- Sigmabar+ 2 -3 0 1.19745 0.00000 1.19745 1.19745 4.43400e+01 0 0 0 1 0 + 0 1 0.9984757 0 2112 -211 + 1 1 0.0010170 22 -12 11 2112 + 2 1 0.0004500 22 -14 13 2112 + 3 1 0.0000573 22 -12 11 3122 + + 3122 Lambda0 Lambdabar0 2 0 0 1.11568 0.00000 1.11568 1.11568 7.89000e+01 0 0 0 1 0 + 0 1 0.6391668 0 2212 -211 + 1 1 0.3580935 0 2112 111 + 2 1 0.0017505 0 2112 22 + 3 1 0.0008322 22 -12 11 2212 + 4 1 0.0001570 22 -14 13 2212 + + 3222 Sigma+ Sigmabar- 2 3 0 1.18937 0.00000 1.18937 1.18937 2.40400e+01 0 0 0 1 0 + 0 1 0.5156743 0 2212 111 + 1 1 0.4830758 0 2112 211 + 2 1 0.0012299 0 2212 22 + 3 1 0.0000200 22 -11 12 3122 + + 3312 Xi- Xibar+ 2 -3 0 1.32171 0.00000 1.32171 1.32171 4.91000e+01 0 0 0 1 0 + 0 1 0.9988730 0 3122 -211 + 1 1 0.0001270 0 3112 22 + 2 1 0.0005630 22 -12 11 3122 + 3 1 0.0003500 22 -14 13 3122 + 4 1 0.0000870 22 -12 11 3212 + + 3322 Xi0 Xibar0 2 0 0 1.31486 0.00000 1.31486 1.31486 8.71000e+01 0 0 0 1 0 + 0 1 0.9952424 0 3122 111 + 1 1 0.0011700 0 3122 22 + 2 1 0.0033300 0 3212 22 + 3 1 0.0002530 22 -12 11 3222 + 4 1 0.0000046 22 -14 13 3222 + + 3334 Omega- Omegabar+ 4 -3 0 1.67245 0.00000 1.67245 1.67245 2.46100e+01 0 0 0 1 0 + 0 1 0.6737955 0 3122 -321 + 1 1 0.2345365 0 3322 -211 + 2 1 0.0854667 0 3312 111 + 3 1 0.0006360 0 3324 -211 + 4 1 0.0055653 22 -12 11 3322 + + 4122 Lambda_c+ Lambda_cbar- 2 3 0 2.28646 0.00000 2.28646 2.28646 5.99000e-02 0 1 0 1 0 + 0 1 0.0000252 22 -11 9900015 3122 + 1 1 0.0001428 22 -13 9900015 3122 + 2 1 0.9998321 0 22 -11 + + 4132 Xi_c0 Xi_cbar0 2 0 0 2.47088 0.00000 2.47088 2.47088 3.36000e-02 0 1 0 1 0 + 0 1 0.0000050 22 -11 9900015 -3312 + 1 1 0.0000361 22 -13 9900015 -3312 + 2 1 0.9999590 0 22 22 + + 9900015 N2 N2 2 0 0 1.00000 0.00000 1.00000 1.00000 6.44394e+07 0 1 0 1 0 + 0 1 0.0941122 0 211 13 + 1 1 0.0941122 0 -211 -13 + + -------- End PYTHIA Particle Data Table ----------------------------------------------------------------------------------------- + + +********************************************** + GEANT4 Geometry statistics: + 1316 logical volumes + 230963 physical volumes + 31 materials + 27 user limits + 712 sensitive detectors +********************************************** + +[INFO] Monte Carlo Engine Initialisation with: TGeant4 +[INFO] FairGenericVMCConfig::SetupPostInit() OFF. +[INFO] x limits: -500, 500, dx = 10 +[INFO] y limits: -500, 500, dy = 10 +[INFO] z limits: -750, 750, dz = 10 +[INFO] Offsets: x = 0, y = 0, z = 8957 +[INFO] Angles : phi = 0, theta = 0, psi = 0 +[INFO] Total number of bins = 1540351; Nx = 101, Ny = 101, Nz = 151 +[INFO] x limits: 0, 209.961, dx = 1.99963 +[INFO] y limits: 0, 200, dy = 2 +[INFO] z limits: -50, 3100, dz = 5 +[INFO] Offsets: x = 0, y = 0, z = 204 +[INFO] Angles : phi = 0, theta = 0, psi = 0 +[INFO] Total number of bins = 6755486; Nx = 106, Ny = 101, Nz = 631 +Adding field MainSpecMap +Adding field muonShieldField +Setting the Global field +Adding field TotalField to Global +[INFO] FairMCApplication::InitGeometry: 0 + G4ChordFinder: stepperDriverId: 2 + G4ChordFinder: stepperDriverId: 2 + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomFieldParameters0001 + issued by : G4FieldBuilder::ConstructField: +Field was already constructed. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +GammaToMuPair: gamma->mu+mu- Bethe Heitler process, SubType= 15 + good cross section parametrization from 211.317 MeV to 1e+12 GeV for all Z. + cross section factor: 1 + +AnnihiToMuPair: e+e->mu+mu- annihilation, atomic e- at rest, SubType=6 + threshold at 43.6931 GeV good description up to 1000 TeV for all Z. + +AnnihiToTauPair: e+e->tau+tau- annihilation, atomic e- at rest, SubType=18 + threshold at 12357.1 GeV good description up to 1000 TeV for all Z. +====================================================================== +====== Radioactive Decay Physics Parameters ======= +====================================================================== +min MeanLife (from G4NuclideTable) 1 ns +Max life time (from G4DeexPrecoParameters) 1000 ps +Internal e- conversion flag 1 +Stored internal conversion coefficients 1 +Enabled atomic relaxation mode 1 +Enable correlated gamma emission 0 +Max 2J for sampling of angular correlations 10 +Atomic de-excitation enabled 1 +Auger electron emission enabled 1 +Check EM cuts disabled for atomic de-excitation 1 +Use Bearden atomic level energies 0 +Use ANSTO fluorescence model 0 +Threshold for very long decay time at rest 1 y +====================================================================== + +======================================================= +====== ParticleHP Physics Parameters ======== +======================================================= + Use only photo-evaporation 0 + Skip missing isotopes 0 + Neglect Doppler 0 + Do not adjust final state 0 + Produce fission fragments 0 + Use WendtFissionModel 0 + Use NRESP71Model 0 + Use DBRC 0 + PHP use Poisson 0 + PHP check 1 + CHECK HP NAMES 0 + Enable DEBUG 0 + Use probability tables from +======================================================= + + +==================================================================== + HADRONIC PROCESSES SUMMARY (verbose level 1) +----------------------------------------------------------------------- + Hadronic Processes for B- + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for D- + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for GenericIon + Process: ionInelastic + Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n + Model: FTFP: 3 GeV/n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: RadioactiveDecay +----------------------------------------------------------------------- + Hadronic Processes for He3 + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: He3Inelastic + Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n + Model: FTFP: 3 GeV/n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV +----------------------------------------------------------------------- + Hadronic Processes for alpha + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: alphaInelastic + Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n + Model: FTFP: 3 GeV/n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV +----------------------------------------------------------------------- + Hadronic Processes for anti_He3 + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n + Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_He3Inelastic + Model: FTFP: 0 eV /n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_alpha + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n + Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_alphaInelastic + Model: FTFP: 0 eV /n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_deuteron + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n + Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_deuteronInelastic + Model: FTFP: 0 eV /n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +------------------------------------------------------------------------- + Hadronic Processes for anti_hypertriton + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_lambda + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_neutron + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100.1 MeV + Model: AntiAElastic: 100 MeV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_neutronInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_proton + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100.1 MeV + Model: AntiAElastic: 100 MeV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_protonInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_triton + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n + Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_tritonInelastic + Model: FTFP: 0 eV /n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for deuteron + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: dInelastic + Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n + Model: FTFP: 3 GeV/n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV +----------------------------------------------------------------------- + Hadronic Processes for e+ + Process: positronNuclear + Model: G4ElectroVDNuclearModel: 0 eV ---> 1 PeV + Cr_sctns: ElectroNuclearXS: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for e- + Process: electronNuclear + Model: G4ElectroVDNuclearModel: 0 eV ---> 1 PeV + Cr_sctns: ElectroNuclearXS: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for kaon+ + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: kaon+Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for kaon- + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: kaon-Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: hBertiniCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for lambda + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: lambdaInelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for mu+ + Process: muonNuclear + Model: G4MuonVDNuclearModel: 0 eV ---> 1 PeV + Cr_sctns: KokoulinMuonNuclearXS: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for mu- + Process: muonNuclear + Model: G4MuonVDNuclearModel: 0 eV ---> 1 PeV + Cr_sctns: KokoulinMuonNuclearXS: 0 eV ---> 100 TeV + Process: muMinusCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for neutron + Process: hadElastic + Model: hElasticCHIPS: 19.5 MeV ---> 100 TeV + Model: NeutronHPElastic: 0 eV ---> 20 MeV + Cr_sctns: NeutronHPElasticXS: 0 eV ---> 20 MeV + Cr_sctns: G4NeutronElasticXS: 0 eV ---> 100 TeV + Process: neutronInelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 19.9 MeV ---> 6 GeV + Model: NeutronHPInelastic: 0 eV ---> 20 MeV + Cr_sctns: NeutronHPInelasticXS: 0 eV ---> 20 MeV + Cr_sctns: G4NeutronInelasticXS: 0 eV ---> 100 TeV + Process: nCapture + Model: nRadCaptureHP: 0 eV ---> 20 MeV + Model: nRadCapture: 19.9 MeV ---> 100 TeV + Cr_sctns: NeutronHPCaptureXS: 0 eV ---> 100 TeV + Cr_sctns: G4NeutronCaptureXS: 0 eV ---> 100 TeV + Process: nFission + Model: NeutronHPFission: 0 eV ---> 20 MeV + Model: G4LFission: 19.9 MeV ---> 100 TeV + Cr_sctns: NeutronHPFissionXS: 0 eV ---> 20 MeV + Cr_sctns: ZeroXS: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for pi+ + Process: hadElastic + Model: hElasticGlauber: 0 eV ---> 100 TeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV + Process: pi+Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for pi- + Process: hadElastic + Model: hElasticGlauber: 0 eV ---> 100 TeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV + Process: pi-Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV + Process: hBertiniCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for proton + Process: hadElastic + Model: hElasticCHIPS: 0 eV ---> 100 TeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV + Process: protonInelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for sigma- + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: sigma-Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: hBertiniCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for triton + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: tInelastic + Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n + Model: FTFP: 3 GeV/n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: RadioactiveDecay +======================================================================= +====== Geant4 Native Pre-compound Model Parameters ======== +======================================================================= +Type of pre-compound model 0 +Type of pre-compound inverse x-section 1 +Pre-compound model active 1 +Pre-compound excitation low energy 0.1 MeV +Pre-compound excitation high energy 15 MeV +Angular generator for pre-compound model 1 +Use NeverGoBack option for pre-compound model 0 +Use SoftCutOff option for pre-compound model 0 +Use CEM transitions for pre-compound model 1 +Use GNASH transitions for pre-compound model 0 +Use HETC submodel for pre-compound model 0 +======================================================================= +====== Nuclear De-excitation Module Parameters ======== +======================================================================= +Type of de-excitation inverse x-section 3 +Type of de-excitation factory Evaporation+GEM +Number of de-excitation channels 68 +Type of Fermi BreakUp model ModelVI +Min excitation energy 0.01 keV +Min energy per nucleon for multifragmentation 2e+05 MeV +Level density (1/MeV) 0.075 +Use simple level density model 1 +Use discrete excitation energy of the residual 0 +Time limit for long lived isomeres 1 ns +Isomer production flag 1 +Internal e- conversion flag 1 +Store e- internal conversion data 1 +Correlated gamma emission flag 0 +Max 2J for sampling of angular correlations 10 +======================================================================= + PYTHIA Warning in Pythia::check: not quite matched particle energy/momentum/mass + + -------- PYTHIA Event Listing (complete event) --------------------------------------------------------------------------------- + + no id name status mothers daughters colours p_x p_y p_z e m + 0 90 (system) -11 0 0 0 0 0 0 0.233 1.128 50.285 50.333 1.869 + 1 411 D+ 1 0 0 0 0 0 0 0.233 1.128 50.285 50.333 1.869 + Charge sum: 1.000 Momentum sum: 0.233 1.128 50.285 50.333 1.869 + + -------- End PYTHIA Event Listing ----------------------------------------------------------------------------------------------- + + -------- PYTHIA Event Listing (complete event) --------------------------------------------------------------------------------- + + no id name status mothers daughters colours p_x p_y p_z e m + 0 90 (system) -11 0 0 0 0 0 0 0.233 1.128 50.285 50.333 1.869 + 1 411 (D+) -1 0 0 2 3 0 0 0.233 1.128 50.285 50.333 1.869 + 2 22 gamma 91 1 0 0 0 0 0 0.383 1.429 48.051 48.074 0.000 + 3 -11 e+ 91 1 0 0 0 0 0 -0.150 -0.301 2.234 2.259 0.001 + Charge sum: 1.000 Momentum sum: 0.233 1.128 50.285 50.333 1.869 + + -------- End PYTHIA Event Listing ----------------------------------------------------------------------------------------------- +[INFO] ship event 0 / pythia event-nr 41 +[DEBUG] (Event 1) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 1 (MC 0) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 2) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 2 (MC 1) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 3) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 3 (MC 2) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 4) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 4 (MC 3) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 5) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 5 (MC 4) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 6) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 6 (MC 5) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 7) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 7 (MC 6) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 8) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 8 (MC 7) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 9) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 9 (MC 8) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 10) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 10 (MC 9) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 11) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 11 (MC 10) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 12) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 12 (MC 11) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 13) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 13 (MC 12) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 14) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 14 (MC 13) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 15) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 15 (MC 14) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 16) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 16 (MC 15) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 17) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 17 (MC 16) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 18) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 18 (MC 17) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 19) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 19 (MC 18) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 20) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 20 (MC 19) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 21) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 21 (MC 20) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 22) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 22 (MC 21) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 23) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 23 (MC 22) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 24) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 24 (MC 23) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 25) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 25 (MC 24) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 26) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 26 (MC 25) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 27) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 27 (MC 26) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 28) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 28 (MC 27) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 29) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 29 (MC 28) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 30) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 30 (MC 29) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 31) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 31 (MC 30) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 32) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 32 (MC 31) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 33) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 33 (MC 32) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 34) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 34 (MC 33) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 35) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 35 (MC 34) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 36) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 36 (MC 35) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 37) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 37 (MC 36) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 38) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 38 (MC 37) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 39) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 39 (MC 38) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 40) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 40 (MC 39) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 41) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : part0005 + issued by : G4PrimaryParticle::Set4Momentum +Primary particle PDG=-13 deltaMass(MeV)=1.64106 is larger than the tolerance(MeV)=1 + Specified mass(MeV)=104.017 while PDG mass(MEV)=105.658 + To change the tolerance or the exception severity, use G4PrimaryTransformer::SetKETolerance() method. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +[DEBUG] [0 FairMCMCApplication::FinishEvent: 41 (MC 40) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 42) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : part0005 + issued by : G4PrimaryParticle::Set4Momentum +Primary particle PDG=211 deltaMass(MeV)=1.76146 is larger than the tolerance(MeV)=1 + Specified mass(MeV)=141.332 while PDG mass(MEV)=139.57 + To change the tolerance or the exception severity, use G4PrimaryTransformer::SetKETolerance() method. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +[DEBUG] [0 FairMCMCApplication::FinishEvent: 42 (MC 41) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 43) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 43 (MC 42) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 44) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 44 (MC 43) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 45) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 45 (MC 44) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 46) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 46 (MC 45) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 47) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 47 (MC 46) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 48) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 48 (MC 47) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 49) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 49 (MC 48) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 50) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 50 (MC 49) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 51) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 51 (MC 50) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 52) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 52 (MC 51) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 53) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 53 (MC 52) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 54) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 54 (MC 53) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 55) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 55 (MC 54) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 56) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 56 (MC 55) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 57) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 57 (MC 56) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 58) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 58 (MC 57) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 59) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 59 (MC 58) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 60) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 60 (MC 59) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 61) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 61 (MC 60) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 62) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 62 (MC 61) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 63) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 63 (MC 62) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 64) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 64 (MC 63) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 65) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 65 (MC 64) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 66) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 66 (MC 65) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 67) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 67 (MC 66) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 68) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 68 (MC 67) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 69) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 69 (MC 68) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 70) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 70 (MC 69) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 71) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 71 (MC 70) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 72) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 72 (MC 71) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 73) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 73 (MC 72) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 74) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 74 (MC 73) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 75) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 75 (MC 74) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 76) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 76 (MC 75) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 77) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 77 (MC 76) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 78) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 78 (MC 77) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 79) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 79 (MC 78) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 80) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : part0005 + issued by : G4PrimaryParticle::Set4Momentum +Primary particle PDG=-211 deltaMass(MeV)=7.61907 is larger than the tolerance(MeV)=1 + Specified mass(MeV)=147.189 while PDG mass(MEV)=139.57 + To change the tolerance or the exception severity, use G4PrimaryTransformer::SetKETolerance() method. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +[DEBUG] [0 FairMCMCApplication::FinishEvent: 80 (MC 79) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 81) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 81 (MC 80) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 82) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 82 (MC 81) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 83) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 83 (MC 82) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 84) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 84 (MC 83) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 85) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 85 (MC 84) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 86) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 86 (MC 85) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 87) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 87 (MC 86) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 88) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 88 (MC 87) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 89) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 89 (MC 88) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 90) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 90 (MC 89) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 91) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : part0005 + issued by : G4PrimaryParticle::Set4Momentum +Primary particle PDG=-13 deltaMass(MeV)=1.11581 is larger than the tolerance(MeV)=1 + Specified mass(MeV)=104.543 while PDG mass(MEV)=105.658 + To change the tolerance or the exception severity, use G4PrimaryTransformer::SetKETolerance() method. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +[DEBUG] [0 FairMCMCApplication::FinishEvent: 91 (MC 90) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 92) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 92 (MC 91) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 93) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 93 (MC 92) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 94) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 94 (MC 93) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 95) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 95 (MC 94) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 96) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 96 (MC 95) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 97) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 97 (MC 96) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 98) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 98 (MC 97) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 99) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 99 (MC 98) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] (Event 100) 5 primary tracks from vertex (0, 0, 0) with beam angle (0, 0) +[DEBUG] [0 FairMCMCApplication::FinishEvent: 100 (MC 99) +[DEBUG] ShipStack: Filling MCTrack array... +[DEBUG] ShipStack: Updating track indizes... +[DEBUG] ...stack and 9 collections updated. +[DEBUG] FairMCMCApplication::FinishRun() start +[DEBUG] FairRootFileSink::Write to file: ./sim_ci-test.root +[DEBUG] Done FairMCMCApplication::FinishRun() +[DEBUG] RuntimeDb: write container: FairBaseParSet +[INFO] *** FairBaseParSet written to ROOT file version: 1 +[DEBUG] RuntimeDb: write container: FairGeoParSet +[INFO] *** FairGeoParSet written to ROOT file version: 1 +['tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten'] [4.5, 1.8, 1.7, 1.7, 1.8, 1.9, 2.1, 1.9, 2.1, 2.4, 2.8, 3.3, 4.1, 5.6, 8.8, 17.2, 28.7, 28.8, 28.8] [0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.48, 0.5, 0.68, 0.68, 0] +SiliconTarget zPosition set to 2605.02 +Generating HNL events of mass 1.000 GeV +and with couplings= [4.47e-10, 7.15e-09, 1.88e-09] +Pythia8 configuration: Made mu- stable for Pythia, should decay in Geant4 +Pythia8 configuration: Made K_L0 stable for Pythia, should decay in Geant4 +Pythia8 configuration: Made pi+ stable for Pythia, should decay in Geant4 +Pythia8 configuration: Made K_S0 stable for Pythia, should decay in Geant4 +Pythia8 configuration: Made K+ stable for Pythia, should decay in Geant4 +Pythia8 configuration: Made n0 stable for Pythia, should decay in Geant4 +Pythia8 configuration: Made Sigma- stable for Pythia, should decay in Geant4 +Pythia8 configuration: Made Lambda0 stable for Pythia, should decay in Geant4 +Pythia8 configuration: Made Sigma+ stable for Pythia, should decay in Geant4 +Pythia8 configuration: Made Xi- stable for Pythia, should decay in Geant4 +Pythia8 configuration: Made Xi0 stable for Pythia, should decay in Geant4 +Pythia8 configuration: Made Omega- stable for Pythia, should decay in Geant4 +HNLbranchings instance initialized with couplings: + U2e = 4.47e-10 + U2mu = 7.15e-09 + U2tau = 1.88e-09 +and mass: + m = 1.0 GeV +HNL ctau 6443943.553548283 +One simulated event per 4.671e+08 meson decays +Using TEvtGenDecayer for J/psi and quarkonium decays with EvtGen +Calling addVMCFields + +Macro finished successfully. +number of retries (no HNL produced) 2566 +number of geometric rejections (outside vessel acceptance) 183 +Output file is ./sim_ci-test.root +Parameter file is ./params_ci-test.root +Geometry file is ./geo_ci-test.root +======================================================================== +Simulation finished successfully +======================================================================== +[DEBUG] Enter Destructor of FairRunSim +[DEBUG] Start deleting all registered modules +[DEBUG] Finish deleting all registered modules +[DEBUG] Enter Destructor of FairRun +[DEBUG] RuntimeDb: write container: FairBaseParSet +[DEBUG] RuntimeDb: write container: FairGeoParSet +[DEBUG] Leave Destructor of FairRun +[DEBUG] Enter Destructor of FairLinkManager +[DEBUG] Leave Destructor of FairLinkManager +[DEBUG] Enter Destructor of FairRootManager +[DEBUG] removed RTDB container factory FairBaseContFact diff --git a/tests/fairship_tests/references/evtgen-summary.txt b/tests/fairship_tests/references/evtgen-summary.txt new file mode 100644 index 0000000000..d89ce50506 --- /dev/null +++ b/tests/fairship_tests/references/evtgen-summary.txt @@ -0,0 +1,1101 @@ + + *------------------------------------------------------------------------------------* + | | + | *------------------------------------------------------------------------------* | + | | | | + | | | | + | | PPP Y Y TTTTT H H III A Welcome to the Lund Monte Carlo! | | + | | P P Y Y T H H I A A This is PYTHIA version 8.312 | | + | | PPP Y T HHHHH I AAAAA Last date of change: 23 May 2024 | | + | | P Y T H H I A A | | + | | | | + | | Program documentation and an archive of historic versions is found on: | | + | | | | + | | https://pythia.org/ | | + | | | | + | | PYTHIA is authored by a collaboration consisting of: | | + | | | | + | | Javira Altmann, Christian Bierlich, Naomi Cooke, Nishita Desai, | | + | | Leif Gellersen, Ilkka Helenius, Philip Ilten, Leif Lonnblad, | | + | | Stephen Mrenna, Christian Preuss, Torbjorn Sjostrand, Peter Skands, | | + | | Marius Utheim, and Rob Verheyen. | | + | | | | + | | The complete list of authors, including contact information and | | + | | affiliations, can be found on https://pythia.org/. | | + | | Problems or bugs should be reported on email at authors@pythia.org. | | + | | | | + | | The main program reference is C. Bierlich et al, | | + | | 'A comprehensive guide to the physics and usage of Pythia 8.3', | | + | | SciPost Phys. Codebases 8-r8.3 (2022) [arXiv:2203.11601 [hep-ph]] | | + | | | | + | | PYTHIA is released under the GNU General Public Licence version 2 or later.| | + | | Please respect the MCnet Guidelines for Event Generator Authors and Users. | | + | | | | + | | Disclaimer: this program comes without any guarantees. | | + | | Beware of errors and use common sense when interpreting results. | | + | | | | + | | Copyright (C) 2024 Torbjorn Sjostrand | | + | | | | + | | | | + | *------------------------------------------------------------------------------* | + | | + *------------------------------------------------------------------------------------* + + + -------- PYTHIA Particle Data Table (partial) ----------------------------------------------------------------------------------- + + id name antiName spn chg col m0 mWidth mMin mMax tau0 res dec ext vis wid + no onMode bRatio meMode products + + 9900015 N2 N2 2 0 0 1.00000 0.00000 0.00000 0.00000 6.44394e+07 0 1 0 1 0 + 0 1 0.0941122 0 211 13 + 1 1 0.0941122 0 -211 -13 + + -------- End PYTHIA Particle Data Table ----------------------------------------------------------------------------------------- + +[INFO] FairRootFileSink initialized. +[INFO] - cbmroot +[INFO] - ./sim_evtgen_summary.root +[INFO] ============== FairRunSim: Initialising simulation run ============== +Info in : Geometry FAIRGeom, FAIR geometry created +[INFO] FairGeoMedia: Read media + +************************************************************* +************************************************************* +[WARN] FairGenericVMCConfig::Setup() Using gConfig.C macro DEPRACATED. +[WARN] Check FairRoot/examples/common/gconfig/ for current YAML implementation. +[INFO] ---------------User config is used: g4Config.C + +============================================================= + Virtual Monte Carlo Library + Version 2.2 ( 22 April 2026 ) +============================================================= + +============================================================= + Geant4 Virtual Monte Carlo + Version 6.8 ( 2 February 2026 ) + WWW : http://root.cern.ch/drupal/content/geant4-vmc +============================================================= + +Running TVirtualMCApplication::ConstructGeometry +Info in : Top volume is cave. Master volume is cave +Info in : --- Maximum geometry depth set to 100 +[INFO] -- Target cooler: PressurisedHe90 T=363.15 K, P=9.98641e+09 MeV/mm3, Density=0.002121 +[INFO] veto: Decay Volume medium set as: helium +Info in : Automatic visible depth disabled + Z Position (Upstream Tagger1) 3272.0000000 +Info in : Fixing runtime shapes... +Info in : ...Nothing to fix +Info in : Counting nodes... +Info in : Voxelizing... +Info in : Building cache... +Info in : max level = 5, max placements = 14153 +Info in : 46607 nodes/ 695 volume UID's in FAIR geometry +Info in : ----------------modeler ready---------------- +[INFO] TGeometry will be imported to VMC + +Info in : TG4RootNavigator created and registered to G4TransportationManager +isMaster=1 + +************************************************************** + Geant4 version Name: geant4-11-04-patch-02 [MT] (12-June-2026) + Copyright : Geant4 Collaboration + References : NIM A 506 (2003), 250-303 + : IEEE-TNS 53 (2006), 270-278 + : NIM A 835 (2016), 186-225 + WWW : http://geant4.org/ +************************************************************** + +Info in : Creating G4 hierarchy ... +Info in : Converting reflections in: FAIRGeom - FAIR geometry ... +Info in : Done +===> GEANT4 materials created and mapped to TGeo ones... +===> GEANT4 physical volumes created and mapped to TGeo hierarchy... +### INFO: TG4RootDetectorConstruction::Construct() finished +TG4PostDetConstruction::Initialize +G4 Stat: instantiated 701 logical volumes + 46126 physical volumes +Info in : ROOT detector construction class connected to G4RunManager +Adding HadronPhysicsList FTFP_BERT_HP_EMZ +G4PhysListFactory::GetReferencePhysList +<<< Geant4 Physics List simulation engine: FTFP_BERT_HP + +G4VModularPhysicsList::ReplacePhysics: G4EmStandard with type : 2 is replaced with G4EmStandard_opt4 + +Adding SpecialPhysicsList stepLimiter+specialCuts+ +[INFO] External Decay Modes with script +[INFO] TEvtGenDecayer: Added PDG 443 to EvtGen particle list (Total: 1) +[INFO] TEvtGenDecayer: Added PDG 553 to EvtGen particle list (Total: 2) + + *------------------------------------------------------------------------------------* + | | + | *------------------------------------------------------------------------------* | + | | | | + | | | | + | | PPP Y Y TTTTT H H III A Welcome to the Lund Monte Carlo! | | + | | P P Y Y T H H I A A This is PYTHIA version 8.312 | | + | | PPP Y T HHHHH I AAAAA Last date of change: 23 May 2024 | | + | | P Y T H H I A A | | + | | | | + | | Program documentation and an archive of historic versions is found on: | | + | | | | + | | https://pythia.org/ | | + | | | | + | | PYTHIA is authored by a collaboration consisting of: | | + | | | | + | | Javira Altmann, Christian Bierlich, Naomi Cooke, Nishita Desai, | | + | | Leif Gellersen, Ilkka Helenius, Philip Ilten, Leif Lonnblad, | | + | | Stephen Mrenna, Christian Preuss, Torbjorn Sjostrand, Peter Skands, | | + | | Marius Utheim, and Rob Verheyen. | | + | | | | + | | The complete list of authors, including contact information and | | + | | affiliations, can be found on https://pythia.org/. | | + | | Problems or bugs should be reported on email at authors@pythia.org. | | + | | | | + | | The main program reference is C. Bierlich et al, | | + | | 'A comprehensive guide to the physics and usage of Pythia 8.3', | | + | | SciPost Phys. Codebases 8-r8.3 (2022) [arXiv:2203.11601 [hep-ph]] | | + | | | | + | | PYTHIA is released under the GNU General Public Licence version 2 or later.| | + | | Please respect the MCnet Guidelines for Event Generator Authors and Users. | | + | | | | + | | Disclaimer: this program comes without any guarantees. | | + | | Beware of errors and use common sense when interpreting results. | | + | | | | + | | Copyright (C) 2024 Torbjorn Sjostrand | | + | | | | + | | | | + | *------------------------------------------------------------------------------* | + | | + *------------------------------------------------------------------------------------* + + + *------- PYTHIA Process Initialization --------------------------* + | | + | We collide p+ with p+ at a CM energy of 1.400e+04 GeV | + | | + |------------------------------------------------------------------| + | | | + | Subprocess Code | Estimated | + | | max (mb) | + | | | + |------------------------------------------------------------------| + | | | + | A B -> A B elastic 102 | 2.258e+01 | + | | + *------- End PYTHIA Process Initialization -----------------------* + + *------- PYTHIA Multiparton Interactions Initialization ---------* + | | + | sigmaNonDiffractive = 57.17 mb | + | | + | pT0 = 2.65 gives sigmaInteraction = 328.46 mb: accepted | + | | + *------- End PYTHIA Multiparton Interactions Initialization -----* + + *------- PYTHIA Flag + Mode + Parm + Word + FVec + MVec + PVec + WVec Settings (changes only) ------------------* + | | + | Name | Now | Default Min Max | + | | | | + | SoftQCD:elastic | on | off | + | | + *------- End PYTHIA Flag + Mode + Parm + Word + FVec + MVec + PVec + WVec Settings -----------------------------* + + -------- PYTHIA Particle Data Table (changed only) ------------------------------------------------------------------------------ + + id name antiName spn chg col m0 mWidth mMin mMax tau0 res dec ext vis wid + no onMode bRatio meMode products + + no particle data has been changed from its default value + + -------- End PYTHIA Particle Data Table ----------------------------------------------------------------------------------------- + + + *------------------------------------------------------------------------------------* + | | + | *------------------------------------------------------------------------------* | + | | | | + | | | | + | | PPP Y Y TTTTT H H III A Welcome to the Lund Monte Carlo! | | + | | P P Y Y T H H I A A This is PYTHIA version 8.312 | | + | | PPP Y T HHHHH I AAAAA Last date of change: 23 May 2024 | | + | | P Y T H H I A A | | + | | | | + | | Program documentation and an archive of historic versions is found on: | | + | | | | + | | https://pythia.org/ | | + | | | | + | | PYTHIA is authored by a collaboration consisting of: | | + | | | | + | | Javira Altmann, Christian Bierlich, Naomi Cooke, Nishita Desai, | | + | | Leif Gellersen, Ilkka Helenius, Philip Ilten, Leif Lonnblad, | | + | | Stephen Mrenna, Christian Preuss, Torbjorn Sjostrand, Peter Skands, | | + | | Marius Utheim, and Rob Verheyen. | | + | | | | + | | The complete list of authors, including contact information and | | + | | affiliations, can be found on https://pythia.org/. | | + | | Problems or bugs should be reported on email at authors@pythia.org. | | + | | | | + | | The main program reference is C. Bierlich et al, | | + | | 'A comprehensive guide to the physics and usage of Pythia 8.3', | | + | | SciPost Phys. Codebases 8-r8.3 (2022) [arXiv:2203.11601 [hep-ph]] | | + | | | | + | | PYTHIA is released under the GNU General Public Licence version 2 or later.| | + | | Please respect the MCnet Guidelines for Event Generator Authors and Users. | | + | | | | + | | Disclaimer: this program comes without any guarantees. | | + | | Beware of errors and use common sense when interpreting results. | | + | | | | + | | Copyright (C) 2024 Torbjorn Sjostrand | | + | | | | + | | | | + | *------------------------------------------------------------------------------* | + | | + *------------------------------------------------------------------------------------* + + PYTHIA Error in ProcessLevel::init: no process switched on + PYTHIA Abort from Pythia::init: processLevel initialization failed +EvtMTRandomEngine:Mersenne-Twister random number generator with seed = 42 +[INFO] TEvtGenDecayer: Random engine initialized with seed 42 +EvtGen:Defining EvtPhotosEngine using photonType = gamma +EvtGen:Setting up PHOTOS. +EvtGen:Using EvtGen random number engine also for Photos++ +Message from PHCORK(MODCOR):: initialization +MODOP=5 -- corrects Energy from mass+flow + +******************************************************************************** + + ========================= + PHOTOS, Version: 3.64 + Released at: 18/2/20 + ========================= + + Photos QED corrections in Particle Decays + + Monte Carlo Program - by E. Barberio, B. van Eijk and Z. Was + From version 2.09 - by P. Golonka and Z. Was + From version 3.00 - by N. Davidson, T. Przedzinski and Z. Was +******************************************************************************** + + Internal (default) input parameters: + + INTERF= 1 ISEC= 0 ITRE= 0 IEXP= 1 IFTOP= 1 IFW= 1 + ALPHA_QED= 7.297350e-03 XPHCUT= 1.000000e-07 + + Option with interference is active + Option with exponentiation is active EPSEXP=1.000000e-04 + Emision in t tbar production is active + Correction wt in decay of W is active + + WARNING: /HEPEVT/ is not anymore used. + +******************************************************************************** +MODOP=2 -- blocks emission in Kl to gamma e+e-: DEFAULT +MODOP=2 -- blocks emission in pi0 to gamma e+e-: DEFAULT + IPHQRK_setQarknoEmission MODOP=1 -- blocks emission from light quarks: DEFAULT +Message from PHCORK(MODCOR):: initialization +MODOP=5 -- corrects Energy from mass+flow +EvtGen:Pythia 8 codes need to be used in decay files +EvtGen:Using EvtGen random engine for Pythia 8 as well +EvtGen:Creating generic Pythia generator + + *------------------------------------------------------------------------------------* + | | + | *------------------------------------------------------------------------------* | + | | | | + | | | | + | | PPP Y Y TTTTT H H III A Welcome to the Lund Monte Carlo! | | + | | P P Y Y T H H I A A This is PYTHIA version 8.312 | | + | | PPP Y T HHHHH I AAAAA Last date of change: 23 May 2024 | | + | | P Y T H H I A A | | + | | | | + | | Program documentation and an archive of historic versions is found on: | | + | | | | + | | https://pythia.org/ | | + | | | | + | | PYTHIA is authored by a collaboration consisting of: | | + | | | | + | | Javira Altmann, Christian Bierlich, Naomi Cooke, Nishita Desai, | | + | | Leif Gellersen, Ilkka Helenius, Philip Ilten, Leif Lonnblad, | | + | | Stephen Mrenna, Christian Preuss, Torbjorn Sjostrand, Peter Skands, | | + | | Marius Utheim, and Rob Verheyen. | | + | | | | + | | The complete list of authors, including contact information and | | + | | affiliations, can be found on https://pythia.org/. | | + | | Problems or bugs should be reported on email at authors@pythia.org. | | + | | | | + | | The main program reference is C. Bierlich et al, | | + | | 'A comprehensive guide to the physics and usage of Pythia 8.3', | | + | | SciPost Phys. Codebases 8-r8.3 (2022) [arXiv:2203.11601 [hep-ph]] | | + | | | | + | | PYTHIA is released under the GNU General Public Licence version 2 or later.| | + | | Please respect the MCnet Guidelines for Event Generator Authors and Users. | | + | | | | + | | Disclaimer: this program comes without any guarantees. | | + | | Beware of errors and use common sense when interpreting results. | | + | | | | + | | Copyright (C) 2024 Torbjorn Sjostrand | | + | | | | + | | | | + | *------------------------------------------------------------------------------* | + | | + *------------------------------------------------------------------------------------* + +EvtGen:Creating alias Pythia generator +EvtGen:Defining EvtTauolaEngine. +EvtGen:Setting up TAUOLA. +EvtGen:Using EvtGen random number engine also for Tauola++ + + + + *************************************************************************** + * *****TAUOLA LIBRARY: VERSION 2.9 ****** * + * ***********October 2011 *************** * + * **AUTHORS: S.JADACH, Z.WAS************* * + * **R. DECKER, M. JEZABEK, J.H.KUEHN***** * + * **AVAILABLE FROM: www.cern.ch/wasm**** * + * ***** PUBLISHED IN COMP. PHYS. COMM.*** * + * 0: Physics initialization CLEO collab * + * see Alain Weinstein www home page: * + * http://www.cithep.caltech.edu/~ajw/ * + * /korb_doc.html#files * + * 1: Physics initialization RChL of: * + * O. Shekhovtsova, T. Przedzinski, * + * P. Roig and Z. Was * + * IFJPAN-2013-5, UAB-FT-731 * + * *******CPC 76 (1993) 361 ***** * + * **5 or more pi dec.: precision limited * + * ****DEKAY ROUTINE: INITIALIZATION****** * + * 0 JAK1 = DECAY MODE TAU+ * + * 0 JAK2 = DECAY MODE TAU- * + *************************************************************************** + + * 1 IVER = hadronic current version * + RANMAR INITIALIZED: 54217137 0 0 + + ************************************* + * TAUOLA C++ Interface v1.1.8 * + *-----------------------------------* + * * + * (c) Nadia Davidson, (1,2) * + * (c) Gizo Nanava, (3) * + * Tomasz Przedzinski,(4) * + * Elzbieta Richter-Was,(2,4) * + * Zbigniew Was (2,5) * + * * + * 1) Unimelb, Melbourne, Australia * + * 2) INP, Krakow, Poland * + * 3) University Bonn, Germany * + * 4) UJ, Krakow, Poland * + * 5) CERN, Geneva, Switzerland * + ************************************* + In F3pi: chpt + 1 resonance + 2 resonance (RchT) + KORB: rho/rhop -> pi-pi0 mixing: + KORB: rho = 0.769900024 0.151199996 + KORB: rhop = 1.37000000 0.509999990 -0.109999999 + KORB: K*/K*prime -> Kpi mixing: + KORB: kstp = 1.70000005 0.234999999 -3.79999988E-02 + KORB: a1/a1prime -> 3pi, KKpi mixing: + KORB: a1 = 1.27499998 0.699999988 + KORB: a1prim= 1.46099997 0.250000000 0.00000000 + KORB: K1A/K1B -> Kpipi mixing: + KORB: K1A = 1.26999998 9.00000036E-02 1.00000000 + KORB: K1B = 1.40199995 0.173999995 0.800000012 + KORB: rho/rhop/rhopp -> 4pi mixing: + KORB: rho = 0.769900024 0.151199996 + KORB: rhopp = 1.46500003 0.310000002 -0.109999999 + KORB: rhoppp= 1.70000005 0.234999999 -0.109999999 + KORB: 3PI-PI0 PARAMS: 0.00000000 0.124200001 0.160400003 0.271100014 0.444299996 + KORB: PI-3PI0 PARAMS: 0.00000000 1.00000000 + + *************************************************************************** + +Reading SANC input files. +File 'table1-1.txt' missing... skipped. +File 'table2-2.txt' missing... skipped. +File 'table11-11.txt' missing... skipped. + +[INFO] TEvtGenDecayer: PHOTOS radiative corrections enabled +EvtGen:Initializing EvtGen +EvtGen:Storing known decay models +EvtGen:Defining EvtBcToNPi model: Bc -> V + npi and Bc -> P + npi decays +from A.V. Berezhnoy, A.K. Likhoded, A.V. Luchinsky: Phys.Rev.D 82, 014012 (2010) and arXiV:1104.0808. +EvtGen:Warning, sum of branching fractions for omega is 0.994 +EvtGen:rescaled to one! +EvtGen:Warning, sum of branching fractions for phi is 0.999 +EvtGen:rescaled to one! +EvtGen:Warning, sum of branching fractions for f_2 is 0.999 +EvtGen:rescaled to one! +EvtGen:Warning, sum of branching fractions for chi_c1 is 0.996 +EvtGen:rescaled to one! +EvtGen:Warning, sum of branching fractions for Upsilon(2S) is 0.992 +EvtGen:rescaled to one! +EvtGen:Warning, sum of branching fractions for Upsilon(3S) is 0.999 +EvtGen:rescaled to one! +EvtGen:Mixing type integer set to 1 +EvtGen:Done initializing EvtGen +[INFO] TEvtGenDecayer initialized - EvtGen: YES, Pythia8 fallback: YES, Particles configured for EvtGen: 2 +=== TEvtGenDecayer Configuration === +Particles using EvtGen: J/psi(443), Upsilon(553) +Other particles use TPythia8Decayer fallback +### TG4SpecialControlsV2 constructed +Visualization Manager instantiating with verbosity "warnings (3)"... +SetCuts Macro: Setting Processes.. +SetCuts Macro: Setting cuts.. +TG4RootDetectorConstruction::ConstructSDandField +TG4PostDetConstruction::InitializeSDandField +[INFO] FairMCApplication::InitGeometry: 0 +[INFO] CREATING BRANCH MCTrack +[INFO] CREATING BRANCH TimeDetPoint +[INFO] CREATING BRANCH UpstreamTaggerPoint +[INFO] CREATING BRANCH splitcalPoint +[INFO] CREATING BRANCH strawtubesPoint +[INFO] CREATING BRANCH vetoPoint +Global field created with stepper DormandPrince745 +### INFO: TG4RootDetectorConstruction::ConstructSDandField finished + + hInelastic FTFP_BERT_HP : threshold between BERT and FTFP is over the interval + for pions : 3 to 6 GeV + for kaons : 3 to 6 GeV + for proton : 3 to 6 GeV + for neutron : 3 to 6 GeV + +TG4ComposedPhysicsList::ConstructProcess done +Available UI session types: [ Qt, tcsh, csh ] +[INFO] Open external file with charm or beauty hadrons: $FAIRSHIP/files/Cascade-parp16-MSTP82-1-MSEL4-76Mpot_1_5000.root + + *------- PYTHIA Flag + Mode + Parm + Word + FVec + MVec + PVec + WVec Settings (changes only) ------------------* + | | + | Name | Now | Default Min Max | + | | | | + | HardQCD:hardccbar | on | off | + | Next:numberCount | 0 | 1000 0 | + | ProcessLevel:all | off | on | + | | + *------- End PYTHIA Flag + Mode + Parm + Word + FVec + MVec + PVec + WVec Settings -----------------------------* + + -------- PYTHIA Particle Data Table (changed only) ------------------------------------------------------------------------------ + + id name antiName spn chg col m0 mWidth mMin mMax tau0 res dec ext vis wid + no onMode bRatio meMode products + + 13 mu- mu+ 2 -3 0 0.10566 0.00000 0.10566 0.10566 6.58654e+05 0 0 0 1 0 + 0 1 1.0000000 22 -12 11 14 + + 15 tau- tau+ 2 -3 0 1.77682 0.00000 1.77682 1.77682 8.71100e-02 0 1 0 1 0 + 0 1 0.2437410 1521 9900015 -211 + 1 1 0.0114128 1521 9900015 -321 + 2 1 0.0504430 1521 9900015 -213 + 3 1 0.1236891 1531 9900015 11 -12 + 4 1 0.0294090 1531 9900015 11 16 + 5 1 0.1126970 1531 9900015 13 -14 + 6 1 0.4286081 1531 9900015 13 16 + + 130 K_L0 1 0 0 0.49761 0.00000 0.49761 0.49761 1.53300e+04 0 0 0 1 0 + 0 1 0.1952278 0 111 111 111 + 1 1 0.1254178 0 211 -211 111 + 2 1 0.2027688 22 -12 11 211 + 3 1 0.2027688 22 12 -11 -211 + 4 1 0.1352191 22 -14 13 211 + 5 1 0.1352191 22 14 -13 -211 + 6 1 0.0019673 0 211 -211 + 7 1 0.0008641 0 111 111 + 8 1 0.0005471 0 22 22 + + 211 pi+ pi- 1 3 0 0.13957 0.00000 0.13957 0.13957 7.80450e+03 0 0 0 1 0 + 0 1 0.9998770 0 -13 14 + 1 1 0.0001230 0 -11 12 + + 310 K_S0 1 0 0 0.49761 0.00000 0.49761 0.49761 2.68420e+01 0 0 0 1 0 + 0 1 0.6922420 0 211 -211 + 1 1 0.3070073 0 111 111 + 2 1 0.0000479 12 211 -211 11 -11 + 3 1 0.0003501 22 -12 11 211 + 4 1 0.0003501 22 12 -11 -211 + 5 1 0.0000026 0 22 22 + + 321 K+ K- 1 3 0 0.49368 0.00000 0.49368 0.49368 3.71300e+03 0 0 0 1 0 + 0 1 0.6355250 0 -13 14 + 1 1 0.0000158 0 -11 12 + 2 1 0.2066081 0 211 111 + 3 1 0.0559022 0 211 211 -211 + 4 1 0.0176107 0 211 111 111 + 5 1 0.0507020 22 12 -11 111 + 6 1 0.0335313 22 14 -13 111 + 7 1 0.0000220 0 -11 12 111 111 + 8 1 0.0000409 0 -11 12 211 -211 + 9 1 0.0000140 0 -13 14 111 111 + 10 1 0.0000280 0 -13 14 211 -211 + + 411 D+ D- 1 3 0 1.86962 0.00000 1.86962 1.86962 3.11800e-01 0 1 0 1 0 + 0 1 0.0601713 0 9900015 -13 + 1 1 0.0037016 0 9900015 -11 + 2 1 0.0010810 22 -11 9900015 -311 + 3 1 0.0142622 22 -13 9900015 -311 + 4 1 0.9207840 0 22 -11 + + 421 D0 Dbar0 1 0 0 1.86486 0.00000 1.86486 1.86486 1.22900e-01 0 1 0 1 0 + 0 1 0.0004213 22 -11 9900015 -321 + 1 1 0.0055549 22 -13 9900015 -321 + 2 1 0.9940237 0 22 22 + + 431 D_s+ D_s- 1 3 0 1.96849 0.00000 1.96849 1.96849 1.49900e-01 0 1 0 1 0 + 0 1 0.9280184 0 9900015 -13 + 1 1 0.0571025 0 9900015 -11 + 2 1 0.0005520 22 -11 9900015 221 + 3 1 0.0077723 22 -13 9900015 221 + 4 1 0.0065547 0 -15 16 + + 2112 n0 nbar0 2 0 0 0.93957 0.00000 0.93957 0.93957 2.65500e+14 0 0 0 1 0 + 0 1 1.0000000 22 -12 11 2212 + + 3112 Sigma- Sigmabar+ 2 -3 0 1.19745 0.00000 1.19745 1.19745 4.43400e+01 0 0 0 1 0 + 0 1 0.9984757 0 2112 -211 + 1 1 0.0010170 22 -12 11 2112 + 2 1 0.0004500 22 -14 13 2112 + 3 1 0.0000573 22 -12 11 3122 + + 3122 Lambda0 Lambdabar0 2 0 0 1.11568 0.00000 1.11568 1.11568 7.89000e+01 0 0 0 1 0 + 0 1 0.6391668 0 2212 -211 + 1 1 0.3580935 0 2112 111 + 2 1 0.0017505 0 2112 22 + 3 1 0.0008322 22 -12 11 2212 + 4 1 0.0001570 22 -14 13 2212 + + 3222 Sigma+ Sigmabar- 2 3 0 1.18937 0.00000 1.18937 1.18937 2.40400e+01 0 0 0 1 0 + 0 1 0.5156743 0 2212 111 + 1 1 0.4830758 0 2112 211 + 2 1 0.0012299 0 2212 22 + 3 1 0.0000200 22 -11 12 3122 + + 3312 Xi- Xibar+ 2 -3 0 1.32171 0.00000 1.32171 1.32171 4.91000e+01 0 0 0 1 0 + 0 1 0.9988730 0 3122 -211 + 1 1 0.0001270 0 3112 22 + 2 1 0.0005630 22 -12 11 3122 + 3 1 0.0003500 22 -14 13 3122 + 4 1 0.0000870 22 -12 11 3212 + + 3322 Xi0 Xibar0 2 0 0 1.31486 0.00000 1.31486 1.31486 8.71000e+01 0 0 0 1 0 + 0 1 0.9952424 0 3122 111 + 1 1 0.0011700 0 3122 22 + 2 1 0.0033300 0 3212 22 + 3 1 0.0002530 22 -12 11 3222 + 4 1 0.0000046 22 -14 13 3222 + + 3334 Omega- Omegabar+ 4 -3 0 1.67245 0.00000 1.67245 1.67245 2.46100e+01 0 0 0 1 0 + 0 1 0.6737955 0 3122 -321 + 1 1 0.2345365 0 3322 -211 + 2 1 0.0854667 0 3312 111 + 3 1 0.0006360 0 3324 -211 + 4 1 0.0055653 22 -12 11 3322 + + 4122 Lambda_c+ Lambda_cbar- 2 3 0 2.28646 0.00000 2.28646 2.28646 5.99000e-02 0 1 0 1 0 + 0 1 0.0000252 22 -11 9900015 3122 + 1 1 0.0001428 22 -13 9900015 3122 + 2 1 0.9998321 0 22 -11 + + 4132 Xi_c0 Xi_cbar0 2 0 0 2.47088 0.00000 2.47088 2.47088 3.36000e-02 0 1 0 1 0 + 0 1 0.0000050 22 -11 9900015 -3312 + 1 1 0.0000361 22 -13 9900015 -3312 + 2 1 0.9999590 0 22 22 + + 9900015 N2 N2 2 0 0 1.00000 0.00000 1.00000 1.00000 6.44394e+07 0 1 0 1 0 + 0 1 0.0941122 0 211 13 + 1 1 0.0941122 0 -211 -13 + + -------- End PYTHIA Particle Data Table ----------------------------------------------------------------------------------------- + + +********************************************** + GEANT4 Geometry statistics: + 701 logical volumes + 46126 physical volumes + 22 materials + 20 user limits + 694 sensitive detectors +********************************************** + +[INFO] Monte Carlo Engine Initialisation with: TGeant4 +[INFO] FairGenericVMCConfig::SetupPostInit() OFF. +[INFO] x limits: -500, 500, dx = 10 +[INFO] y limits: -500, 500, dy = 10 +[INFO] z limits: -750, 750, dz = 10 +[INFO] Offsets: x = 0, y = 0, z = 8957 +[INFO] Angles : phi = 0, theta = 0, psi = 0 +[INFO] Total number of bins = 1540351; Nx = 101, Ny = 101, Nz = 151 +[INFO] x limits: 0, 219.922, dx = 1.99929 +[INFO] y limits: 0, 217.969, dy = 1.99971 +[INFO] z limits: -50, 3075, dz = 5 +[INFO] Offsets: x = 0, y = 0, z = 204 +[INFO] Angles : phi = 0, theta = 0, psi = 0 +[INFO] Total number of bins = 7643460; Nx = 111, Ny = 110, Nz = 626 +Adding field MainSpecMap +Adding field muonShieldField +Setting the Global field +Adding field TotalField to Global +[INFO] FairMCApplication::InitGeometry: 0 + G4ChordFinder: stepperDriverId: 2 + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomFieldParameters0001 + issued by : G4FieldBuilder::ConstructField: +Field was already constructed. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +GammaToMuPair: gamma->mu+mu- Bethe Heitler process, SubType= 15 + good cross section parametrization from 211.317 MeV to 1e+12 GeV for all Z. + cross section factor: 1 + +AnnihiToMuPair: e+e->mu+mu- annihilation, atomic e- at rest, SubType=6 + threshold at 43.6931 GeV good description up to 1000 TeV for all Z. + +AnnihiToTauPair: e+e->tau+tau- annihilation, atomic e- at rest, SubType=18 + threshold at 12357.1 GeV good description up to 1000 TeV for all Z. +====================================================================== +====== Radioactive Decay Physics Parameters ======= +====================================================================== +min MeanLife (from G4NuclideTable) 1 ns +Max life time (from G4DeexPrecoParameters) 1000 ps +Internal e- conversion flag 1 +Stored internal conversion coefficients 1 +Enabled atomic relaxation mode 1 +Enable correlated gamma emission 0 +Max 2J for sampling of angular correlations 10 +Atomic de-excitation enabled 1 +Auger electron emission enabled 1 +Check EM cuts disabled for atomic de-excitation 1 +Use Bearden atomic level energies 0 +Use ANSTO fluorescence model 0 +Threshold for very long decay time at rest 1 y +====================================================================== + +======================================================= +====== ParticleHP Physics Parameters ======== +======================================================= + Use only photo-evaporation 0 + Skip missing isotopes 0 + Neglect Doppler 0 + Do not adjust final state 0 + Produce fission fragments 0 + Use WendtFissionModel 0 + Use NRESP71Model 0 + Use DBRC 0 + PHP use Poisson 0 + PHP check 1 + CHECK HP NAMES 0 + Enable DEBUG 0 + Use probability tables from +======================================================= + + +==================================================================== + HADRONIC PROCESSES SUMMARY (verbose level 1) +----------------------------------------------------------------------- + Hadronic Processes for B- + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for D- + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for GenericIon + Process: ionInelastic + Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n + Model: FTFP: 3 GeV/n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: RadioactiveDecay +----------------------------------------------------------------------- + Hadronic Processes for He3 + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: He3Inelastic + Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n + Model: FTFP: 3 GeV/n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV +----------------------------------------------------------------------- + Hadronic Processes for alpha + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: alphaInelastic + Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n + Model: FTFP: 3 GeV/n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV +----------------------------------------------------------------------- + Hadronic Processes for anti_He3 + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n + Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_He3Inelastic + Model: FTFP: 0 eV /n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_alpha + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n + Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_alphaInelastic + Model: FTFP: 0 eV /n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_deuteron + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n + Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_deuteronInelastic + Model: FTFP: 0 eV /n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +------------------------------------------------------------------------- + Hadronic Processes for anti_hypertriton + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_lambda + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_neutron + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100.1 MeV + Model: AntiAElastic: 100 MeV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_neutronInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_proton + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100.1 MeV + Model: AntiAElastic: 100 MeV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_protonInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_triton + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n + Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_tritonInelastic + Model: FTFP: 0 eV /n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for deuteron + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: dInelastic + Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n + Model: FTFP: 3 GeV/n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV +----------------------------------------------------------------------- + Hadronic Processes for e+ + Process: positronNuclear + Model: G4ElectroVDNuclearModel: 0 eV ---> 1 PeV + Cr_sctns: ElectroNuclearXS: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for e- + Process: electronNuclear + Model: G4ElectroVDNuclearModel: 0 eV ---> 1 PeV + Cr_sctns: ElectroNuclearXS: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for kaon+ + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: kaon+Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for kaon- + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: kaon-Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: hBertiniCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for lambda + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: lambdaInelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for mu+ + Process: muonNuclear + Model: G4MuonVDNuclearModel: 0 eV ---> 1 PeV + Cr_sctns: KokoulinMuonNuclearXS: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for mu- + Process: muonNuclear + Model: G4MuonVDNuclearModel: 0 eV ---> 1 PeV + Cr_sctns: KokoulinMuonNuclearXS: 0 eV ---> 100 TeV + Process: muMinusCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for neutron + Process: hadElastic + Model: hElasticCHIPS: 19.5 MeV ---> 100 TeV + Model: NeutronHPElastic: 0 eV ---> 20 MeV + Cr_sctns: NeutronHPElasticXS: 0 eV ---> 20 MeV + Cr_sctns: G4NeutronElasticXS: 0 eV ---> 100 TeV + Process: neutronInelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 19.9 MeV ---> 6 GeV + Model: NeutronHPInelastic: 0 eV ---> 20 MeV + Cr_sctns: NeutronHPInelasticXS: 0 eV ---> 20 MeV + Cr_sctns: G4NeutronInelasticXS: 0 eV ---> 100 TeV + Process: nCapture + Model: nRadCaptureHP: 0 eV ---> 20 MeV + Model: nRadCapture: 19.9 MeV ---> 100 TeV + Cr_sctns: NeutronHPCaptureXS: 0 eV ---> 100 TeV + Cr_sctns: G4NeutronCaptureXS: 0 eV ---> 100 TeV + Process: nFission + Model: NeutronHPFission: 0 eV ---> 20 MeV + Model: G4LFission: 19.9 MeV ---> 100 TeV + Cr_sctns: NeutronHPFissionXS: 0 eV ---> 20 MeV + Cr_sctns: ZeroXS: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for pi+ + Process: hadElastic + Model: hElasticGlauber: 0 eV ---> 100 TeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV + Process: pi+Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for pi- + Process: hadElastic + Model: hElasticGlauber: 0 eV ---> 100 TeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV + Process: pi-Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV + Process: hBertiniCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for proton + Process: hadElastic + Model: hElasticCHIPS: 0 eV ---> 100 TeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV + Process: protonInelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for sigma- + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: sigma-Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: hBertiniCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for triton + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: tInelastic + Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n + Model: FTFP: 3 GeV/n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: RadioactiveDecay +======================================================================= +====== Geant4 Native Pre-compound Model Parameters ======== +======================================================================= +Type of pre-compound model 0 +Type of pre-compound inverse x-section 1 +Pre-compound model active 1 +Pre-compound excitation low energy 0.1 MeV +Pre-compound excitation high energy 15 MeV +Angular generator for pre-compound model 1 +Use NeverGoBack option for pre-compound model 0 +Use SoftCutOff option for pre-compound model 0 +Use CEM transitions for pre-compound model 1 +Use GNASH transitions for pre-compound model 0 +Use HETC submodel for pre-compound model 0 +======================================================================= +====== Nuclear De-excitation Module Parameters ======== +======================================================================= +Type of de-excitation inverse x-section 3 +Type of de-excitation factory Evaporation+GEM +Number of de-excitation channels 68 +Type of Fermi BreakUp model ModelVI +Min excitation energy 0.01 keV +Min energy per nucleon for multifragmentation 2e+05 MeV +Level density (1/MeV) 0.075 +Use simple level density model 1 +Use discrete excitation energy of the residual 0 +Time limit for long lived isomeres 1 ns +Isomer production flag 1 +Internal e- conversion flag 1 +Store e- internal conversion data 1 +Correlated gamma emission flag 0 +Max 2J for sampling of angular correlations 10 +======================================================================= + PYTHIA Warning in Pythia::check: not quite matched particle energy/momentum/mass + + -------- PYTHIA Event Listing (complete event) --------------------------------------------------------------------------------- + + no id name status mothers daughters colours p_x p_y p_z e m + 0 90 (system) -11 0 0 0 0 0 0 0.233 1.128 50.285 50.333 1.869 + 1 411 D+ 1 0 0 0 0 0 0 0.233 1.128 50.285 50.333 1.869 + Charge sum: 1.000 Momentum sum: 0.233 1.128 50.285 50.333 1.869 + + -------- End PYTHIA Event Listing ----------------------------------------------------------------------------------------------- + + -------- PYTHIA Event Listing (complete event) --------------------------------------------------------------------------------- + + no id name status mothers daughters colours p_x p_y p_z e m + 0 90 (system) -11 0 0 0 0 0 0 0.233 1.128 50.285 50.333 1.869 + 1 411 (D+) -1 0 0 2 3 0 0 0.233 1.128 50.285 50.333 1.869 + 2 22 gamma 91 1 0 0 0 0 0 0.383 1.429 48.051 48.074 0.000 + 3 -11 e+ 91 1 0 0 0 0 0 -0.150 -0.301 2.234 2.259 0.001 + Charge sum: 1.000 Momentum sum: 0.233 1.128 50.285 50.333 1.869 + + -------- End PYTHIA Event Listing ----------------------------------------------------------------------------------------------- +[INFO] ship event 0 / pythia event-nr 41 + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : part0005 + issued by : G4PrimaryParticle::Set4Momentum +Primary particle PDG=-13 deltaMass(MeV)=1.64106 is larger than the tolerance(MeV)=1 + Specified mass(MeV)=104.017 while PDG mass(MEV)=105.658 + To change the tolerance or the exception severity, use G4PrimaryTransformer::SetKETolerance() method. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : part0005 + issued by : G4PrimaryParticle::Set4Momentum +Primary particle PDG=211 deltaMass(MeV)=1.76146 is larger than the tolerance(MeV)=1 + Specified mass(MeV)=141.332 while PDG mass(MEV)=139.57 + To change the tolerance or the exception severity, use G4PrimaryTransformer::SetKETolerance() method. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : part0005 + issued by : G4PrimaryParticle::Set4Momentum +Primary particle PDG=-211 deltaMass(MeV)=7.61907 is larger than the tolerance(MeV)=1 + Specified mass(MeV)=147.189 while PDG mass(MEV)=139.57 + To change the tolerance or the exception severity, use G4PrimaryTransformer::SetKETolerance() method. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : part0005 + issued by : G4PrimaryParticle::Set4Momentum +Primary particle PDG=-13 deltaMass(MeV)=1.11581 is larger than the tolerance(MeV)=1 + Specified mass(MeV)=104.543 while PDG mass(MEV)=105.658 + To change the tolerance or the exception severity, use G4PrimaryTransformer::SetKETolerance() method. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +[INFO] *** FairBaseParSet written to ROOT file version: 1 +[INFO] *** FairGeoParSet written to ROOT file version: 1 +['tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten'] [4.5, 1.8, 1.7, 1.7, 1.8, 1.9, 2.1, 1.9, 2.1, 2.4, 2.8, 3.3, 4.1, 5.6, 8.8, 17.2, 28.7, 28.8, 28.8] [0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.48, 0.5, 0.68, 0.68, 0] +Generating HNL events of mass 1.000 GeV +and with couplings= [4.47e-10, 7.15e-09, 1.88e-09] +Pythia8 configuration: Made mu- stable for Pythia, should decay in Geant4 +Pythia8 configuration: Made K_L0 stable for Pythia, should decay in Geant4 +Pythia8 configuration: Made pi+ stable for Pythia, should decay in Geant4 +Pythia8 configuration: Made K_S0 stable for Pythia, should decay in Geant4 +Pythia8 configuration: Made K+ stable for Pythia, should decay in Geant4 +Pythia8 configuration: Made n0 stable for Pythia, should decay in Geant4 +Pythia8 configuration: Made Sigma- stable for Pythia, should decay in Geant4 +Pythia8 configuration: Made Lambda0 stable for Pythia, should decay in Geant4 +Pythia8 configuration: Made Sigma+ stable for Pythia, should decay in Geant4 +Pythia8 configuration: Made Xi- stable for Pythia, should decay in Geant4 +Pythia8 configuration: Made Xi0 stable for Pythia, should decay in Geant4 +Pythia8 configuration: Made Omega- stable for Pythia, should decay in Geant4 +HNLbranchings instance initialized with couplings: + U2e = 4.47e-10 + U2mu = 7.15e-09 + U2tau = 1.88e-09 +and mass: + m = 1.0 GeV +HNL ctau 6443943.553548283 +One simulated event per 4.671e+08 meson decays +Using TEvtGenDecayer for J/psi and quarkonium decays with EvtGen +Calling addVMCFields + +Macro finished successfully. +number of retries (no HNL produced) 2566 +number of geometric rejections (outside vessel acceptance) 183 +Output file is ./sim_evtgen_summary.root +Parameter file is ./params_evtgen_summary.root +Geometry file is ./geo_evtgen_summary.root +======================================================================== +Simulation finished successfully +======================================================================== + +[Generator Validation] + HNL retries : 2566 + Geometry rejections : 183 + HNL candidates : 283 + Accepted HNL candidates : 100 + Multi-HNL tries : 0 + Stored decay products : 200 + +[Tree Validation] + Requested events : 100 + Final cbmsim entries : 100 + Kept fraction : 100.00% + Branches in cbmsim : 7 + ROOT objects : 5 + Countable branches : 5 + +[MCTrack Validation] + Total tracks : 14461 + Primary tracks : 100 + Secondary tracks : 14361 + Tracks per event : 144.6 + Track momentum : 3.933 +- 30.09 [min=0.01149, max=400] + Track energy : 4.03 +- 30.09 [min=0.1, max=400] + Track start Z : 1.05e+04 +- 2700 [min=0, max=1.603e+04] + Top PDG counts : 22:4213, 11:2677, -11:2044, 2112:1320, 2212:1244, 211:766, 111:762, -211:678, -13:119, 9900015:100 + +[Branch Multiplicity] + MCTrack : total=14461, mean/event=144.6 +- 149.6, active=100/100 (100.0%), max=1088 + TimeDetPoint : total=518, mean/event=5.18 +- 7.361, active=90/100 ( 90.0%), max=48 + splitcalPoint : total=71203, mean/event=712 +- 1141, active=90/100 ( 90.0%), max=6110 + strawtubesPoint : total=5750, mean/event=57.5 +- 40.85, active=94/100 ( 94.0%), max=296 + vetoPoint : total=15801, mean/event=158 +- 347.2, active=51/100 ( 51.0%), max=2437 diff --git a/tests/fairship_tests/references/muonback-io.txt b/tests/fairship_tests/references/muonback-io.txt new file mode 100644 index 0000000000..152c474808 --- /dev/null +++ b/tests/fairship_tests/references/muonback-io.txt @@ -0,0 +1,497 @@ +TStreamerInfo::BuildOld:0: RuntimeWarning: Cannot convert vetoPoint::fLpos from type: TVector3 to type: array, skip element +TStreamerInfo::BuildOld:0: RuntimeWarning: Cannot convert vetoPoint::fLmom from type: TVector3 to type: array, skip element +[INFO] Opening input file to find keys https://cernbox.cern.ch/remote.php/dav/public-files/vdwtXtgM5P2Z0S5/pythia8_Geant4_10.0_withCharmandBeauty0_mu.root +[INFO] Opening input file https://cernbox.cern.ch/remote.php/dav/public-files/vdwtXtgM5P2Z0S5/pythia8_Geant4_10.0_withCharmandBeauty0_mu.root +[INFO] Reading 13450391 entries +[INFO] Using TClonesArray format (vetoPoint) +[INFO] Seed: 42 +[INFO] FairRootFileSink initialized. +[INFO] - cbmroot +[INFO] - ./sim_muonback_io.root +[INFO] ============== FairRunSim: Initialising simulation run ============== +[INFO] FairGeoMedia: Read media + +************************************************************* +************************************************************* +[WARN] FairGenericVMCConfig::Setup() Using gConfig.C macro DEPRACATED. +[WARN] Check FairRoot/examples/common/gconfig/ for current YAML implementation. +[INFO] ---------------User config is used: g4Config.C + +============================================================= + Virtual Monte Carlo Library + Version 2.2 ( 22 April 2026 ) +============================================================= + +============================================================= + Geant4 Virtual Monte Carlo + Version 6.8 ( 2 February 2026 ) + WWW : http://root.cern.ch/drupal/content/geant4-vmc +============================================================= + +Running TVirtualMCApplication::ConstructGeometry +[INFO] -- Target cooler: PressurisedHe90 T=363.15 K, P=9.98641e+09 MeV/mm3, Density=0.002121 +[INFO] veto: Decay Volume medium set as: helium +[INFO] veto: made sensitive for following muons: Cavern + Z Position (Upstream Tagger1) 3272 +[INFO] TGeometry will be imported to VMC + +isMaster=1 + +************************************************************** + Geant4 version Name: geant4-11-04-patch-02 [MT] (12-June-2026) + Copyright : Geant4 Collaboration + References : NIM A 506 (2003), 250-303 + : IEEE-TNS 53 (2006), 270-278 + : NIM A 835 (2016), 186-225 + WWW : http://geant4.org/ +************************************************************** + +===> GEANT4 materials created and mapped to TGeo ones... +===> GEANT4 physical volumes created and mapped to TGeo hierarchy... +### INFO: TG4RootDetectorConstruction::Construct() finished +TG4PostDetConstruction::Initialize +G4 Stat: instantiated 701 logical volumes + 46126 physical volumes +Adding HadronPhysicsList FTFP_BERT_HP_EMZ +G4PhysListFactory::GetReferencePhysList +<<< Geant4 Physics List simulation engine: FTFP_BERT_HP + +G4VModularPhysicsList::ReplacePhysics: G4EmStandard with type : 2 is replaced with G4EmStandard_opt4 + +Adding SpecialPhysicsList stepLimiter+specialCuts+ +### TG4SpecialControlsV2 constructed +Visualization Manager instantiating with verbosity "warnings (3)"... +SetCuts Macro: Setting Processes.. +SetCuts Macro: Setting cuts.. +TG4RootDetectorConstruction::ConstructSDandField +TG4PostDetConstruction::InitializeSDandField +[INFO] FairMCApplication::InitGeometry: 0 +[INFO] CREATING BRANCH MCTrack +[INFO] CREATING BRANCH TimeDetPoint +CreateReadMemberWiseActions:0: RuntimeWarning: The StreamerInfo of class FairMCPoint read from file https://cernbox.cern.ch/remote.php/dav/public-files/vdwtXtgM5P2Z0S5/pythia8_Geant4_10.0_withCharmandBeauty0_mu.root + has the same version (=5) as the active class but a different checksum. + You should update the version to ClassDef(FairMCPoint,6). + The objects on this file might not be readable because: + The in-memory layout version 5 for class 'FairMCPoint' has a base class (FairMultiLinkedData_Interface) with version 6 but the on-file layout version 5 recorded the version number 5 for this base class (FairMultiLinkedData_Interface). +[INFO] CREATING BRANCH UpstreamTaggerPoint +[INFO] CREATING BRANCH splitcalPoint +[INFO] CREATING BRANCH strawtubesPoint +[INFO] CREATING BRANCH vetoPoint +Global field created with stepper DormandPrince745 +### INFO: TG4RootDetectorConstruction::ConstructSDandField finished + + hInelastic FTFP_BERT_HP : threshold between BERT and FTFP is over the interval + for pions : 3 to 6 GeV + for kaons : 3 to 6 GeV + for proton : 3 to 6 GeV + for neutron : 3 to 6 GeV + +TG4ComposedPhysicsList::ConstructProcess done +Available UI session types: [ Qt, tcsh, csh ] + +********************************************** + GEANT4 Geometry statistics: + 701 logical volumes + 46126 physical volumes + 22 materials + 20 user limits + 694 sensitive detectors +********************************************** + +[INFO] Monte Carlo Engine Initialisation with: TGeant4 +[INFO] FairGenericVMCConfig::SetupPostInit() OFF. +[INFO] x limits: -500, 500, dx = 10 +[INFO] y limits: -500, 500, dy = 10 +[INFO] z limits: -750, 750, dz = 10 +[INFO] Offsets: x = 0, y = 0, z = 8957 +[INFO] Angles : phi = 0, theta = 0, psi = 0 +[INFO] Total number of bins = 1540351; Nx = 101, Ny = 101, Nz = 151 +[INFO] x limits: 0, 219.922, dx = 1.99929 +[INFO] y limits: 0, 217.969, dy = 1.99971 +[INFO] z limits: -50, 3075, dz = 5 +[INFO] Offsets: x = 0, y = 0, z = 204 +[INFO] Angles : phi = 0, theta = 0, psi = 0 +[INFO] Total number of bins = 7643460; Nx = 111, Ny = 110, Nz = 626 +Adding field MainSpecMap +Adding field muonShieldField +Setting the Global field +Adding field TotalField to Global +[INFO] FairMCApplication::InitGeometry: 0 + G4ChordFinder: stepperDriverId: 2 + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomFieldParameters0001 + issued by : G4FieldBuilder::ConstructField: +Field was already constructed. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +GammaToMuPair: gamma->mu+mu- Bethe Heitler process, SubType= 15 + good cross section parametrization from 211.317 MeV to 1e+12 GeV for all Z. + cross section factor: 1 + +AnnihiToMuPair: e+e->mu+mu- annihilation, atomic e- at rest, SubType=6 + threshold at 43.6931 GeV good description up to 1000 TeV for all Z. + +AnnihiToTauPair: e+e->tau+tau- annihilation, atomic e- at rest, SubType=18 + threshold at 12357.1 GeV good description up to 1000 TeV for all Z. +====================================================================== +====== Radioactive Decay Physics Parameters ======= +====================================================================== +min MeanLife (from G4NuclideTable) 1 ns +Max life time (from G4DeexPrecoParameters) 1000 ps +Internal e- conversion flag 1 +Stored internal conversion coefficients 1 +Enabled atomic relaxation mode 1 +Enable correlated gamma emission 0 +Max 2J for sampling of angular correlations 10 +Atomic de-excitation enabled 1 +Auger electron emission enabled 1 +Check EM cuts disabled for atomic de-excitation 1 +Use Bearden atomic level energies 0 +Use ANSTO fluorescence model 0 +Threshold for very long decay time at rest 1 y +====================================================================== + +======================================================= +====== ParticleHP Physics Parameters ======== +======================================================= + Use only photo-evaporation 0 + Skip missing isotopes 0 + Neglect Doppler 0 + Do not adjust final state 0 + Produce fission fragments 0 + Use WendtFissionModel 0 + Use NRESP71Model 0 + Use DBRC 0 + PHP use Poisson 0 + PHP check 1 + CHECK HP NAMES 0 + Enable DEBUG 0 + Use probability tables from +======================================================= + + +==================================================================== + HADRONIC PROCESSES SUMMARY (verbose level 1) +----------------------------------------------------------------------- + Hadronic Processes for B- + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for D- + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for GenericIon + Process: ionInelastic + Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n + Model: FTFP: 3 GeV/n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: RadioactiveDecay +----------------------------------------------------------------------- + Hadronic Processes for He3 + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: He3Inelastic + Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n + Model: FTFP: 3 GeV/n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV +----------------------------------------------------------------------- + Hadronic Processes for alpha + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: alphaInelastic + Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n + Model: FTFP: 3 GeV/n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV +----------------------------------------------------------------------- + Hadronic Processes for anti_He3 + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n + Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_He3Inelastic + Model: FTFP: 0 eV /n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_alpha + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n + Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_alphaInelastic + Model: FTFP: 0 eV /n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_deuteron + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n + Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_deuteronInelastic + Model: FTFP: 0 eV /n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +------------------------------------------------------------------------- + Hadronic Processes for anti_hypertriton + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_lambda + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_neutron + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100.1 MeV + Model: AntiAElastic: 100 MeV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_neutronInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_proton + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100.1 MeV + Model: AntiAElastic: 100 MeV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_protonInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_triton + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n + Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_tritonInelastic + Model: FTFP: 0 eV /n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for deuteron + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: dInelastic + Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n + Model: FTFP: 3 GeV/n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV +----------------------------------------------------------------------- + Hadronic Processes for e+ + Process: positronNuclear + Model: G4ElectroVDNuclearModel: 0 eV ---> 1 PeV + Cr_sctns: ElectroNuclearXS: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for e- + Process: electronNuclear + Model: G4ElectroVDNuclearModel: 0 eV ---> 1 PeV + Cr_sctns: ElectroNuclearXS: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for kaon+ + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: kaon+Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for kaon- + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: kaon-Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: hBertiniCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for lambda + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: lambdaInelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for mu+ + Process: muonNuclear + Model: G4MuonVDNuclearModel: 0 eV ---> 1 PeV + Cr_sctns: KokoulinMuonNuclearXS: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for mu- + Process: muonNuclear + Model: G4MuonVDNuclearModel: 0 eV ---> 1 PeV + Cr_sctns: KokoulinMuonNuclearXS: 0 eV ---> 100 TeV + Process: muMinusCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for neutron + Process: hadElastic + Model: hElasticCHIPS: 19.5 MeV ---> 100 TeV + Model: NeutronHPElastic: 0 eV ---> 20 MeV + Cr_sctns: NeutronHPElasticXS: 0 eV ---> 20 MeV + Cr_sctns: G4NeutronElasticXS: 0 eV ---> 100 TeV + Process: neutronInelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 19.9 MeV ---> 6 GeV + Model: NeutronHPInelastic: 0 eV ---> 20 MeV + Cr_sctns: NeutronHPInelasticXS: 0 eV ---> 20 MeV + Cr_sctns: G4NeutronInelasticXS: 0 eV ---> 100 TeV + Process: nCapture + Model: nRadCaptureHP: 0 eV ---> 20 MeV + Model: nRadCapture: 19.9 MeV ---> 100 TeV + Cr_sctns: NeutronHPCaptureXS: 0 eV ---> 100 TeV + Cr_sctns: G4NeutronCaptureXS: 0 eV ---> 100 TeV + Process: nFission + Model: NeutronHPFission: 0 eV ---> 20 MeV + Model: G4LFission: 19.9 MeV ---> 100 TeV + Cr_sctns: NeutronHPFissionXS: 0 eV ---> 20 MeV + Cr_sctns: ZeroXS: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for pi+ + Process: hadElastic + Model: hElasticGlauber: 0 eV ---> 100 TeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV + Process: pi+Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for pi- + Process: hadElastic + Model: hElasticGlauber: 0 eV ---> 100 TeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV + Process: pi-Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV + Process: hBertiniCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for proton + Process: hadElastic + Model: hElasticCHIPS: 0 eV ---> 100 TeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV + Process: protonInelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for sigma- + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: sigma-Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: hBertiniCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for triton + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: tInelastic + Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n + Model: FTFP: 3 GeV/n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: RadioactiveDecay +======================================================================= +====== Geant4 Native Pre-compound Model Parameters ======== +======================================================================= +Type of pre-compound model 0 +Type of pre-compound inverse x-section 1 +Pre-compound model active 1 +Pre-compound excitation low energy 0.1 MeV +Pre-compound excitation high energy 15 MeV +Angular generator for pre-compound model 1 +Use NeverGoBack option for pre-compound model 0 +Use SoftCutOff option for pre-compound model 0 +Use CEM transitions for pre-compound model 1 +Use GNASH transitions for pre-compound model 0 +Use HETC submodel for pre-compound model 0 +======================================================================= +====== Nuclear De-excitation Module Parameters ======== +======================================================================= +Type of de-excitation inverse x-section 3 +Type of de-excitation factory Evaporation+GEM +Number of de-excitation channels 68 +Type of Fermi BreakUp model ModelVI +Min excitation energy 0.01 keV +Min energy per nucleon for multifragmentation 2e+05 MeV +Level density (1/MeV) 0.075 +Use simple level density model 1 +Use discrete excitation energy of the residual 0 +Time limit for long lived isomeres 1 ns +Isomer production flag 1 +Internal e- conversion flag 1 +Store e- internal conversion data 1 +Correlated gamma emission flag 0 +Max 2J for sampling of angular correlations 10 +======================================================================= +[INFO] *** FairBaseParSet written to ROOT file version: 1 +[INFO] *** FairGeoParSet written to ROOT file version: 1 +['tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten'] [4.5, 1.8, 1.7, 1.7, 1.8, 1.9, 2.1, 1.9, 2.1, 2.4, 2.8, 3.3, 4.1, 5.6, 8.8, 17.2, 28.7, 28.8, 28.8] [0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.48, 0.5, 0.68, 0.68, 0] +INFO: Processing a file from the old production - setting target z offset to 70.845m +Process 100 from input file, with 𝜎 = 5 , with smear radius r = 0.8 with MCTracksWithHitsOnly True +Calling addVMCFields + +Macro finished successfully. +Output file is ./sim_muonback_io.root +Parameter file is ./params_muonback_io.root +Geometry file is ./geo_muonback_io.root +removed empty events, left with: 35 +WARNING: FileHeader not found in simulation output; skipped FileHeader RunID update +======================================================================== +Simulation finished successfully +======================================================================== + +[Generator Validation] + Scanned input entries : 100 + Accepted input entries : 100 + Selected muons : 118 + Transported tracks : 804 + +[Tree Validation] + Requested events : 100 + Final cbmsim entries : 35 + Kept fraction : 35.00% + Branches in cbmsim : 7 + ROOT objects : 2 + Countable branches : 3 + +[MCTrack Validation] + Total tracks : 271 + Primary tracks : 69 + Secondary tracks : 202 + Tracks per event : 7.743 + Track momentum : 124.3 +- 141.1 [min=4.086e-14, max=400] + Track energy : nan +- 0 [min=0.3665, max=400] + Track start Z : 18.17 +- 15.49 [min=0.1074, max=82.85] + Top PDG counts : 2212:58, 2:55, 1:36, 13:21, 2112:19, -13:18, 21:16, 223:12, 22:7, 113:6 + +[Branch Multiplicity] + MCTrack : total=271, mean/event=7.743 +- 2.143, active=35/35 (100.0%), max=13 + UpstreamTaggerPoint : total=35, mean/event=1 +- 0.414, active=32/35 ( 91.4%), max=2 + vetoPoint : total=39, mean/event=1.114 +- 0.3182, active=35/35 (100.0%), max=2 diff --git a/tests/fairship_tests/references/muonback-summary.txt b/tests/fairship_tests/references/muonback-summary.txt new file mode 100644 index 0000000000..d3a973b03d --- /dev/null +++ b/tests/fairship_tests/references/muonback-summary.txt @@ -0,0 +1,707 @@ +TStreamerInfo::BuildOld:0: RuntimeWarning: Cannot convert vetoPoint::fLpos from type: TVector3 to type: array, skip element +TStreamerInfo::BuildOld:0: RuntimeWarning: Cannot convert vetoPoint::fLmom from type: TVector3 to type: array, skip element +[INFO] Opening input file to find keys https://cernbox.cern.ch/remote.php/dav/public-files/vdwtXtgM5P2Z0S5/pythia8_Geant4_10.0_withCharmandBeauty0_mu.root +[INFO] Opening input file https://cernbox.cern.ch/remote.php/dav/public-files/vdwtXtgM5P2Z0S5/pythia8_Geant4_10.0_withCharmandBeauty0_mu.root +[INFO] Reading 13450391 entries +[INFO] Using TClonesArray format (vetoPoint) +[INFO] Seed: 42 +[INFO] FairRootFileSink initialized. +[INFO] - cbmroot +[INFO] - ./sim_muonback_summary.root +[INFO] ============== FairRunSim: Initialising simulation run ============== +[INFO] FairGeoMedia: Read media + +************************************************************* +************************************************************* +[WARN] FairGenericVMCConfig::Setup() Using gConfig.C macro DEPRACATED. +[WARN] Check FairRoot/examples/common/gconfig/ for current YAML implementation. +[INFO] ---------------User config is used: g4Config.C + +============================================================= + Virtual Monte Carlo Library + Version 2.2 ( 22 April 2026 ) +============================================================= + +============================================================= + Geant4 Virtual Monte Carlo + Version 6.8 ( 2 February 2026 ) + WWW : http://root.cern.ch/drupal/content/geant4-vmc +============================================================= + +Running TVirtualMCApplication::ConstructGeometry +[INFO] -- Target cooler: PressurisedHe90 T=363.15 K, P=9.98641e+09 MeV/mm3, Density=0.002121 +[INFO] veto: Decay Volume medium set as: helium +[INFO] veto: made sensitive for following muons: Cavern + Z Position (Upstream Tagger1) 3272 +[INFO] TGeometry will be imported to VMC + +isMaster=1 + +************************************************************** + Geant4 version Name: geant4-11-04-patch-02 [MT] (12-June-2026) + Copyright : Geant4 Collaboration + References : NIM A 506 (2003), 250-303 + : IEEE-TNS 53 (2006), 270-278 + : NIM A 835 (2016), 186-225 + WWW : http://geant4.org/ +************************************************************** + +===> GEANT4 materials created and mapped to TGeo ones... +===> GEANT4 physical volumes created and mapped to TGeo hierarchy... +### INFO: TG4RootDetectorConstruction::Construct() finished +TG4PostDetConstruction::Initialize +G4 Stat: instantiated 701 logical volumes + 46126 physical volumes +Adding HadronPhysicsList FTFP_BERT_HP_EMZ +G4PhysListFactory::GetReferencePhysList +<<< Geant4 Physics List simulation engine: FTFP_BERT_HP + +G4VModularPhysicsList::ReplacePhysics: G4EmStandard with type : 2 is replaced with G4EmStandard_opt4 + +Adding SpecialPhysicsList stepLimiter+specialCuts+ +### TG4SpecialControlsV2 constructed +Visualization Manager instantiating with verbosity "warnings (3)"... +SetCuts Macro: Setting Processes.. +SetCuts Macro: Setting cuts.. +TG4RootDetectorConstruction::ConstructSDandField +TG4PostDetConstruction::InitializeSDandField +[INFO] FairMCApplication::InitGeometry: 0 +[INFO] CREATING BRANCH MCTrack +[INFO] CREATING BRANCH TimeDetPoint +CreateReadMemberWiseActions:0: RuntimeWarning: The StreamerInfo of class FairMCPoint read from file https://cernbox.cern.ch/remote.php/dav/public-files/vdwtXtgM5P2Z0S5/pythia8_Geant4_10.0_withCharmandBeauty0_mu.root + has the same version (=5) as the active class but a different checksum. + You should update the version to ClassDef(FairMCPoint,6). + The objects on this file might not be readable because: + The in-memory layout version 5 for class 'FairMCPoint' has a base class (FairMultiLinkedData_Interface) with version 6 but the on-file layout version 5 recorded the version number 5 for this base class (FairMultiLinkedData_Interface). +[INFO] CREATING BRANCH UpstreamTaggerPoint +[INFO] CREATING BRANCH splitcalPoint +[INFO] CREATING BRANCH strawtubesPoint +[INFO] CREATING BRANCH vetoPoint +Global field created with stepper DormandPrince745 +### INFO: TG4RootDetectorConstruction::ConstructSDandField finished + + hInelastic FTFP_BERT_HP : threshold between BERT and FTFP is over the interval + for pions : 3 to 6 GeV + for kaons : 3 to 6 GeV + for proton : 3 to 6 GeV + for neutron : 3 to 6 GeV + +TG4ComposedPhysicsList::ConstructProcess done +Available UI session types: [ Qt, tcsh, csh ] + +********************************************** + GEANT4 Geometry statistics: + 701 logical volumes + 46126 physical volumes + 22 materials + 20 user limits + 694 sensitive detectors +********************************************** + +[INFO] Monte Carlo Engine Initialisation with: TGeant4 +[INFO] FairGenericVMCConfig::SetupPostInit() OFF. +[INFO] x limits: -500, 500, dx = 10 +[INFO] y limits: -500, 500, dy = 10 +[INFO] z limits: -750, 750, dz = 10 +[INFO] Offsets: x = 0, y = 0, z = 8957 +[INFO] Angles : phi = 0, theta = 0, psi = 0 +[INFO] Total number of bins = 1540351; Nx = 101, Ny = 101, Nz = 151 +[INFO] x limits: 0, 219.922, dx = 1.99929 +[INFO] y limits: 0, 217.969, dy = 1.99971 +[INFO] z limits: -50, 3075, dz = 5 +[INFO] Offsets: x = 0, y = 0, z = 204 +[INFO] Angles : phi = 0, theta = 0, psi = 0 +[INFO] Total number of bins = 7643460; Nx = 111, Ny = 110, Nz = 626 +Adding field MainSpecMap +Adding field muonShieldField +Setting the Global field +Adding field TotalField to Global +[INFO] FairMCApplication::InitGeometry: 0 + G4ChordFinder: stepperDriverId: 2 + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomFieldParameters0001 + issued by : G4FieldBuilder::ConstructField: +Field was already constructed. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +GammaToMuPair: gamma->mu+mu- Bethe Heitler process, SubType= 15 + good cross section parametrization from 211.317 MeV to 1e+12 GeV for all Z. + cross section factor: 1 + +AnnihiToMuPair: e+e->mu+mu- annihilation, atomic e- at rest, SubType=6 + threshold at 43.6931 GeV good description up to 1000 TeV for all Z. + +AnnihiToTauPair: e+e->tau+tau- annihilation, atomic e- at rest, SubType=18 + threshold at 12357.1 GeV good description up to 1000 TeV for all Z. +====================================================================== +====== Radioactive Decay Physics Parameters ======= +====================================================================== +min MeanLife (from G4NuclideTable) 1 ns +Max life time (from G4DeexPrecoParameters) 1000 ps +Internal e- conversion flag 1 +Stored internal conversion coefficients 1 +Enabled atomic relaxation mode 1 +Enable correlated gamma emission 0 +Max 2J for sampling of angular correlations 10 +Atomic de-excitation enabled 1 +Auger electron emission enabled 1 +Check EM cuts disabled for atomic de-excitation 1 +Use Bearden atomic level energies 0 +Use ANSTO fluorescence model 0 +Threshold for very long decay time at rest 1 y +====================================================================== + +======================================================= +====== ParticleHP Physics Parameters ======== +======================================================= + Use only photo-evaporation 0 + Skip missing isotopes 0 + Neglect Doppler 0 + Do not adjust final state 0 + Produce fission fragments 0 + Use WendtFissionModel 0 + Use NRESP71Model 0 + Use DBRC 0 + PHP use Poisson 0 + PHP check 1 + CHECK HP NAMES 0 + Enable DEBUG 0 + Use probability tables from +======================================================= + + +==================================================================== + HADRONIC PROCESSES SUMMARY (verbose level 1) +----------------------------------------------------------------------- + Hadronic Processes for B- + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for D- + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for GenericIon + Process: ionInelastic + Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n + Model: FTFP: 3 GeV/n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: RadioactiveDecay +----------------------------------------------------------------------- + Hadronic Processes for He3 + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: He3Inelastic + Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n + Model: FTFP: 3 GeV/n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV +----------------------------------------------------------------------- + Hadronic Processes for alpha + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: alphaInelastic + Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n + Model: FTFP: 3 GeV/n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV +----------------------------------------------------------------------- + Hadronic Processes for anti_He3 + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n + Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_He3Inelastic + Model: FTFP: 0 eV /n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_alpha + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n + Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_alphaInelastic + Model: FTFP: 0 eV /n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_deuteron + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n + Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_deuteronInelastic + Model: FTFP: 0 eV /n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +------------------------------------------------------------------------- + Hadronic Processes for anti_hypertriton + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_lambda + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_neutron + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100.1 MeV + Model: AntiAElastic: 100 MeV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_neutronInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_proton + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100.1 MeV + Model: AntiAElastic: 100 MeV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_protonInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_triton + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n + Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_tritonInelastic + Model: FTFP: 0 eV /n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for deuteron + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: dInelastic + Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n + Model: FTFP: 3 GeV/n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV +----------------------------------------------------------------------- + Hadronic Processes for e+ + Process: positronNuclear + Model: G4ElectroVDNuclearModel: 0 eV ---> 1 PeV + Cr_sctns: ElectroNuclearXS: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for e- + Process: electronNuclear + Model: G4ElectroVDNuclearModel: 0 eV ---> 1 PeV + Cr_sctns: ElectroNuclearXS: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for kaon+ + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: kaon+Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for kaon- + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: kaon-Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: hBertiniCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for lambda + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: lambdaInelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for mu+ + Process: muonNuclear + Model: G4MuonVDNuclearModel: 0 eV ---> 1 PeV + Cr_sctns: KokoulinMuonNuclearXS: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for mu- + Process: muonNuclear + Model: G4MuonVDNuclearModel: 0 eV ---> 1 PeV + Cr_sctns: KokoulinMuonNuclearXS: 0 eV ---> 100 TeV + Process: muMinusCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for neutron + Process: hadElastic + Model: hElasticCHIPS: 19.5 MeV ---> 100 TeV + Model: NeutronHPElastic: 0 eV ---> 20 MeV + Cr_sctns: NeutronHPElasticXS: 0 eV ---> 20 MeV + Cr_sctns: G4NeutronElasticXS: 0 eV ---> 100 TeV + Process: neutronInelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 19.9 MeV ---> 6 GeV + Model: NeutronHPInelastic: 0 eV ---> 20 MeV + Cr_sctns: NeutronHPInelasticXS: 0 eV ---> 20 MeV + Cr_sctns: G4NeutronInelasticXS: 0 eV ---> 100 TeV + Process: nCapture + Model: nRadCaptureHP: 0 eV ---> 20 MeV + Model: nRadCapture: 19.9 MeV ---> 100 TeV + Cr_sctns: NeutronHPCaptureXS: 0 eV ---> 100 TeV + Cr_sctns: G4NeutronCaptureXS: 0 eV ---> 100 TeV + Process: nFission + Model: NeutronHPFission: 0 eV ---> 20 MeV + Model: G4LFission: 19.9 MeV ---> 100 TeV + Cr_sctns: NeutronHPFissionXS: 0 eV ---> 20 MeV + Cr_sctns: ZeroXS: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for pi+ + Process: hadElastic + Model: hElasticGlauber: 0 eV ---> 100 TeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV + Process: pi+Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for pi- + Process: hadElastic + Model: hElasticGlauber: 0 eV ---> 100 TeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV + Process: pi-Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV + Process: hBertiniCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for proton + Process: hadElastic + Model: hElasticCHIPS: 0 eV ---> 100 TeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV + Process: protonInelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for sigma- + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: sigma-Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: hBertiniCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for triton + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: tInelastic + Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n + Model: FTFP: 3 GeV/n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: RadioactiveDecay +======================================================================= +====== Geant4 Native Pre-compound Model Parameters ======== +======================================================================= +Type of pre-compound model 0 +Type of pre-compound inverse x-section 1 +Pre-compound model active 1 +Pre-compound excitation low energy 0.1 MeV +Pre-compound excitation high energy 15 MeV +Angular generator for pre-compound model 1 +Use NeverGoBack option for pre-compound model 0 +Use SoftCutOff option for pre-compound model 0 +Use CEM transitions for pre-compound model 1 +Use GNASH transitions for pre-compound model 0 +Use HETC submodel for pre-compound model 0 +======================================================================= +====== Nuclear De-excitation Module Parameters ======== +======================================================================= +Type of de-excitation inverse x-section 3 +Type of de-excitation factory Evaporation+GEM +Number of de-excitation channels 68 +Type of Fermi BreakUp model ModelVI +Min excitation energy 0.01 keV +Min energy per nucleon for multifragmentation 2e+05 MeV +Level density (1/MeV) 0.075 +Use simple level density model 1 +Use discrete excitation energy of the residual 0 +Time limit for long lived isomeres 1 ns +Isomer production flag 1 +Internal e- conversion flag 1 +Store e- internal conversion data 1 +Correlated gamma emission flag 0 +Max 2J for sampling of angular correlations 10 +======================================================================= + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : part0005 + issued by : G4PrimaryParticle::Set4Momentum +Primary particle PDG=-13 deltaMass(MeV)=1.69357 is larger than the tolerance(MeV)=1 + Specified mass(MeV)=107.352 while PDG mass(MEV)=105.658 + To change the tolerance or the exception severity, use G4PrimaryTransformer::SetKETolerance() method. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : part0005 + issued by : G4PrimaryParticle::Set4Momentum +Primary particle PDG=13 deltaMass(MeV)=4.00013 is larger than the tolerance(MeV)=1 + Specified mass(MeV)=109.659 while PDG mass(MEV)=105.658 + To change the tolerance or the exception severity, use G4PrimaryTransformer::SetKETolerance() method. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : part0005 + issued by : G4PrimaryParticle::Set4Momentum +Primary particle PDG=-13 deltaMass(MeV)=1.79762 is larger than the tolerance(MeV)=1 + Specified mass(MeV)=107.456 while PDG mass(MEV)=105.658 + To change the tolerance or the exception severity, use G4PrimaryTransformer::SetKETolerance() method. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : part0005 + issued by : G4PrimaryParticle::Set4Momentum +Primary particle PDG=-13 deltaMass(MeV)=3.30828 is larger than the tolerance(MeV)=1 + Specified mass(MeV)=102.35 while PDG mass(MEV)=105.658 + To change the tolerance or the exception severity, use G4PrimaryTransformer::SetKETolerance() method. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : part0005 + issued by : G4PrimaryParticle::Set4Momentum +Primary particle PDG=-13 deltaMass(MeV)=1.88192 is larger than the tolerance(MeV)=1 + Specified mass(MeV)=103.776 while PDG mass(MEV)=105.658 + To change the tolerance or the exception severity, use G4PrimaryTransformer::SetKETolerance() method. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : part0005 + issued by : G4PrimaryParticle::Set4Momentum +Primary particle PDG=13 deltaMass(MeV)=6.24323 is larger than the tolerance(MeV)=1 + Specified mass(MeV)=111.902 while PDG mass(MEV)=105.658 + To change the tolerance or the exception severity, use G4PrimaryTransformer::SetKETolerance() method. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : part0005 + issued by : G4PrimaryParticle::Set4Momentum +Primary particle PDG=-13 deltaMass(MeV)=3.90225 is larger than the tolerance(MeV)=1 + Specified mass(MeV)=109.561 while PDG mass(MEV)=105.658 + To change the tolerance or the exception severity, use G4PrimaryTransformer::SetKETolerance() method. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : part0005 + issued by : G4PrimaryParticle::Set4Momentum +Primary particle PDG=-13 deltaMass(MeV)=1.57726 is larger than the tolerance(MeV)=1 + Specified mass(MeV)=104.081 while PDG mass(MEV)=105.658 + To change the tolerance or the exception severity, use G4PrimaryTransformer::SetKETolerance() method. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : part0005 + issued by : G4PrimaryParticle::Set4Momentum +Primary particle PDG=13 deltaMass(MeV)=1.75622 is larger than the tolerance(MeV)=1 + Specified mass(MeV)=103.902 while PDG mass(MEV)=105.658 + To change the tolerance or the exception severity, use G4PrimaryTransformer::SetKETolerance() method. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : part0005 + issued by : G4PrimaryParticle::Set4Momentum +Primary particle PDG=-13 deltaMass(MeV)=1.78711 is larger than the tolerance(MeV)=1 + Specified mass(MeV)=107.445 while PDG mass(MEV)=105.658 + To change the tolerance or the exception severity, use G4PrimaryTransformer::SetKETolerance() method. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : part0005 + issued by : G4PrimaryParticle::Set4Momentum +Primary particle PDG=13 deltaMass(MeV)=1.64751 is larger than the tolerance(MeV)=1 + Specified mass(MeV)=107.306 while PDG mass(MEV)=105.658 + To change the tolerance or the exception severity, use G4PrimaryTransformer::SetKETolerance() method. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : part0005 + issued by : G4PrimaryParticle::Set4Momentum +Primary particle PDG=13 deltaMass(MeV)=5.54992 is larger than the tolerance(MeV)=1 + Specified mass(MeV)=100.108 while PDG mass(MEV)=105.658 + To change the tolerance or the exception severity, use G4PrimaryTransformer::SetKETolerance() method. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : part0005 + issued by : G4PrimaryParticle::Set4Momentum +Primary particle PDG=13 deltaMass(MeV)=1.61963 is larger than the tolerance(MeV)=1 + Specified mass(MeV)=104.039 while PDG mass(MEV)=105.658 + To change the tolerance or the exception severity, use G4PrimaryTransformer::SetKETolerance() method. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : part0005 + issued by : G4PrimaryParticle::Set4Momentum +Primary particle PDG=-13 deltaMass(MeV)=2.51767 is larger than the tolerance(MeV)=1 + Specified mass(MeV)=103.141 while PDG mass(MEV)=105.658 + To change the tolerance or the exception severity, use G4PrimaryTransformer::SetKETolerance() method. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : part0005 + issued by : G4PrimaryParticle::Set4Momentum +Primary particle PDG=13 deltaMass(MeV)=1.42903 is larger than the tolerance(MeV)=1 + Specified mass(MeV)=107.087 while PDG mass(MEV)=105.658 + To change the tolerance or the exception severity, use G4PrimaryTransformer::SetKETolerance() method. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : part0005 + issued by : G4PrimaryParticle::Set4Momentum +Primary particle PDG=13 deltaMass(MeV)=4.29342 is larger than the tolerance(MeV)=1 + Specified mass(MeV)=109.952 while PDG mass(MEV)=105.658 + To change the tolerance or the exception severity, use G4PrimaryTransformer::SetKETolerance() method. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : part0005 + issued by : G4PrimaryParticle::Set4Momentum +Primary particle PDG=-13 deltaMass(MeV)=1.45931 is larger than the tolerance(MeV)=1 + Specified mass(MeV)=107.118 while PDG mass(MEV)=105.658 + To change the tolerance or the exception severity, use G4PrimaryTransformer::SetKETolerance() method. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : part0005 + issued by : G4PrimaryParticle::Set4Momentum +Primary particle PDG=-13 deltaMass(MeV)=8.83006 is larger than the tolerance(MeV)=1 + Specified mass(MeV)=114.488 while PDG mass(MEV)=105.658 + To change the tolerance or the exception severity, use G4PrimaryTransformer::SetKETolerance() method. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : part0005 + issued by : G4PrimaryParticle::Set4Momentum +Primary particle PDG=-13 deltaMass(MeV)=1.10932 is larger than the tolerance(MeV)=1 + Specified mass(MeV)=104.549 while PDG mass(MEV)=105.658 + To change the tolerance or the exception severity, use G4PrimaryTransformer::SetKETolerance() method. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : part0005 + issued by : G4PrimaryParticle::Set4Momentum +Primary particle PDG=-13 deltaMass(MeV)=1.53377 is larger than the tolerance(MeV)=1 + Specified mass(MeV)=104.125 while PDG mass(MEV)=105.658 + To change the tolerance or the exception severity, use G4PrimaryTransformer::SetKETolerance() method. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : part0005 + issued by : G4PrimaryParticle::Set4Momentum +Primary particle PDG=-13 deltaMass(MeV)=1.58398 is larger than the tolerance(MeV)=1 + Specified mass(MeV)=104.074 while PDG mass(MEV)=105.658 + To change the tolerance or the exception severity, use G4PrimaryTransformer::SetKETolerance() method. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +[INFO] *** FairBaseParSet written to ROOT file version: 1 +[INFO] *** FairGeoParSet written to ROOT file version: 1 +['tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten'] [4.5, 1.8, 1.7, 1.7, 1.8, 1.9, 2.1, 1.9, 2.1, 2.4, 2.8, 3.3, 4.1, 5.6, 8.8, 17.2, 28.7, 28.8, 28.8] [0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.48, 0.5, 0.68, 0.68, 0] +INFO: Processing a file from the old production - setting target z offset to 70.845m +Process 5000 from input file, with 𝜎 = 5 , with smear radius r = 0.8 with MCTracksWithHitsOnly True +Calling addVMCFields + +Macro finished successfully. +Output file is ./sim_muonback_summary.root +Parameter file is ./params_muonback_summary.root +Geometry file is ./geo_muonback_summary.root +removed empty events, left with: 1721 +WARNING: FileHeader not found in simulation output; skipped FileHeader RunID update +======================================================================== +Simulation finished successfully +======================================================================== + +[Generator Validation] + Scanned input entries : 5000 + Accepted input entries : 5000 + Selected muons : 6148 + Transported tracks : 39861 + +[Tree Validation] + Requested events : 5000 + Final cbmsim entries : 1721 + Kept fraction : 34.42% + Branches in cbmsim : 7 + ROOT objects : 2 + Countable branches : 3 + +[MCTrack Validation] + Total tracks : 13001 + Primary tracks : 3402 + Secondary tracks : 9599 + Tracks per event : 7.554 + Track momentum : 128.6 +- 140.3 [min=4.086e-14, max=400] + Track energy : nan +- 0 [min=0.1711, max=400] + Track start Z : 17.32 +- 16.96 [min=0.001465, max=124.3] + Top PDG counts : 2212:2557, 2:2309, 1:1702, 2112:1017, 13:979, -13:960, 21:765, 223:621, 22:380, 113:359 + +[Branch Multiplicity] + MCTrack : total=13001, mean/event=7.554 +- 1.915, active=1721/1721 (100.0%), max=14 + UpstreamTaggerPoint : total=1560, mean/event=0.9064 +- 0.5102, active=1409/1721 ( 81.9%), max=2 + vetoPoint : total=1941, mean/event=1.128 +- 0.3374, active=1721/1721 (100.0%), max=3 diff --git a/tests/fairship_tests/references/particle-gun.txt b/tests/fairship_tests/references/particle-gun.txt new file mode 100644 index 0000000000..c19e57832c --- /dev/null +++ b/tests/fairship_tests/references/particle-gun.txt @@ -0,0 +1,470 @@ +[INFO] ParticleGunGenerator: vertex model uniform (Uniform(X), Uniform(Y), Point(Z)) +[INFO] FairRootFileSink initialized. +[INFO] - cbmroot +[INFO] - ./sim_particle_gun_io.root +[INFO] ============== FairRunSim: Initialising simulation run ============== +Info in : Geometry FAIRGeom, FAIR geometry created +[INFO] FairGeoMedia: Read media + +************************************************************* +************************************************************* +[WARN] FairGenericVMCConfig::Setup() Using gConfig.C macro DEPRACATED. +[WARN] Check FairRoot/examples/common/gconfig/ for current YAML implementation. +[INFO] ---------------User config is used: g4Config.C + +============================================================= + Virtual Monte Carlo Library + Version 2.2 ( 22 April 2026 ) +============================================================= + +============================================================= + Geant4 Virtual Monte Carlo + Version 6.8 ( 2 February 2026 ) + WWW : http://root.cern.ch/drupal/content/geant4-vmc +============================================================= + +Running TVirtualMCApplication::ConstructGeometry +Info in : Top volume is cave. Master volume is cave +Info in : --- Maximum geometry depth set to 100 +[INFO] -- Target cooler: PressurisedHe90 T=363.15 K, P=9.98641e+09 MeV/mm3, Density=0.002121 +[INFO] veto: Decay Volume medium set as: vacuums +Info in : Automatic visible depth disabled + Z Position (Upstream Tagger1) 3272 +Info in : Fixing runtime shapes... +Info in : ...Nothing to fix +Info in : Counting nodes... +Info in : Voxelizing... +Info in : Building cache... +Info in : max level = 5, max placements = 14153 +Info in : 46607 nodes/ 695 volume UID's in FAIR geometry +Info in : ----------------modeler ready---------------- +[INFO] TGeometry will be imported to VMC + +Info in : TG4RootNavigator created and registered to G4TransportationManager +isMaster=1 + +************************************************************** + Geant4 version Name: geant4-11-04-patch-02 [MT] (12-June-2026) + Copyright : Geant4 Collaboration + References : NIM A 506 (2003), 250-303 + : IEEE-TNS 53 (2006), 270-278 + : NIM A 835 (2016), 186-225 + WWW : http://geant4.org/ +************************************************************** + +Info in : Creating G4 hierarchy ... +Info in : Converting reflections in: FAIRGeom - FAIR geometry ... +Info in : Done +===> GEANT4 materials created and mapped to TGeo ones... +===> GEANT4 physical volumes created and mapped to TGeo hierarchy... +### INFO: TG4RootDetectorConstruction::Construct() finished +TG4PostDetConstruction::Initialize +G4 Stat: instantiated 701 logical volumes + 46126 physical volumes +Info in : ROOT detector construction class connected to G4RunManager +Adding HadronPhysicsList FTFP_BERT_HP_EMZ +G4PhysListFactory::GetReferencePhysList +<<< Geant4 Physics List simulation engine: FTFP_BERT_HP + +G4VModularPhysicsList::ReplacePhysics: G4EmStandard with type : 2 is replaced with G4EmStandard_opt4 + +Adding SpecialPhysicsList stepLimiter+specialCuts+ +### TG4SpecialControlsV2 constructed +Visualization Manager instantiating with verbosity "warnings (3)"... +SetCuts Macro: Setting Processes.. +SetCuts Macro: Setting cuts.. +TG4RootDetectorConstruction::ConstructSDandField +TG4PostDetConstruction::InitializeSDandField +[INFO] FairMCApplication::InitGeometry: 0 +[INFO] CREATING BRANCH MCTrack +[INFO] CREATING BRANCH TimeDetPoint +[INFO] CREATING BRANCH UpstreamTaggerPoint +[INFO] CREATING BRANCH splitcalPoint +[INFO] CREATING BRANCH strawtubesPoint +[INFO] CREATING BRANCH vetoPoint +Global field created with stepper DormandPrince745 +### INFO: TG4RootDetectorConstruction::ConstructSDandField finished + + hInelastic FTFP_BERT_HP : threshold between BERT and FTFP is over the interval + for pions : 3 to 6 GeV + for kaons : 3 to 6 GeV + for proton : 3 to 6 GeV + for neutron : 3 to 6 GeV + +TG4ComposedPhysicsList::ConstructProcess done +Available UI session types: [ Qt, tcsh, csh ] +[INFO] FairGenerator: particle with PDG =13 Found + +********************************************** + GEANT4 Geometry statistics: + 701 logical volumes + 46126 physical volumes + 22 materials + 19 user limits + 694 sensitive detectors +********************************************** + +[INFO] Monte Carlo Engine Initialisation with: TGeant4 +[INFO] FairGenericVMCConfig::SetupPostInit() OFF. +[INFO] x limits: -500, 500, dx = 10 +[INFO] y limits: -500, 500, dy = 10 +[INFO] z limits: -750, 750, dz = 10 +[INFO] Offsets: x = 0, y = 0, z = 8957 +[INFO] Angles : phi = 0, theta = 0, psi = 0 +[INFO] Total number of bins = 1540351; Nx = 101, Ny = 101, Nz = 151 +[INFO] x limits: 0, 219.922, dx = 1.99929 +[INFO] y limits: 0, 217.969, dy = 1.99971 +[INFO] z limits: -50, 3075, dz = 5 +[INFO] Offsets: x = 0, y = 0, z = 204 +[INFO] Angles : phi = 0, theta = 0, psi = 0 +[INFO] Total number of bins = 7643460; Nx = 111, Ny = 110, Nz = 626 +Adding field MainSpecMap +Adding field muonShieldField +Setting the Global field +Adding field TotalField to Global +[INFO] FairMCApplication::InitGeometry: 0 + G4ChordFinder: stepperDriverId: 2 + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomFieldParameters0001 + issued by : G4FieldBuilder::ConstructField: +Field was already constructed. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +GammaToMuPair: gamma->mu+mu- Bethe Heitler process, SubType= 15 + good cross section parametrization from 211.317 MeV to 1e+12 GeV for all Z. + cross section factor: 1 + +AnnihiToMuPair: e+e->mu+mu- annihilation, atomic e- at rest, SubType=6 + threshold at 43.6931 GeV good description up to 1000 TeV for all Z. + +AnnihiToTauPair: e+e->tau+tau- annihilation, atomic e- at rest, SubType=18 + threshold at 12357.1 GeV good description up to 1000 TeV for all Z. +====================================================================== +====== Radioactive Decay Physics Parameters ======= +====================================================================== +min MeanLife (from G4NuclideTable) 1 ns +Max life time (from G4DeexPrecoParameters) 1000 ps +Internal e- conversion flag 1 +Stored internal conversion coefficients 1 +Enabled atomic relaxation mode 1 +Enable correlated gamma emission 0 +Max 2J for sampling of angular correlations 10 +Atomic de-excitation enabled 1 +Auger electron emission enabled 1 +Check EM cuts disabled for atomic de-excitation 1 +Use Bearden atomic level energies 0 +Use ANSTO fluorescence model 0 +Threshold for very long decay time at rest 1 y +====================================================================== + +======================================================= +====== ParticleHP Physics Parameters ======== +======================================================= + Use only photo-evaporation 0 + Skip missing isotopes 0 + Neglect Doppler 0 + Do not adjust final state 0 + Produce fission fragments 0 + Use WendtFissionModel 0 + Use NRESP71Model 0 + Use DBRC 0 + PHP use Poisson 0 + PHP check 1 + CHECK HP NAMES 0 + Enable DEBUG 0 + Use probability tables from +======================================================= + + +==================================================================== + HADRONIC PROCESSES SUMMARY (verbose level 1) +----------------------------------------------------------------------- + Hadronic Processes for B- + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for D- + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for GenericIon + Process: ionInelastic + Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n + Model: FTFP: 3 GeV/n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: RadioactiveDecay +----------------------------------------------------------------------- + Hadronic Processes for He3 + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: He3Inelastic + Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n + Model: FTFP: 3 GeV/n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV +----------------------------------------------------------------------- + Hadronic Processes for alpha + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: alphaInelastic + Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n + Model: FTFP: 3 GeV/n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV +----------------------------------------------------------------------- + Hadronic Processes for anti_He3 + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n + Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_He3Inelastic + Model: FTFP: 0 eV /n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_alpha + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n + Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_alphaInelastic + Model: FTFP: 0 eV /n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_deuteron + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n + Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_deuteronInelastic + Model: FTFP: 0 eV /n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +------------------------------------------------------------------------- + Hadronic Processes for anti_hypertriton + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_lambda + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_neutron + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100.1 MeV + Model: AntiAElastic: 100 MeV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_neutronInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_proton + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100.1 MeV + Model: AntiAElastic: 100 MeV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_protonInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_triton + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n + Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_tritonInelastic + Model: FTFP: 0 eV /n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for deuteron + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: dInelastic + Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n + Model: FTFP: 3 GeV/n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV +----------------------------------------------------------------------- + Hadronic Processes for e+ + Process: positronNuclear + Model: G4ElectroVDNuclearModel: 0 eV ---> 1 PeV + Cr_sctns: ElectroNuclearXS: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for e- + Process: electronNuclear + Model: G4ElectroVDNuclearModel: 0 eV ---> 1 PeV + Cr_sctns: ElectroNuclearXS: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for kaon+ + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: kaon+Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for kaon- + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: kaon-Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: hBertiniCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for lambda + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: lambdaInelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for mu+ + Process: muonNuclear + Model: G4MuonVDNuclearModel: 0 eV ---> 1 PeV + Cr_sctns: KokoulinMuonNuclearXS: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for mu- + Process: muonNuclear + Model: G4MuonVDNuclearModel: 0 eV ---> 1 PeV + Cr_sctns: KokoulinMuonNuclearXS: 0 eV ---> 100 TeV + Process: muMinusCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for neutron + Process: hadElastic + Model: hElasticCHIPS: 19.5 MeV ---> 100 TeV + Model: NeutronHPElastic: 0 eV ---> 20 MeV + Cr_sctns: NeutronHPElasticXS: 0 eV ---> 20 MeV + Cr_sctns: G4NeutronElasticXS: 0 eV ---> 100 TeV + Process: neutronInelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 19.9 MeV ---> 6 GeV + Model: NeutronHPInelastic: 0 eV ---> 20 MeV + Cr_sctns: NeutronHPInelasticXS: 0 eV ---> 20 MeV + Cr_sctns: G4NeutronInelasticXS: 0 eV ---> 100 TeV + Process: nCapture + Model: nRadCaptureHP: 0 eV ---> 20 MeV + Model: nRadCapture: 19.9 MeV ---> 100 TeV + Cr_sctns: NeutronHPCaptureXS: 0 eV ---> 100 TeV + Cr_sctns: G4NeutronCaptureXS: 0 eV ---> 100 TeV + Process: nFission + Model: NeutronHPFission: 0 eV ---> 20 MeV + Model: G4LFission: 19.9 MeV ---> 100 TeV + Cr_sctns: NeutronHPFissionXS: 0 eV ---> 20 MeV + Cr_sctns: ZeroXS: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for pi+ + Process: hadElastic + Model: hElasticGlauber: 0 eV ---> 100 TeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV + Process: pi+Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for pi- + Process: hadElastic + Model: hElasticGlauber: 0 eV ---> 100 TeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV + Process: pi-Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV + Process: hBertiniCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for proton + Process: hadElastic + Model: hElasticCHIPS: 0 eV ---> 100 TeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV + Process: protonInelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for sigma- + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: sigma-Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: hBertiniCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for triton + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: tInelastic + Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n + Model: FTFP: 3 GeV/n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: RadioactiveDecay +======================================================================= +====== Geant4 Native Pre-compound Model Parameters ======== +======================================================================= +Type of pre-compound model 0 +Type of pre-compound inverse x-section 1 +Pre-compound model active 1 +Pre-compound excitation low energy 0.1 MeV +Pre-compound excitation high energy 15 MeV +Angular generator for pre-compound model 1 +Use NeverGoBack option for pre-compound model 0 +Use SoftCutOff option for pre-compound model 0 +Use CEM transitions for pre-compound model 1 +Use GNASH transitions for pre-compound model 0 +Use HETC submodel for pre-compound model 0 +======================================================================= +====== Nuclear De-excitation Module Parameters ======== +======================================================================= +Type of de-excitation inverse x-section 3 +Type of de-excitation factory Evaporation+GEM +Number of de-excitation channels 68 +Type of Fermi BreakUp model ModelVI +Min excitation energy 0.01 keV +Min energy per nucleon for multifragmentation 2e+05 MeV +Level density (1/MeV) 0.075 +Use simple level density model 1 +Use discrete excitation energy of the residual 0 +Time limit for long lived isomeres 1 ns +Isomer production flag 1 +Internal e- conversion flag 1 +Store e- internal conversion data 1 +Correlated gamma emission flag 0 +Max 2J for sampling of angular correlations 10 +======================================================================= +[INFO] *** FairBaseParSet written to ROOT file version: 1 +[INFO] *** FairGeoParSet written to ROOT file version: 1 +['tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten'] [4.5, 1.8, 1.7, 1.7, 1.8, 1.9, 2.1, 1.9, 2.1, 2.4, 2.8, 3.3, 4.1, 5.6, 8.8, 17.2, 28.7, 28.8, 28.8] [0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.48, 0.5, 0.68, 0.68, 0] +Calling addVMCFields + +Macro finished successfully. +Output file is ./sim_particle_gun_io.root +Parameter file is ./params_particle_gun_io.root +Geometry file is ./geo_particle_gun_io.root +======================================================================== +Simulation finished successfully +======================================================================== diff --git a/tests/fairship_tests/references/pythia8-summary.txt b/tests/fairship_tests/references/pythia8-summary.txt new file mode 100644 index 0000000000..f469c68bff --- /dev/null +++ b/tests/fairship_tests/references/pythia8-summary.txt @@ -0,0 +1,785 @@ + + *------------------------------------------------------------------------------------* + | | + | *------------------------------------------------------------------------------* | + | | | | + | | | | + | | PPP Y Y TTTTT H H III A Welcome to the Lund Monte Carlo! | | + | | P P Y Y T H H I A A This is PYTHIA version 8.312 | | + | | PPP Y T HHHHH I AAAAA Last date of change: 23 May 2024 | | + | | P Y T H H I A A | | + | | | | + | | Program documentation and an archive of historic versions is found on: | | + | | | | + | | https://pythia.org/ | | + | | | | + | | PYTHIA is authored by a collaboration consisting of: | | + | | | | + | | Javira Altmann, Christian Bierlich, Naomi Cooke, Nishita Desai, | | + | | Leif Gellersen, Ilkka Helenius, Philip Ilten, Leif Lonnblad, | | + | | Stephen Mrenna, Christian Preuss, Torbjorn Sjostrand, Peter Skands, | | + | | Marius Utheim, and Rob Verheyen. | | + | | | | + | | The complete list of authors, including contact information and | | + | | affiliations, can be found on https://pythia.org/. | | + | | Problems or bugs should be reported on email at authors@pythia.org. | | + | | | | + | | The main program reference is C. Bierlich et al, | | + | | 'A comprehensive guide to the physics and usage of Pythia 8.3', | | + | | SciPost Phys. Codebases 8-r8.3 (2022) [arXiv:2203.11601 [hep-ph]] | | + | | | | + | | PYTHIA is released under the GNU General Public Licence version 2 or later.| | + | | Please respect the MCnet Guidelines for Event Generator Authors and Users. | | + | | | | + | | Disclaimer: this program comes without any guarantees. | | + | | Beware of errors and use common sense when interpreting results. | | + | | | | + | | Copyright (C) 2024 Torbjorn Sjostrand | | + | | | | + | | | | + | *------------------------------------------------------------------------------* | + | | + *------------------------------------------------------------------------------------* + + + -------- PYTHIA Particle Data Table (partial) ----------------------------------------------------------------------------------- + + id name antiName spn chg col m0 mWidth mMin mMax tau0 res dec ext vis wid + no onMode bRatio meMode products + + 9900015 N2 N2 2 0 0 1.00000 0.00000 0.00000 0.00000 6.44394e+07 0 1 0 1 0 + 0 1 0.0941122 0 211 13 + 1 1 0.0941122 0 -211 -13 + + -------- End PYTHIA Particle Data Table ----------------------------------------------------------------------------------------- + +[INFO] FairRootFileSink initialized. +[INFO] - cbmroot +[INFO] - ./sim_pythia8_summary.root +[INFO] ============== FairRunSim: Initialising simulation run ============== +Info in : Geometry FAIRGeom, FAIR geometry created +[INFO] FairGeoMedia: Read media + +************************************************************* +************************************************************* +[WARN] FairGenericVMCConfig::Setup() Using gConfig.C macro DEPRACATED. +[WARN] Check FairRoot/examples/common/gconfig/ for current YAML implementation. +[INFO] ---------------User config is used: g4Config.C + +============================================================= + Virtual Monte Carlo Library + Version 2.2 ( 22 April 2026 ) +============================================================= + +============================================================= + Geant4 Virtual Monte Carlo + Version 6.8 ( 2 February 2026 ) + WWW : http://root.cern.ch/drupal/content/geant4-vmc +============================================================= + +Running TVirtualMCApplication::ConstructGeometry +Info in : Top volume is cave. Master volume is cave +Info in : --- Maximum geometry depth set to 100 +[INFO] -- Target cooler: PressurisedHe90 T=363.15 K, P=9.98641e+09 MeV/mm3, Density=0.002121 +[INFO] veto: Decay Volume medium set as: helium +Info in : Automatic visible depth disabled + Z Position (Upstream Tagger1) 3272.0000000 +Info in : Fixing runtime shapes... +Info in : ...Nothing to fix +Info in : Counting nodes... +Info in : Voxelizing... +Info in : Building cache... +Info in : max level = 5, max placements = 14153 +Info in : 46607 nodes/ 695 volume UID's in FAIR geometry +Info in : ----------------modeler ready---------------- +[INFO] TGeometry will be imported to VMC + +Info in : TG4RootNavigator created and registered to G4TransportationManager +isMaster=1 + +************************************************************** + Geant4 version Name: geant4-11-04-patch-02 [MT] (12-June-2026) + Copyright : Geant4 Collaboration + References : NIM A 506 (2003), 250-303 + : IEEE-TNS 53 (2006), 270-278 + : NIM A 835 (2016), 186-225 + WWW : http://geant4.org/ +************************************************************** + +Info in : Creating G4 hierarchy ... +Info in : Converting reflections in: FAIRGeom - FAIR geometry ... +Info in : Done +===> GEANT4 materials created and mapped to TGeo ones... +===> GEANT4 physical volumes created and mapped to TGeo hierarchy... +### INFO: TG4RootDetectorConstruction::Construct() finished +TG4PostDetConstruction::Initialize +G4 Stat: instantiated 701 logical volumes + 46126 physical volumes +Info in : ROOT detector construction class connected to G4RunManager +Adding HadronPhysicsList FTFP_BERT_HP_EMZ +G4PhysListFactory::GetReferencePhysList +<<< Geant4 Physics List simulation engine: FTFP_BERT_HP + +G4VModularPhysicsList::ReplacePhysics: G4EmStandard with type : 2 is replaced with G4EmStandard_opt4 + +Adding SpecialPhysicsList stepLimiter+specialCuts+ +### TG4SpecialControlsV2 constructed +Visualization Manager instantiating with verbosity "warnings (3)"... +SetCuts Macro: Setting Processes.. +SetCuts Macro: Setting cuts.. +TG4RootDetectorConstruction::ConstructSDandField +TG4PostDetConstruction::InitializeSDandField +[INFO] FairMCApplication::InitGeometry: 0 +[INFO] CREATING BRANCH MCTrack +[INFO] CREATING BRANCH TimeDetPoint +[INFO] CREATING BRANCH UpstreamTaggerPoint +[INFO] CREATING BRANCH splitcalPoint +[INFO] CREATING BRANCH strawtubesPoint +[INFO] CREATING BRANCH vetoPoint +Global field created with stepper DormandPrince745 +### INFO: TG4RootDetectorConstruction::ConstructSDandField finished + + hInelastic FTFP_BERT_HP : threshold between BERT and FTFP is over the interval + for pions : 3 to 6 GeV + for kaons : 3 to 6 GeV + for proton : 3 to 6 GeV + for neutron : 3 to 6 GeV + +TG4ComposedPhysicsList::ConstructProcess done +Available UI session types: [ Qt, tcsh, csh ] +[INFO] Open external file with charm or beauty hadrons: $FAIRSHIP/files/Cascade-parp16-MSTP82-1-MSEL4-76Mpot_1_5000.root + + *------- PYTHIA Flag + Mode + Parm + Word + FVec + MVec + PVec + WVec Settings (changes only) ------------------* + | | + | Name | Now | Default Min Max | + | | | | + | HardQCD:hardccbar | on | off | + | Next:numberCount | 0 | 1000 0 | + | ProcessLevel:all | off | on | + | | + *------- End PYTHIA Flag + Mode + Parm + Word + FVec + MVec + PVec + WVec Settings -----------------------------* + + -------- PYTHIA Particle Data Table (changed only) ------------------------------------------------------------------------------ + + id name antiName spn chg col m0 mWidth mMin mMax tau0 res dec ext vis wid + no onMode bRatio meMode products + + 13 mu- mu+ 2 -3 0 0.10566 0.00000 0.10566 0.10566 6.58654e+05 0 0 0 1 0 + 0 1 1.0000000 22 -12 11 14 + + 15 tau- tau+ 2 -3 0 1.77682 0.00000 1.77682 1.77682 8.71100e-02 0 1 0 1 0 + 0 1 0.2437410 1521 9900015 -211 + 1 1 0.0114128 1521 9900015 -321 + 2 1 0.0504430 1521 9900015 -213 + 3 1 0.1236891 1531 9900015 11 -12 + 4 1 0.0294090 1531 9900015 11 16 + 5 1 0.1126970 1531 9900015 13 -14 + 6 1 0.4286081 1531 9900015 13 16 + + 130 K_L0 1 0 0 0.49761 0.00000 0.49761 0.49761 1.53300e+04 0 0 0 1 0 + 0 1 0.1952278 0 111 111 111 + 1 1 0.1254178 0 211 -211 111 + 2 1 0.2027688 22 -12 11 211 + 3 1 0.2027688 22 12 -11 -211 + 4 1 0.1352191 22 -14 13 211 + 5 1 0.1352191 22 14 -13 -211 + 6 1 0.0019673 0 211 -211 + 7 1 0.0008641 0 111 111 + 8 1 0.0005471 0 22 22 + + 211 pi+ pi- 1 3 0 0.13957 0.00000 0.13957 0.13957 7.80450e+03 0 0 0 1 0 + 0 1 0.9998770 0 -13 14 + 1 1 0.0001230 0 -11 12 + + 310 K_S0 1 0 0 0.49761 0.00000 0.49761 0.49761 2.68420e+01 0 0 0 1 0 + 0 1 0.6922420 0 211 -211 + 1 1 0.3070073 0 111 111 + 2 1 0.0000479 12 211 -211 11 -11 + 3 1 0.0003501 22 -12 11 211 + 4 1 0.0003501 22 12 -11 -211 + 5 1 0.0000026 0 22 22 + + 321 K+ K- 1 3 0 0.49368 0.00000 0.49368 0.49368 3.71300e+03 0 0 0 1 0 + 0 1 0.6355250 0 -13 14 + 1 1 0.0000158 0 -11 12 + 2 1 0.2066081 0 211 111 + 3 1 0.0559022 0 211 211 -211 + 4 1 0.0176107 0 211 111 111 + 5 1 0.0507020 22 12 -11 111 + 6 1 0.0335313 22 14 -13 111 + 7 1 0.0000220 0 -11 12 111 111 + 8 1 0.0000409 0 -11 12 211 -211 + 9 1 0.0000140 0 -13 14 111 111 + 10 1 0.0000280 0 -13 14 211 -211 + + 411 D+ D- 1 3 0 1.86962 0.00000 1.86962 1.86962 3.11800e-01 0 1 0 1 0 + 0 1 0.0601713 0 9900015 -13 + 1 1 0.0037016 0 9900015 -11 + 2 1 0.0010810 22 -11 9900015 -311 + 3 1 0.0142622 22 -13 9900015 -311 + 4 1 0.9207840 0 22 -11 + + 421 D0 Dbar0 1 0 0 1.86486 0.00000 1.86486 1.86486 1.22900e-01 0 1 0 1 0 + 0 1 0.0004213 22 -11 9900015 -321 + 1 1 0.0055549 22 -13 9900015 -321 + 2 1 0.9940237 0 22 22 + + 431 D_s+ D_s- 1 3 0 1.96849 0.00000 1.96849 1.96849 1.49900e-01 0 1 0 1 0 + 0 1 0.9280184 0 9900015 -13 + 1 1 0.0571025 0 9900015 -11 + 2 1 0.0005520 22 -11 9900015 221 + 3 1 0.0077723 22 -13 9900015 221 + 4 1 0.0065547 0 -15 16 + + 2112 n0 nbar0 2 0 0 0.93957 0.00000 0.93957 0.93957 2.65500e+14 0 0 0 1 0 + 0 1 1.0000000 22 -12 11 2212 + + 3112 Sigma- Sigmabar+ 2 -3 0 1.19745 0.00000 1.19745 1.19745 4.43400e+01 0 0 0 1 0 + 0 1 0.9984757 0 2112 -211 + 1 1 0.0010170 22 -12 11 2112 + 2 1 0.0004500 22 -14 13 2112 + 3 1 0.0000573 22 -12 11 3122 + + 3122 Lambda0 Lambdabar0 2 0 0 1.11568 0.00000 1.11568 1.11568 7.89000e+01 0 0 0 1 0 + 0 1 0.6391668 0 2212 -211 + 1 1 0.3580935 0 2112 111 + 2 1 0.0017505 0 2112 22 + 3 1 0.0008322 22 -12 11 2212 + 4 1 0.0001570 22 -14 13 2212 + + 3222 Sigma+ Sigmabar- 2 3 0 1.18937 0.00000 1.18937 1.18937 2.40400e+01 0 0 0 1 0 + 0 1 0.5156743 0 2212 111 + 1 1 0.4830758 0 2112 211 + 2 1 0.0012299 0 2212 22 + 3 1 0.0000200 22 -11 12 3122 + + 3312 Xi- Xibar+ 2 -3 0 1.32171 0.00000 1.32171 1.32171 4.91000e+01 0 0 0 1 0 + 0 1 0.9988730 0 3122 -211 + 1 1 0.0001270 0 3112 22 + 2 1 0.0005630 22 -12 11 3122 + 3 1 0.0003500 22 -14 13 3122 + 4 1 0.0000870 22 -12 11 3212 + + 3322 Xi0 Xibar0 2 0 0 1.31486 0.00000 1.31486 1.31486 8.71000e+01 0 0 0 1 0 + 0 1 0.9952424 0 3122 111 + 1 1 0.0011700 0 3122 22 + 2 1 0.0033300 0 3212 22 + 3 1 0.0002530 22 -12 11 3222 + 4 1 0.0000046 22 -14 13 3222 + + 3334 Omega- Omegabar+ 4 -3 0 1.67245 0.00000 1.67245 1.67245 2.46100e+01 0 0 0 1 0 + 0 1 0.6737955 0 3122 -321 + 1 1 0.2345365 0 3322 -211 + 2 1 0.0854667 0 3312 111 + 3 1 0.0006360 0 3324 -211 + 4 1 0.0055653 22 -12 11 3322 + + 4122 Lambda_c+ Lambda_cbar- 2 3 0 2.28646 0.00000 2.28646 2.28646 5.99000e-02 0 1 0 1 0 + 0 1 0.0000252 22 -11 9900015 3122 + 1 1 0.0001428 22 -13 9900015 3122 + 2 1 0.9998321 0 22 -11 + + 4132 Xi_c0 Xi_cbar0 2 0 0 2.47088 0.00000 2.47088 2.47088 3.36000e-02 0 1 0 1 0 + 0 1 0.0000050 22 -11 9900015 -3312 + 1 1 0.0000361 22 -13 9900015 -3312 + 2 1 0.9999590 0 22 22 + + 9900015 N2 N2 2 0 0 1.00000 0.00000 1.00000 1.00000 6.44394e+07 0 1 0 1 0 + 0 1 0.0941122 0 211 13 + 1 1 0.0941122 0 -211 -13 + + -------- End PYTHIA Particle Data Table ----------------------------------------------------------------------------------------- + + +********************************************** + GEANT4 Geometry statistics: + 701 logical volumes + 46126 physical volumes + 22 materials + 20 user limits + 694 sensitive detectors +********************************************** + +[INFO] Monte Carlo Engine Initialisation with: TGeant4 +[INFO] FairGenericVMCConfig::SetupPostInit() OFF. +[INFO] x limits: -500, 500, dx = 10 +[INFO] y limits: -500, 500, dy = 10 +[INFO] z limits: -750, 750, dz = 10 +[INFO] Offsets: x = 0, y = 0, z = 8957 +[INFO] Angles : phi = 0, theta = 0, psi = 0 +[INFO] Total number of bins = 1540351; Nx = 101, Ny = 101, Nz = 151 +[INFO] x limits: 0, 219.922, dx = 1.99929 +[INFO] y limits: 0, 217.969, dy = 1.99971 +[INFO] z limits: -50, 3075, dz = 5 +[INFO] Offsets: x = 0, y = 0, z = 204 +[INFO] Angles : phi = 0, theta = 0, psi = 0 +[INFO] Total number of bins = 7643460; Nx = 111, Ny = 110, Nz = 626 +Adding field MainSpecMap +Adding field muonShieldField +Setting the Global field +Adding field TotalField to Global +[INFO] FairMCApplication::InitGeometry: 0 + G4ChordFinder: stepperDriverId: 2 + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomFieldParameters0001 + issued by : G4FieldBuilder::ConstructField: +Field was already constructed. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +GammaToMuPair: gamma->mu+mu- Bethe Heitler process, SubType= 15 + good cross section parametrization from 211.317 MeV to 1e+12 GeV for all Z. + cross section factor: 1 + +AnnihiToMuPair: e+e->mu+mu- annihilation, atomic e- at rest, SubType=6 + threshold at 43.6931 GeV good description up to 1000 TeV for all Z. + +AnnihiToTauPair: e+e->tau+tau- annihilation, atomic e- at rest, SubType=18 + threshold at 12357.1 GeV good description up to 1000 TeV for all Z. +====================================================================== +====== Radioactive Decay Physics Parameters ======= +====================================================================== +min MeanLife (from G4NuclideTable) 1 ns +Max life time (from G4DeexPrecoParameters) 1000 ps +Internal e- conversion flag 1 +Stored internal conversion coefficients 1 +Enabled atomic relaxation mode 1 +Enable correlated gamma emission 0 +Max 2J for sampling of angular correlations 10 +Atomic de-excitation enabled 1 +Auger electron emission enabled 1 +Check EM cuts disabled for atomic de-excitation 1 +Use Bearden atomic level energies 0 +Use ANSTO fluorescence model 0 +Threshold for very long decay time at rest 1 y +====================================================================== + +======================================================= +====== ParticleHP Physics Parameters ======== +======================================================= + Use only photo-evaporation 0 + Skip missing isotopes 0 + Neglect Doppler 0 + Do not adjust final state 0 + Produce fission fragments 0 + Use WendtFissionModel 0 + Use NRESP71Model 0 + Use DBRC 0 + PHP use Poisson 0 + PHP check 1 + CHECK HP NAMES 0 + Enable DEBUG 0 + Use probability tables from +======================================================= + + +==================================================================== + HADRONIC PROCESSES SUMMARY (verbose level 1) +----------------------------------------------------------------------- + Hadronic Processes for B- + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for D- + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for GenericIon + Process: ionInelastic + Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n + Model: FTFP: 3 GeV/n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: RadioactiveDecay +----------------------------------------------------------------------- + Hadronic Processes for He3 + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: He3Inelastic + Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n + Model: FTFP: 3 GeV/n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV +----------------------------------------------------------------------- + Hadronic Processes for alpha + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: alphaInelastic + Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n + Model: FTFP: 3 GeV/n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV +----------------------------------------------------------------------- + Hadronic Processes for anti_He3 + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n + Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_He3Inelastic + Model: FTFP: 0 eV /n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_alpha + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n + Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_alphaInelastic + Model: FTFP: 0 eV /n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_deuteron + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n + Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_deuteronInelastic + Model: FTFP: 0 eV /n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +------------------------------------------------------------------------- + Hadronic Processes for anti_hypertriton + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_lambda + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_neutron + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100.1 MeV + Model: AntiAElastic: 100 MeV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_neutronInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_proton + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100.1 MeV + Model: AntiAElastic: 100 MeV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_protonInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_triton + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n + Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_tritonInelastic + Model: FTFP: 0 eV /n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for deuteron + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: dInelastic + Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n + Model: FTFP: 3 GeV/n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV +----------------------------------------------------------------------- + Hadronic Processes for e+ + Process: positronNuclear + Model: G4ElectroVDNuclearModel: 0 eV ---> 1 PeV + Cr_sctns: ElectroNuclearXS: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for e- + Process: electronNuclear + Model: G4ElectroVDNuclearModel: 0 eV ---> 1 PeV + Cr_sctns: ElectroNuclearXS: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for kaon+ + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: kaon+Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for kaon- + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: kaon-Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: hBertiniCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for lambda + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: lambdaInelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for mu+ + Process: muonNuclear + Model: G4MuonVDNuclearModel: 0 eV ---> 1 PeV + Cr_sctns: KokoulinMuonNuclearXS: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for mu- + Process: muonNuclear + Model: G4MuonVDNuclearModel: 0 eV ---> 1 PeV + Cr_sctns: KokoulinMuonNuclearXS: 0 eV ---> 100 TeV + Process: muMinusCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for neutron + Process: hadElastic + Model: hElasticCHIPS: 19.5 MeV ---> 100 TeV + Model: NeutronHPElastic: 0 eV ---> 20 MeV + Cr_sctns: NeutronHPElasticXS: 0 eV ---> 20 MeV + Cr_sctns: G4NeutronElasticXS: 0 eV ---> 100 TeV + Process: neutronInelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 19.9 MeV ---> 6 GeV + Model: NeutronHPInelastic: 0 eV ---> 20 MeV + Cr_sctns: NeutronHPInelasticXS: 0 eV ---> 20 MeV + Cr_sctns: G4NeutronInelasticXS: 0 eV ---> 100 TeV + Process: nCapture + Model: nRadCaptureHP: 0 eV ---> 20 MeV + Model: nRadCapture: 19.9 MeV ---> 100 TeV + Cr_sctns: NeutronHPCaptureXS: 0 eV ---> 100 TeV + Cr_sctns: G4NeutronCaptureXS: 0 eV ---> 100 TeV + Process: nFission + Model: NeutronHPFission: 0 eV ---> 20 MeV + Model: G4LFission: 19.9 MeV ---> 100 TeV + Cr_sctns: NeutronHPFissionXS: 0 eV ---> 20 MeV + Cr_sctns: ZeroXS: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for pi+ + Process: hadElastic + Model: hElasticGlauber: 0 eV ---> 100 TeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV + Process: pi+Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for pi- + Process: hadElastic + Model: hElasticGlauber: 0 eV ---> 100 TeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV + Process: pi-Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV + Process: hBertiniCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for proton + Process: hadElastic + Model: hElasticCHIPS: 0 eV ---> 100 TeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV + Process: protonInelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for sigma- + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: sigma-Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: hBertiniCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for triton + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: tInelastic + Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n + Model: FTFP: 3 GeV/n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: RadioactiveDecay +======================================================================= +====== Geant4 Native Pre-compound Model Parameters ======== +======================================================================= +Type of pre-compound model 0 +Type of pre-compound inverse x-section 1 +Pre-compound model active 1 +Pre-compound excitation low energy 0.1 MeV +Pre-compound excitation high energy 15 MeV +Angular generator for pre-compound model 1 +Use NeverGoBack option for pre-compound model 0 +Use SoftCutOff option for pre-compound model 0 +Use CEM transitions for pre-compound model 1 +Use GNASH transitions for pre-compound model 0 +Use HETC submodel for pre-compound model 0 +======================================================================= +====== Nuclear De-excitation Module Parameters ======== +======================================================================= +Type of de-excitation inverse x-section 3 +Type of de-excitation factory Evaporation+GEM +Number of de-excitation channels 68 +Type of Fermi BreakUp model ModelVI +Min excitation energy 0.01 keV +Min energy per nucleon for multifragmentation 2e+05 MeV +Level density (1/MeV) 0.075 +Use simple level density model 1 +Use discrete excitation energy of the residual 0 +Time limit for long lived isomeres 1 ns +Isomer production flag 1 +Internal e- conversion flag 1 +Store e- internal conversion data 1 +Correlated gamma emission flag 0 +Max 2J for sampling of angular correlations 10 +======================================================================= + PYTHIA Warning in Pythia::check: not quite matched particle energy/momentum/mass + + -------- PYTHIA Event Listing (complete event) --------------------------------------------------------------------------------- + + no id name status mothers daughters colours p_x p_y p_z e m + 0 90 (system) -11 0 0 0 0 0 0 0.233 1.128 50.285 50.333 1.869 + 1 411 D+ 1 0 0 0 0 0 0 0.233 1.128 50.285 50.333 1.869 + Charge sum: 1.000 Momentum sum: 0.233 1.128 50.285 50.333 1.869 + + -------- End PYTHIA Event Listing ----------------------------------------------------------------------------------------------- + + -------- PYTHIA Event Listing (complete event) --------------------------------------------------------------------------------- + + no id name status mothers daughters colours p_x p_y p_z e m + 0 90 (system) -11 0 0 0 0 0 0 0.233 1.128 50.285 50.333 1.869 + 1 411 (D+) -1 0 0 2 3 0 0 0.233 1.128 50.285 50.333 1.869 + 2 22 gamma 91 1 0 0 0 0 0 0.383 1.429 48.051 48.074 0.000 + 3 -11 e+ 91 1 0 0 0 0 0 -0.150 -0.301 2.234 2.259 0.001 + Charge sum: 1.000 Momentum sum: 0.233 1.128 50.285 50.333 1.869 + + -------- End PYTHIA Event Listing ----------------------------------------------------------------------------------------------- +[INFO] ship event 0 / pythia event-nr 41 + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : part0005 + issued by : G4PrimaryParticle::Set4Momentum +Primary particle PDG=-13 deltaMass(MeV)=1.64106 is larger than the tolerance(MeV)=1 + Specified mass(MeV)=104.017 while PDG mass(MEV)=105.658 + To change the tolerance or the exception severity, use G4PrimaryTransformer::SetKETolerance() method. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : part0005 + issued by : G4PrimaryParticle::Set4Momentum +Primary particle PDG=211 deltaMass(MeV)=1.76146 is larger than the tolerance(MeV)=1 + Specified mass(MeV)=141.332 while PDG mass(MEV)=139.57 + To change the tolerance or the exception severity, use G4PrimaryTransformer::SetKETolerance() method. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : part0005 + issued by : G4PrimaryParticle::Set4Momentum +Primary particle PDG=-211 deltaMass(MeV)=7.61907 is larger than the tolerance(MeV)=1 + Specified mass(MeV)=147.189 while PDG mass(MEV)=139.57 + To change the tolerance or the exception severity, use G4PrimaryTransformer::SetKETolerance() method. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : part0005 + issued by : G4PrimaryParticle::Set4Momentum +Primary particle PDG=-13 deltaMass(MeV)=1.11581 is larger than the tolerance(MeV)=1 + Specified mass(MeV)=104.543 while PDG mass(MEV)=105.658 + To change the tolerance or the exception severity, use G4PrimaryTransformer::SetKETolerance() method. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +[INFO] *** FairBaseParSet written to ROOT file version: 1 +[INFO] *** FairGeoParSet written to ROOT file version: 1 +['tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten'] [4.5, 1.8, 1.7, 1.7, 1.8, 1.9, 2.1, 1.9, 2.1, 2.4, 2.8, 3.3, 4.1, 5.6, 8.8, 17.2, 28.7, 28.8, 28.8] [0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.48, 0.5, 0.68, 0.68, 0] +Generating HNL events of mass 1.000 GeV +and with couplings= [4.47e-10, 7.15e-09, 1.88e-09] +Pythia8 configuration: Made mu- stable for Pythia, should decay in Geant4 +Pythia8 configuration: Made K_L0 stable for Pythia, should decay in Geant4 +Pythia8 configuration: Made pi+ stable for Pythia, should decay in Geant4 +Pythia8 configuration: Made K_S0 stable for Pythia, should decay in Geant4 +Pythia8 configuration: Made K+ stable for Pythia, should decay in Geant4 +Pythia8 configuration: Made n0 stable for Pythia, should decay in Geant4 +Pythia8 configuration: Made Sigma- stable for Pythia, should decay in Geant4 +Pythia8 configuration: Made Lambda0 stable for Pythia, should decay in Geant4 +Pythia8 configuration: Made Sigma+ stable for Pythia, should decay in Geant4 +Pythia8 configuration: Made Xi- stable for Pythia, should decay in Geant4 +Pythia8 configuration: Made Xi0 stable for Pythia, should decay in Geant4 +Pythia8 configuration: Made Omega- stable for Pythia, should decay in Geant4 +HNLbranchings instance initialized with couplings: + U2e = 4.47e-10 + U2mu = 7.15e-09 + U2tau = 1.88e-09 +and mass: + m = 1.0 GeV +HNL ctau 6443943.553548283 +One simulated event per 4.671e+08 meson decays +Calling addVMCFields + +Macro finished successfully. +number of retries (no HNL produced) 2566 +number of geometric rejections (outside vessel acceptance) 183 +Output file is ./sim_pythia8_summary.root +Parameter file is ./params_pythia8_summary.root +Geometry file is ./geo_pythia8_summary.root +======================================================================== +Simulation finished successfully +======================================================================== + +[Generator Validation] + HNL retries : 2566 + Geometry rejections : 183 + HNL candidates : 283 + Accepted HNL candidates : 100 + Multi-HNL tries : 0 + Stored decay products : 200 + +[Tree Validation] + Requested events : 100 + Final cbmsim entries : 100 + Kept fraction : 100.00% + Branches in cbmsim : 7 + ROOT objects : 5 + Countable branches : 5 + +[MCTrack Validation] + Total tracks : 14461 + Primary tracks : 100 + Secondary tracks : 14361 + Tracks per event : 144.6 + Track momentum : 3.933 +- 30.09 [min=0.01149, max=400] + Track energy : 4.03 +- 30.09 [min=0.1, max=400] + Track start Z : 1.05e+04 +- 2700 [min=0, max=1.603e+04] + Top PDG counts : 22:4213, 11:2677, -11:2044, 2112:1320, 2212:1244, 211:766, 111:762, -211:678, -13:119, 9900015:100 + +[Branch Multiplicity] + MCTrack : total=14461, mean/event=144.6 +- 149.6, active=100/100 (100.0%), max=1088 + TimeDetPoint : total=518, mean/event=5.18 +- 7.361, active=90/100 ( 90.0%), max=48 + splitcalPoint : total=71203, mean/event=712 +- 1141, active=90/100 ( 90.0%), max=6110 + strawtubesPoint : total=5750, mean/event=57.5 +- 40.85, active=94/100 ( 94.0%), max=296 + vetoPoint : total=15801, mean/event=158 +- 347.2, active=51/100 ( 51.0%), max=2437 diff --git a/tests/fairship_tests/references/reconstruction.txt b/tests/fairship_tests/references/reconstruction.txt new file mode 100644 index 0000000000..866f5f0934 --- /dev/null +++ b/tests/fairship_tests/references/reconstruction.txt @@ -0,0 +1,97 @@ +Info in : Geometry loaded from file... +Info in : Top volume is cave. Master volume is cave +Info in : --- Maximum geometry depth set to 100 +Info in : Voxelizing... +Info in : max level = 5, max placements = 14153 +Info in : 46607 nodes/ 695 volume UID's in FAIR geometry +Info in : ----------------modeler ready---------------- +[INFO] x limits: -500, 500, dx = 10 +[INFO] y limits: -500, 500, dy = 10 +[INFO] z limits: -750, 750, dz = 10 +[INFO] Offsets: x = 0, y = 0, z = 8957 +[INFO] Angles : phi = 0, theta = 0, psi = 0 +[INFO] Total number of bins = 1540351; Nx = 101, Ny = 101, Nz = 151 +[INFO] x limits: 0, 219.922, dx = 1.99929 +[INFO] y limits: 0, 217.969, dy = 1.99971 +[INFO] z limits: -50, 3075, dz = 5 +[INFO] Offsets: x = 0, y = 0, z = 204 +[INFO] Angles : phi = 0, theta = 0, psi = 0 +[INFO] Total number of bins = 7643460; Nx = 111, Ny = 110, Nz = 626 +Adding field MainSpecMap +Adding field muonShieldField +Setting the Global field +Adding field TotalField to Global +The virtual MC pointer gMC is null! The global field can't be used by Geant4 but will work for track fitting and track extrapolation +configured to process 999999 events from sim_muonback_io.root starting with event 0 with option Yheight = None with vertexing True and pattern reco AR +Calling addVMCFields +event 0 +save tracklets: +event 1 +save tracklets: +event 2 +save tracklets: +event 3 +save tracklets: +event 4 +save tracklets: +event 5 +save tracklets: +event 6 +save tracklets: +event 7 +save tracklets: +event 8 +save tracklets: +event 9 +save tracklets: +event 10 +save tracklets: +event 11 +save tracklets: +event 12 +save tracklets: +event 13 +save tracklets: +event 14 +save tracklets: +event 15 +save tracklets: +event 16 +save tracklets: +event 17 +save tracklets: +event 18 +save tracklets: +event 19 +save tracklets: +event 20 +save tracklets: +event 21 +save tracklets: +event 22 +save tracklets: +event 23 +save tracklets: +event 24 +save tracklets: +event 25 +save tracklets: +event 26 +save tracklets: +event 27 +save tracklets: +event 28 +save tracklets: +event 29 +save tracklets: +event 30 +save tracklets: +event 31 +save tracklets: +event 32 +save tracklets: +event 33 +save tracklets: +event 34 +save tracklets: +finished writing tree diff --git a/tests/fairship_tests/references/tracking-benchmark.txt b/tests/fairship_tests/references/tracking-benchmark.txt new file mode 100644 index 0000000000..b1bad9e96b --- /dev/null +++ b/tests/fairship_tests/references/tracking-benchmark.txt @@ -0,0 +1,544 @@ +[INFO] ParticleGunGenerator: vertex model uniform (Uniform(X), Uniform(Y), Point(Z)) +[INFO] FairRootFileSink initialized. +[INFO] - cbmroot +[INFO] ============== FairRunSim: Initialising simulation run ============== +Info in : Geometry FAIRGeom, FAIR geometry created +[INFO] FairGeoMedia: Read media + +************************************************************* +************************************************************* +[WARN] FairGenericVMCConfig::Setup() Using gConfig.C macro DEPRACATED. +[WARN] Check FairRoot/examples/common/gconfig/ for current YAML implementation. +[INFO] ---------------User config is used: g4Config.C + +============================================================= + Virtual Monte Carlo Library + Version 2.2 ( 22 April 2026 ) +============================================================= + +============================================================= + Geant4 Virtual Monte Carlo + Version 6.8 ( 2 February 2026 ) + WWW : http://root.cern.ch/drupal/content/geant4-vmc +============================================================= + +Running TVirtualMCApplication::ConstructGeometry +Info in : Top volume is cave. Master volume is cave +Info in : --- Maximum geometry depth set to 100 +[INFO] -- Target cooler: PressurisedHe90 T=363.15 K, P=9.98641e+09 MeV/mm3, Density=0.002121 +[INFO] Fiber length set to 60.2272 cm +[INFO] veto: Decay Volume medium set as: vacuums +Info in : Automatic visible depth disabled + Z Position (Upstream Tagger1) 3272 +Info in : Fixing runtime shapes... +Info in : ...Nothing to fix +Info in : Counting nodes... +Info in : Voxelizing... +Info in : Building cache... +Info in : max level = 5, max placements = 14153 +Info in : 3730429 nodes/ 721 volume UID's in FAIR geometry +Info in : ----------------modeler ready---------------- +[INFO] TGeometry will be imported to VMC + +Info in : TG4RootNavigator created and registered to G4TransportationManager +isMaster=1 + +************************************************************** + Geant4 version Name: geant4-11-04-patch-02 [MT] (12-June-2026) + Copyright : Geant4 Collaboration + References : NIM A 506 (2003), 250-303 + : IEEE-TNS 53 (2006), 270-278 + : NIM A 835 (2016), 186-225 + WWW : http://geant4.org/ +************************************************************** + +Info in : Creating G4 hierarchy ... +Info in : Converting reflections in: FAIRGeom - FAIR geometry ... +Info in : Done +===> GEANT4 materials created and mapped to TGeo ones... +===> GEANT4 physical volumes created and mapped to TGeo hierarchy... +### INFO: TG4RootDetectorConstruction::Construct() finished +TG4PostDetConstruction::Initialize +G4 Stat: instantiated 1316 logical volumes + 230804 physical volumes +Info in : ROOT detector construction class connected to G4RunManager +Adding HadronPhysicsList FTFP_BERT_HP_EMZ +G4PhysListFactory::GetReferencePhysList +<<< Geant4 Physics List simulation engine: FTFP_BERT_HP + +G4VModularPhysicsList::ReplacePhysics: G4EmStandard with type : 2 is replaced with G4EmStandard_opt4 + +Adding SpecialPhysicsList stepLimiter+specialCuts+ +### TG4SpecialControlsV2 constructed +Visualization Manager instantiating with verbosity "warnings (3)"... +SetCuts Macro: Setting Processes.. +SetCuts Macro: Setting cuts.. +TG4RootDetectorConstruction::ConstructSDandField +TG4PostDetConstruction::InitializeSDandField +[INFO] FairMCApplication::InitGeometry: 0 +[INFO] CREATING BRANCH MCTrack +[INFO] CREATING BRANCH MTCDetPoint +[INFO] CREATING BRANCH SiliconTargetPoint +[INFO] CREATING BRANCH TimeDetPoint +[INFO] CREATING BRANCH UpstreamTaggerPoint +[INFO] CREATING BRANCH splitcalPoint +[INFO] CREATING BRANCH strawtubesPoint +[INFO] CREATING BRANCH vetoPoint +Global field created with stepper DormandPrince745 +Local (in MTC_iron) field created with stepper DormandPrince745 + G4ChordFinder: stepperDriverId: 2 +### INFO: TG4RootDetectorConstruction::ConstructSDandField finished + + hInelastic FTFP_BERT_HP : threshold between BERT and FTFP is over the interval + for pions : 3 to 6 GeV + for kaons : 3 to 6 GeV + for proton : 3 to 6 GeV + for neutron : 3 to 6 GeV + +TG4ComposedPhysicsList::ConstructProcess done +Available UI session types: [ Qt, tcsh, csh ] +[INFO] FairGenerator: particle with PDG =13 Found + +********************************************** + GEANT4 Geometry statistics: + 1316 logical volumes + 230804 physical volumes + 26 materials + 23 user limits + 712 sensitive detectors +********************************************** + +[INFO] Monte Carlo Engine Initialisation with: TGeant4 +[INFO] FairGenericVMCConfig::SetupPostInit() OFF. +[INFO] x limits: -500, 500, dx = 10 +[INFO] y limits: -500, 500, dy = 10 +[INFO] z limits: -750, 750, dz = 10 +[INFO] Offsets: x = 0, y = 0, z = 8957 +[INFO] Angles : phi = 0, theta = 0, psi = 0 +[INFO] Total number of bins = 1540351; Nx = 101, Ny = 101, Nz = 151 +[INFO] x limits: 0, 219.922, dx = 1.99929 +[INFO] y limits: 0, 217.969, dy = 1.99971 +[INFO] z limits: -50, 3075, dz = 5 +[INFO] Offsets: x = 0, y = 0, z = 204 +[INFO] Angles : phi = 0, theta = 0, psi = 0 +[INFO] Total number of bins = 7643460; Nx = 111, Ny = 110, Nz = 626 +Adding field MainSpecMap +Adding field muonShieldField +Setting the Global field +Adding field TotalField to Global +[INFO] FairMCApplication::InitGeometry: 0 + G4ChordFinder: stepperDriverId: 2 + G4ChordFinder: stepperDriverId: 2 + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomFieldParameters0001 + issued by : G4FieldBuilder::ConstructField: +Field was already constructed. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +GammaToMuPair: gamma->mu+mu- Bethe Heitler process, SubType= 15 + good cross section parametrization from 211.317 MeV to 1e+12 GeV for all Z. + cross section factor: 1 + +AnnihiToMuPair: e+e->mu+mu- annihilation, atomic e- at rest, SubType=6 + threshold at 43.6931 GeV good description up to 1000 TeV for all Z. + +AnnihiToTauPair: e+e->tau+tau- annihilation, atomic e- at rest, SubType=18 + threshold at 12357.1 GeV good description up to 1000 TeV for all Z. +====================================================================== +====== Radioactive Decay Physics Parameters ======= +====================================================================== +min MeanLife (from G4NuclideTable) 1 ns +Max life time (from G4DeexPrecoParameters) 1000 ps +Internal e- conversion flag 1 +Stored internal conversion coefficients 1 +Enabled atomic relaxation mode 1 +Enable correlated gamma emission 0 +Max 2J for sampling of angular correlations 10 +Atomic de-excitation enabled 1 +Auger electron emission enabled 1 +Check EM cuts disabled for atomic de-excitation 1 +Use Bearden atomic level energies 0 +Use ANSTO fluorescence model 0 +Threshold for very long decay time at rest 1 y +====================================================================== + +======================================================= +====== ParticleHP Physics Parameters ======== +======================================================= + Use only photo-evaporation 0 + Skip missing isotopes 0 + Neglect Doppler 0 + Do not adjust final state 0 + Produce fission fragments 0 + Use WendtFissionModel 0 + Use NRESP71Model 0 + Use DBRC 0 + PHP use Poisson 0 + PHP check 1 + CHECK HP NAMES 0 + Enable DEBUG 0 + Use probability tables from +======================================================= + + +==================================================================== + HADRONIC PROCESSES SUMMARY (verbose level 1) +----------------------------------------------------------------------- + Hadronic Processes for B- + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for D- + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for GenericIon + Process: ionInelastic + Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n + Model: FTFP: 3 GeV/n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: RadioactiveDecay +----------------------------------------------------------------------- + Hadronic Processes for He3 + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: He3Inelastic + Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n + Model: FTFP: 3 GeV/n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV +----------------------------------------------------------------------- + Hadronic Processes for alpha + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: alphaInelastic + Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n + Model: FTFP: 3 GeV/n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV +----------------------------------------------------------------------- + Hadronic Processes for anti_He3 + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n + Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_He3Inelastic + Model: FTFP: 0 eV /n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_alpha + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n + Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_alphaInelastic + Model: FTFP: 0 eV /n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_deuteron + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n + Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_deuteronInelastic + Model: FTFP: 0 eV /n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +------------------------------------------------------------------------- + Hadronic Processes for anti_hypertriton + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_lambda + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_neutron + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100.1 MeV + Model: AntiAElastic: 100 MeV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_neutronInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_proton + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100.1 MeV + Model: AntiAElastic: 100 MeV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_protonInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for anti_triton + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n + Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: anti_tritonInelastic + Model: FTFP: 0 eV /n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Process: hFritiofCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for deuteron + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: dInelastic + Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n + Model: FTFP: 3 GeV/n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV +----------------------------------------------------------------------- + Hadronic Processes for e+ + Process: positronNuclear + Model: G4ElectroVDNuclearModel: 0 eV ---> 1 PeV + Cr_sctns: ElectroNuclearXS: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for e- + Process: electronNuclear + Model: G4ElectroVDNuclearModel: 0 eV ---> 1 PeV + Cr_sctns: ElectroNuclearXS: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for kaon+ + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: kaon+Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for kaon- + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: kaon-Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: hBertiniCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for lambda + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: lambdaInelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for mu+ + Process: muonNuclear + Model: G4MuonVDNuclearModel: 0 eV ---> 1 PeV + Cr_sctns: KokoulinMuonNuclearXS: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for mu- + Process: muonNuclear + Model: G4MuonVDNuclearModel: 0 eV ---> 1 PeV + Cr_sctns: KokoulinMuonNuclearXS: 0 eV ---> 100 TeV + Process: muMinusCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for neutron + Process: hadElastic + Model: hElasticCHIPS: 19.5 MeV ---> 100 TeV + Model: NeutronHPElastic: 0 eV ---> 20 MeV + Cr_sctns: NeutronHPElasticXS: 0 eV ---> 20 MeV + Cr_sctns: G4NeutronElasticXS: 0 eV ---> 100 TeV + Process: neutronInelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 19.9 MeV ---> 6 GeV + Model: NeutronHPInelastic: 0 eV ---> 20 MeV + Cr_sctns: NeutronHPInelasticXS: 0 eV ---> 20 MeV + Cr_sctns: G4NeutronInelasticXS: 0 eV ---> 100 TeV + Process: nCapture + Model: nRadCaptureHP: 0 eV ---> 20 MeV + Model: nRadCapture: 19.9 MeV ---> 100 TeV + Cr_sctns: NeutronHPCaptureXS: 0 eV ---> 100 TeV + Cr_sctns: G4NeutronCaptureXS: 0 eV ---> 100 TeV + Process: nFission + Model: NeutronHPFission: 0 eV ---> 20 MeV + Model: G4LFission: 19.9 MeV ---> 100 TeV + Cr_sctns: NeutronHPFissionXS: 0 eV ---> 20 MeV + Cr_sctns: ZeroXS: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for pi+ + Process: hadElastic + Model: hElasticGlauber: 0 eV ---> 100 TeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV + Process: pi+Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for pi- + Process: hadElastic + Model: hElasticGlauber: 0 eV ---> 100 TeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV + Process: pi-Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV + Process: hBertiniCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for proton + Process: hadElastic + Model: hElasticCHIPS: 0 eV ---> 100 TeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV + Process: protonInelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV +----------------------------------------------------------------------- + Hadronic Processes for sigma- + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: sigma-Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Process: hBertiniCaptureAtRest +----------------------------------------------------------------------- + Hadronic Processes for triton + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: tInelastic + Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n + Model: FTFP: 3 GeV/n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + Process: RadioactiveDecay +======================================================================= +====== Geant4 Native Pre-compound Model Parameters ======== +======================================================================= +Type of pre-compound model 0 +Type of pre-compound inverse x-section 1 +Pre-compound model active 1 +Pre-compound excitation low energy 0.1 MeV +Pre-compound excitation high energy 15 MeV +Angular generator for pre-compound model 1 +Use NeverGoBack option for pre-compound model 0 +Use SoftCutOff option for pre-compound model 0 +Use CEM transitions for pre-compound model 1 +Use GNASH transitions for pre-compound model 0 +Use HETC submodel for pre-compound model 0 +======================================================================= +====== Nuclear De-excitation Module Parameters ======== +======================================================================= +Type of de-excitation inverse x-section 3 +Type of de-excitation factory Evaporation+GEM +Number of de-excitation channels 68 +Type of Fermi BreakUp model ModelVI +Min excitation energy 0.01 keV +Min energy per nucleon for multifragmentation 2e+05 MeV +Level density (1/MeV) 0.075 +Use simple level density model 1 +Use discrete excitation energy of the residual 0 +Time limit for long lived isomeres 1 ns +Isomer production flag 1 +Internal e- conversion flag 1 +Store e- internal conversion data 1 +Correlated gamma emission flag 0 +Max 2J for sampling of angular correlations 10 +======================================================================= +[INFO] *** FairBaseParSet written to ROOT file version: 1 +[INFO] *** FairGeoParSet written to ROOT file version: 1 +['tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten', 'tungsten'] [4.5, 1.8, 1.7, 1.7, 1.8, 1.9, 2.1, 1.9, 2.1, 2.4, 2.8, 3.3, 4.1, 5.6, 8.8, 17.2, 28.7, 28.8, 28.8] [0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.45, 0.48, 0.5, 0.68, 0.68, 0] +SiliconTarget zPosition set to 2708.0 +Calling addVMCFields + +Macro finished successfully. +======================================================================== +Simulation finished successfully +======================================================================== +Info in : Geometry loaded from file... +Info in : Top volume is cave. Master volume is cave +Info in : --- Maximum geometry depth set to 100 +Info in : Voxelizing... +Info in : max level = 5, max placements = 14153 +Info in : 3730429 nodes/ 721 volume UID's in FAIR geometry +Info in : ----------------modeler ready---------------- +[INFO] x limits: -500, 500, dx = 10 +[INFO] y limits: -500, 500, dy = 10 +[INFO] z limits: -750, 750, dz = 10 +[INFO] Offsets: x = 0, y = 0, z = 8957 +[INFO] Angles : phi = 0, theta = 0, psi = 0 +[INFO] Total number of bins = 1540351; Nx = 101, Ny = 101, Nz = 151 +[INFO] x limits: 0, 219.922, dx = 1.99929 +[INFO] y limits: 0, 217.969, dy = 1.99971 +[INFO] z limits: -50, 3075, dz = 5 +[INFO] Offsets: x = 0, y = 0, z = 204 +[INFO] Angles : phi = 0, theta = 0, psi = 0 +[INFO] Total number of bins = 7643460; Nx = 111, Ny = 110, Nz = 626 +Adding field MainSpecMap +Adding field muonShieldField +Setting the Global field +Adding field TotalField to Global +The virtual MC pointer gMC is null! The global field can't be used by Geant4 but will work for track fitting and track extrapolation +[INFO] SiPM Overlap parameters: + fLengthScifiMat = 60 cm + fWidthChannel = 0.1 cm + fFiberPitch = 0.025 cm + fChannelAggregated = 4 + fNSiPMChan = 600 + fNSiPMs = 1 + fNMats = 1 + fEdge = 0 cm + firstChannelX = -30 cm +SiliconTarget zPosition set to 2708.0 +Calling addVMCFields +event 0 +finished writing tree +Info in : created default TCanvas with name c1 +============================================================ +Phase 1: Simulation +============================================================ +============================================================ +Phase 2: Reconstruction +============================================================ +============================================================ +Phase 3: Benchmark Metrics +============================================================ + +=== Tracking Benchmark Summary === + Events: 1000 + Reconstructible: 1000 + Total reco: 1000 + Efficiency: 1.0000 +/- 0.0005 + Clone rate: 0.0000 +/- 0.0005 + Ghost rate: 0.0000 +/- 0.0005 + dp/p sigma: 0.013352 +/- 0.000373 + dx RMS: 0.1448 +/- 0.0032 cm + dy RMS: 0.0053 +/- 0.0001 cm + dtx RMS: 0.000379 +/- 0.000008 + dty RMS: 0.000076 +/- 0.000002 + Hit resid RMS: 0.037466 +/- 0.000201 cm + Hit pull mean: -0.0567 +/- 0.0092 + Hit pull sigma: 1.1532 +/- 0.0071 + Charge-ID eff: 1.0000 +/- 0.0005 + Correct/wrong: 1000/0 +================================== + +============================================================ +Tracking benchmark complete. +============================================================ diff --git a/tests/fairship_tests/regenerate_references.sh b/tests/fairship_tests/regenerate_references.sh new file mode 100755 index 0000000000..99781c20a4 --- /dev/null +++ b/tests/fairship_tests/regenerate_references.sh @@ -0,0 +1,8 @@ +#!/usr/bin/env bash +# SPDX-License-Identifier: LGPL-3.0-or-later +# SPDX-FileCopyrightText: Copyright CERN for the benefit of the SHiP Collaboration + +set -euo pipefail + +script_dir=$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" && pwd) +exec python "$script_dir/harness.py" --regenerate diff --git a/tests/fairship_tests/scripts/ci-sim.sh b/tests/fairship_tests/scripts/ci-sim.sh new file mode 100755 index 0000000000..b2062ad7c2 --- /dev/null +++ b/tests/fairship_tests/scripts/ci-sim.sh @@ -0,0 +1,18 @@ +#!/usr/bin/env bash +# SPDX-License-Identifier: LGPL-3.0-or-later +# SPDX-FileCopyrightText: Copyright CERN for the benefit of the SHiP Collaboration + +set -euo pipefail + +export QT_QPA_PLATFORM=offscreen + +python "$FAIRSHIP_ROOT/macro/run_simScript.py" \ + --test \ + --debug 2 \ + --vacuums \ + --SND \ + --SND_design=all \ + --shieldName TRY_2025 \ + --EvtGenDecayer \ + --seed 42 \ + --tag ci-test diff --git a/tests/fairship_tests/scripts/evtgen-summary.sh b/tests/fairship_tests/scripts/evtgen-summary.sh new file mode 100755 index 0000000000..dee5978be3 --- /dev/null +++ b/tests/fairship_tests/scripts/evtgen-summary.sh @@ -0,0 +1,16 @@ +#!/usr/bin/env bash +# SPDX-License-Identifier: LGPL-3.0-or-later +# SPDX-FileCopyrightText: Copyright CERN for the benefit of the SHiP Collaboration + +set -euo pipefail + +export QT_QPA_PLATFORM=offscreen + +python "$FAIRSHIP_ROOT/macro/run_simScript.py" \ + --EvtGenDecayer \ + -t \ + -n 100 \ + --debug 0 \ + --tag evtgen_summary \ + --seed 42 \ + --validation diff --git a/tests/fairship_tests/scripts/muonback-io.sh b/tests/fairship_tests/scripts/muonback-io.sh new file mode 100755 index 0000000000..7234f06c3c --- /dev/null +++ b/tests/fairship_tests/scripts/muonback-io.sh @@ -0,0 +1,22 @@ +#!/usr/bin/env bash +# SPDX-License-Identifier: LGPL-3.0-or-later +# SPDX-FileCopyrightText: Copyright CERN for the benefit of the SHiP Collaboration + +set -euo pipefail + +export QT_QPA_PLATFORM=offscreen + +python "$FAIRSHIP_ROOT/macro/run_simScript.py" \ + -n 100 \ + -i 100 \ + -f https://cernbox.cern.ch/remote.php/dav/public-files/vdwtXtgM5P2Z0S5/pythia8_Geant4_10.0_withCharmandBeauty0_mu.root \ + --remote-input \ + --tag muonback_io \ + --sameSeed 42 \ + --seed 42 \ + --MuonBack \ + --FollowMuon \ + --FastMuon \ + --run-number 123 \ + --reproducible \ + --validation diff --git a/tests/fairship_tests/scripts/muonback-summary.sh b/tests/fairship_tests/scripts/muonback-summary.sh new file mode 100755 index 0000000000..581c8515bd --- /dev/null +++ b/tests/fairship_tests/scripts/muonback-summary.sh @@ -0,0 +1,23 @@ +#!/usr/bin/env bash +# SPDX-License-Identifier: LGPL-3.0-or-later +# SPDX-FileCopyrightText: Copyright CERN for the benefit of the SHiP Collaboration + +set -euo pipefail + +export QT_QPA_PLATFORM=offscreen + + +python "$FAIRSHIP_ROOT/macro/run_simScript.py" \ + -n 5000 \ + -i 100 \ + -f https://cernbox.cern.ch/remote.php/dav/public-files/vdwtXtgM5P2Z0S5/pythia8_Geant4_10.0_withCharmandBeauty0_mu.root \ + --tag muonback_summary \ + --remote-input \ + --sameSeed 42 \ + --seed 42 \ + --MuonBack \ + --FollowMuon \ + --FastMuon \ + --run-number 123 \ + --reproducible \ + --validation diff --git a/tests/fairship_tests/scripts/particle-gun.sh b/tests/fairship_tests/scripts/particle-gun.sh new file mode 100755 index 0000000000..bab1470028 --- /dev/null +++ b/tests/fairship_tests/scripts/particle-gun.sh @@ -0,0 +1,22 @@ +#!/usr/bin/env bash +# SPDX-License-Identifier: LGPL-3.0-or-later +# SPDX-FileCopyrightText: Copyright CERN for the benefit of the SHiP Collaboration + +set -euo pipefail + +export QT_QPA_PLATFORM=offscreen + +python "$FAIRSHIP_ROOT/macro/run_simScript.py" \ + --tag particle_gun_io \ + -n 100 \ + -s 42 \ + --debug 0 \ + --vacuums \ + PG \ + --pID 13 \ + --Estart 1.0 \ + --Eend 10.0 \ + --Vz 8300.0 \ + --multiplePG \ + --Dx 50.0 \ + --Dy 50.0 diff --git a/tests/fairship_tests/scripts/pythia8-summary.sh b/tests/fairship_tests/scripts/pythia8-summary.sh new file mode 100755 index 0000000000..ebf3d1da71 --- /dev/null +++ b/tests/fairship_tests/scripts/pythia8-summary.sh @@ -0,0 +1,16 @@ +#!/usr/bin/env bash +# SPDX-License-Identifier: LGPL-3.0-or-later +# SPDX-FileCopyrightText: Copyright CERN for the benefit of the SHiP Collaboration + +set -euo pipefail + +export QT_QPA_PLATFORM=offscreen + +python "$FAIRSHIP_ROOT/macro/run_simScript.py" \ + --Pythia8 \ + -t \ + -n 100 \ + --debug 0 \ + --tag pythia8_summary \ + --seed 42 \ + --validation diff --git a/tests/fairship_tests/scripts/reconstruction.sh b/tests/fairship_tests/scripts/reconstruction.sh new file mode 100755 index 0000000000..677fee8c62 --- /dev/null +++ b/tests/fairship_tests/scripts/reconstruction.sh @@ -0,0 +1,13 @@ +#!/usr/bin/env bash +# SPDX-License-Identifier: LGPL-3.0-or-later +# SPDX-FileCopyrightText: Copyright CERN for the benefit of the SHiP Collaboration + +set -euo pipefail + +export QT_QPA_PLATFORM=offscreen + +python "$FAIRSHIP_ROOT/macro/ShipReco.py" \ + -f sim_muonback_io.root \ + -g geo_muonback_io.root \ + --patRec AR \ + --Debug diff --git a/tests/fairship_tests/scripts/tracking-benchmark.sh b/tests/fairship_tests/scripts/tracking-benchmark.sh new file mode 100755 index 0000000000..8e60e95882 --- /dev/null +++ b/tests/fairship_tests/scripts/tracking-benchmark.sh @@ -0,0 +1,21 @@ +#!/usr/bin/env bash +# SPDX-License-Identifier: LGPL-3.0-or-later +# SPDX-FileCopyrightText: Copyright CERN for the benefit of the SHiP Collaboration + +set -euo pipefail + +export QT_QPA_PLATFORM=offscreen + +python "$FAIRSHIP_ROOT/macro/run_tracking_benchmark.py" \ + -n 1000 \ + --seed 42 \ + --debug 0 \ + --tag tracking_benchmark \ + --output-json tracking_metrics.json \ + --pID 13 \ + --Estart 1.0 \ + --Eend 100.0 \ + --Vz 8300.0 \ + --Dx 200.0 \ + --Dy 300.0 \ + --nTracks 1 diff --git a/tests/fairship_tests/skip_patterns.conf b/tests/fairship_tests/skip_patterns.conf new file mode 100644 index 0000000000..2a1cc82801 --- /dev/null +++ b/tests/fairship_tests/skip_patterns.conf @@ -0,0 +1,52 @@ +# SPDX-License-Identifier: LGPL-3.0-or-later +# SPDX-FileCopyrightText: Copyright CERN for the benefit of the SHiP Collaboration +# +# Lines in the captured output that match one of these patterns are removed +# before comparison. Start a block with "test NAME", followed by its patterns. +# Use "test *" for patterns that apply to every test. In a pattern, "*" +# matches any text. +# +# Patterns must match the complete line. Keep them narrow: skipped lines are +# not validated. + +test * + *initialisation for run id * + [INFO] Simulation RunID: * + [INFO] Creating branch for * with address * + [DEBUG] *0x* + *Now is * + Matplotlib created a temporary cache directory at * + Real time* s, CPU time* s + [INFO] ---User path for Configuration (g4Config.C) is used: * + [INFO] ---User path for Cuts and Processes (SetCuts.C) is used: * + [INFO] Media file used: * + * g4Config() using g4conf macro: * + @@@ G4ParticleHPInelasticData instantiated * + @@@ G4ParticleHPInelastic instantiated * + NeutronHP:* + Creating field map called MainSpecMap using* + [INFO] ShipBFieldMap::readMapFile() creating field MainSpecMap using file * + Creating symmetric field map called muonShieldField using * + [INFO] ShipBFieldMap::readMapFile() creating field muonShieldField using file * + Info: Target using configuration: * + [DEBUG] Cave: using geometry file * + [INFO] ---User path for Configuration (DecayConfig.C) is used : * + *DecayConfigTEvtGen.C + EvtGen:Defining EvtPythiaEngine: data tables defined in * + EvtGen:Main decay file name :* + EvtGen:In readDecayFile, reading:* + [INFO] TEvtGenDecayer: EvtGen initialized with decay file: * + EvtGen decay file: * + EvtGen particle file: * + TUnixSystem::SetDisplay:0: * + +test tracking-benchmark + [INFO] - */sim_tracking_benchmark.root + Output file is */sim_tracking_benchmark.root + Parameter file is */params_tracking_benchmark.root + Geometry file is */geo_tracking_benchmark.root + configured to process * events from */sim_tracking_benchmark.root * + Metrics saved to */tracking_metrics.json + Histograms saved to */tracking_benchmark_histos.root + *Metrics: */tracking_metrics.json + *Histograms: */tracking_benchmark_histos.root diff --git a/tests/fairship_tests/test_cases.yaml b/tests/fairship_tests/test_cases.yaml new file mode 100644 index 0000000000..6fca8592cd --- /dev/null +++ b/tests/fairship_tests/test_cases.yaml @@ -0,0 +1,13 @@ +# SPDX-License-Identifier: LGPL-3.0-or-later +# SPDX-FileCopyrightText: Copyright CERN for the benefit of the SHiP Collaboration +tests: + - name: ci-sim + - name: evtgen-summary + - name: muonback-io + - name: muonback-summary + - name: particle-gun + - name: pythia8-summary + - name: reconstruction + depends_on: + - muonback-io + - name: tracking-benchmark diff --git a/tests/test_data_class_io.cxx b/tests/test_data_class_io.cxx index c1251af02e..89c6ab0743 100644 --- a/tests/test_data_class_io.cxx +++ b/tests/test_data_class_io.cxx @@ -1,10 +1,10 @@ /** - * Test script to verify data classes can be used with std::vector and RNtuple + * Test executable to verify selected data classes can be used with std::vector. * This test verifies: * - Copy constructors are public - * - Move constructors are accessible - * - Getters are const-correct - * - Classes work with std::vector + * - Copy assignment is available + * - Selected getters can be called through const references + * - Classes support basic std::vector operations */ #include @@ -185,7 +185,7 @@ bool test_vector_operations(const char* class_name) { const T& const_ref = vec[0]; test_const_access(const_ref); - // Test 6: Vector resize (uses copy constructor) + // Test 6: Default-construct additional elements vec.resize(5); std::cout << "PASS" << std::endl; @@ -258,14 +258,15 @@ int main(int argc, char** argv) { if (passed == total) { std::cout << "\n✓ All tests PASSED!" << std::endl; - std::cout - << "All data classes are compatible with std::vector and RNtuple I/O\n" - << std::endl; + std::cout << "All selected data classes support the tested std::vector " + "operations\n" + << std::endl; return 0; } else { std::cout << "\n✗ Some tests FAILED!" << std::endl; - std::cout << "Fix the failing classes before using with RNtuple\n" - << std::endl; + std::cout + << "Fix the failing classes before using these std::vector operations\n" + << std::endl; return 1; } } diff --git a/tests/test_rntuple_io.cxx b/tests/test_rntuple_io.cxx index dff07a8c3b..eb635fa00d 100644 --- a/tests/test_rntuple_io.cxx +++ b/tests/test_rntuple_io.cxx @@ -1,9 +1,9 @@ /** - * Test script to verify data classes work with ROOT RNtuple I/O - * This test performs actual write/read operations to validate: - * - Classes can be written to RNtuple - * - Data can be read back correctly - * - Round-trip serialization preserves values + * Test executable to verify selected data classes work with ROOT RNTuple I/O. + * This test performs write/read operations to validate: + * - Vectors of the classes can be written to an RNTuple + * - The entries and vectors can be read back + * - Round-trip vector sizes are preserved */ #include @@ -71,7 +71,7 @@ using ROOT::RNTupleWriter; // Test helper: write and read a vector of objects template bool test_rntuple_io(const char* class_name, std::vector& test_objects) { - std::cout << "Testing " << class_name << " RNtuple I/O... " << std::flush; + std::cout << "Testing " << class_name << " RNTuple I/O... " << std::flush; std::string sanitised_name{class_name}; std::replace(sanitised_name.begin(), sanitised_name.end(), ':', '_'); @@ -159,7 +159,7 @@ bool test_rntuple_io(const char* class_name, std::vector& test_objects) { } int main(int argc, char** argv) { - std::cout << "\n=== Testing Data Classes with actual RNtuple I/O ===\n" + std::cout << "\n=== Testing Data Classes with actual RNTuple I/O ===\n" << std::endl; int passed = 0; @@ -414,15 +414,15 @@ int main(int argc, char** argv) { std::cout << "Failed: " << (total - passed) << " / " << total << std::endl; if (passed == total) { - std::cout << "\n✓ All RNtuple I/O tests PASSED!" << std::endl; - std::cout - << "All data classes successfully write to and read from RNtuple\n" - << std::endl; + std::cout << "\n✓ All RNTuple I/O tests PASSED!" << std::endl; + std::cout << "All selected data classes successfully write to and read " + "from RNTuple\n" + << std::endl; return 0; } else { - std::cout << "\n✗ Some RNtuple I/O tests FAILED!" << std::endl; + std::cout << "\n✗ Some RNTuple I/O tests FAILED!" << std::endl; std::cout - << "Fix the failing classes before using with RNtuple in production\n" + << "Fix the failing classes before using with RNTuple in production\n" << std::endl; return 1; } From 4c71230cccb0fa27e3ecbeb95d74f3b26042f1f8 Mon Sep 17 00:00:00 2001 From: Valerii Kholoimov Date: Tue, 21 Jul 2026 16:29:40 -0400 Subject: [PATCH 2/2] fix: change references to AMD version --- .../references/evtgen-summary.txt | 24 +++++++++---------- .../references/pythia8-summary.txt | 24 +++++++++---------- .../references/tracking-benchmark.txt | 16 ++++++------- 3 files changed, 32 insertions(+), 32 deletions(-) diff --git a/tests/fairship_tests/references/evtgen-summary.txt b/tests/fairship_tests/references/evtgen-summary.txt index d89ce50506..7cafd55d39 100644 --- a/tests/fairship_tests/references/evtgen-summary.txt +++ b/tests/fairship_tests/references/evtgen-summary.txt @@ -1084,18 +1084,18 @@ Simulation finished successfully Countable branches : 5 [MCTrack Validation] - Total tracks : 14461 + Total tracks : 14612 Primary tracks : 100 - Secondary tracks : 14361 - Tracks per event : 144.6 - Track momentum : 3.933 +- 30.09 [min=0.01149, max=400] - Track energy : 4.03 +- 30.09 [min=0.1, max=400] - Track start Z : 1.05e+04 +- 2700 [min=0, max=1.603e+04] - Top PDG counts : 22:4213, 11:2677, -11:2044, 2112:1320, 2212:1244, 211:766, 111:762, -211:678, -13:119, 9900015:100 + Secondary tracks : 14512 + Tracks per event : 146.1 + Track momentum : 3.902 +- 29.94 [min=0.02005, max=400] + Track energy : 4.001 +- 29.93 [min=0.1, max=400] + Track start Z : 1.053e+04 +- 2678 [min=0, max=1.603e+04] + Top PDG counts : 22:4240, 11:2666, -11:2057, 2112:1342, 2212:1308, 211:768, 111:765, -211:680, -13:126, 9900015:100 [Branch Multiplicity] - MCTrack : total=14461, mean/event=144.6 +- 149.6, active=100/100 (100.0%), max=1088 - TimeDetPoint : total=518, mean/event=5.18 +- 7.361, active=90/100 ( 90.0%), max=48 - splitcalPoint : total=71203, mean/event=712 +- 1141, active=90/100 ( 90.0%), max=6110 - strawtubesPoint : total=5750, mean/event=57.5 +- 40.85, active=94/100 ( 94.0%), max=296 - vetoPoint : total=15801, mean/event=158 +- 347.2, active=51/100 ( 51.0%), max=2437 + MCTrack : total=14612, mean/event=146.1 +- 149.3, active=100/100 (100.0%), max=1088 + TimeDetPoint : total=520, mean/event=5.2 +- 7.412, active=91/100 ( 91.0%), max=48 + splitcalPoint : total=70132, mean/event=701.3 +- 1174, active=90/100 ( 90.0%), max=6110 + strawtubesPoint : total=5714, mean/event=57.14 +- 40.72, active=95/100 ( 95.0%), max=296 + vetoPoint : total=15866, mean/event=158.7 +- 350.6, active=52/100 ( 52.0%), max=2437 diff --git a/tests/fairship_tests/references/pythia8-summary.txt b/tests/fairship_tests/references/pythia8-summary.txt index f469c68bff..a467641aac 100644 --- a/tests/fairship_tests/references/pythia8-summary.txt +++ b/tests/fairship_tests/references/pythia8-summary.txt @@ -768,18 +768,18 @@ Simulation finished successfully Countable branches : 5 [MCTrack Validation] - Total tracks : 14461 + Total tracks : 14612 Primary tracks : 100 - Secondary tracks : 14361 - Tracks per event : 144.6 - Track momentum : 3.933 +- 30.09 [min=0.01149, max=400] - Track energy : 4.03 +- 30.09 [min=0.1, max=400] - Track start Z : 1.05e+04 +- 2700 [min=0, max=1.603e+04] - Top PDG counts : 22:4213, 11:2677, -11:2044, 2112:1320, 2212:1244, 211:766, 111:762, -211:678, -13:119, 9900015:100 + Secondary tracks : 14512 + Tracks per event : 146.1 + Track momentum : 3.902 +- 29.94 [min=0.02005, max=400] + Track energy : 4.001 +- 29.93 [min=0.1, max=400] + Track start Z : 1.053e+04 +- 2678 [min=0, max=1.603e+04] + Top PDG counts : 22:4240, 11:2666, -11:2057, 2112:1342, 2212:1308, 211:768, 111:765, -211:680, -13:126, 9900015:100 [Branch Multiplicity] - MCTrack : total=14461, mean/event=144.6 +- 149.6, active=100/100 (100.0%), max=1088 - TimeDetPoint : total=518, mean/event=5.18 +- 7.361, active=90/100 ( 90.0%), max=48 - splitcalPoint : total=71203, mean/event=712 +- 1141, active=90/100 ( 90.0%), max=6110 - strawtubesPoint : total=5750, mean/event=57.5 +- 40.85, active=94/100 ( 94.0%), max=296 - vetoPoint : total=15801, mean/event=158 +- 347.2, active=51/100 ( 51.0%), max=2437 + MCTrack : total=14612, mean/event=146.1 +- 149.3, active=100/100 (100.0%), max=1088 + TimeDetPoint : total=520, mean/event=5.2 +- 7.412, active=91/100 ( 91.0%), max=48 + splitcalPoint : total=70132, mean/event=701.3 +- 1174, active=90/100 ( 90.0%), max=6110 + strawtubesPoint : total=5714, mean/event=57.14 +- 40.72, active=95/100 ( 95.0%), max=296 + vetoPoint : total=15866, mean/event=158.7 +- 350.6, active=52/100 ( 52.0%), max=2437 diff --git a/tests/fairship_tests/references/tracking-benchmark.txt b/tests/fairship_tests/references/tracking-benchmark.txt index b1bad9e96b..5c2d05ee6d 100644 --- a/tests/fairship_tests/references/tracking-benchmark.txt +++ b/tests/fairship_tests/references/tracking-benchmark.txt @@ -527,14 +527,14 @@ Phase 3: Benchmark Metrics Efficiency: 1.0000 +/- 0.0005 Clone rate: 0.0000 +/- 0.0005 Ghost rate: 0.0000 +/- 0.0005 - dp/p sigma: 0.013352 +/- 0.000373 - dx RMS: 0.1448 +/- 0.0032 cm - dy RMS: 0.0053 +/- 0.0001 cm - dtx RMS: 0.000379 +/- 0.000008 - dty RMS: 0.000076 +/- 0.000002 - Hit resid RMS: 0.037466 +/- 0.000201 cm - Hit pull mean: -0.0567 +/- 0.0092 - Hit pull sigma: 1.1532 +/- 0.0071 + dp/p sigma: 0.012854 +/- 0.000364 + dx RMS: 0.1327 +/- 0.0030 cm + dy RMS: 0.0054 +/- 0.0001 cm + dtx RMS: 0.000381 +/- 0.000009 + dty RMS: 0.000081 +/- 0.000002 + Hit resid RMS: 0.037075 +/- 0.000199 cm + Hit pull mean: -0.0543 +/- 0.0092 + Hit pull sigma: 1.1589 +/- 0.0073 Charge-ID eff: 1.0000 +/- 0.0005 Correct/wrong: 1000/0 ==================================