- Purpose
- Contacts
- System Tests
- Regression Tests
- Unit Tests
- System and Unit Tests for Each Hadronic Model
- Plans
Purpose
The hadronic physics testing suite is composed of checks on the integrity and robustness of software written to simulate hadronic physics, and to verify that changes introduced into the software from release to release either do not change performance, or changes it in understood ways.
The hadronic testing suite has recently been updated but is still incomplete. This page will serve both to evaluate the status of these tests, and to monitor the ongoing work of bringing the suite up to date.
Contacts
- Alberto Ribon (CERN) - hadronic working group coordinator
- Dennis Wright (SLAC) - hadronic working group deputy coordinator
System Tests
System tests are run before each release by the system testing team to check the integration and robustness of code. Code that passes the tests is approved for inclusion in the release. Within the hadronic suite, these tests typically consist of running one, or sometimes several, hadronic models or processes. A condition of success is that the code runs to completion, and that the length of the log file from the run does not exceed a certain limit.
System Test | Description | Success Condition | Status | Responsible |
Test11 | Neutron transport using HP and LEP models | run to completion | running, complete | Tatsumi Koi |
Test12 | FTF + G4PreCompound integration | run to completion | running, complete | Vladimir Uzhinsky |
Test13 | QGS, G4PreCompound, LEP, HEP integration | run to completion | running, complete | Gunter Folger |
Test15 | Lepto-nuclear | to be determined | under development | Dennis Wright |
Test16 | empty | none | none | none |
Test18 | Radioactive Decay of selected ions | run to completion | running, complete | Dennis Wright |
Test19 | FTFP, QGSP validation from 31 to 158 GeV/c | to be determined | under development | Julia Yarba |
Test20 | pi0 production (adapted from Test43) | to be determined | Gunter Folger | |
Test21 | empty | none | none | none |
Test22 | empty | none | none | none |
Test23 | empty | none | none | none |
Test24 | Binary cascade | run to completion | running, complete | Gunter Folger |
Test25 | Bertini cascade, LEP | run to completion | running, incomplete | Mike Kelsey |
Test27 | Binary cascade for light ions | run to completion | running, complete | Gunter Folger |
Test28 | Abrasion/ablation/em-dissociation | run to completion | running, complete | Dennis Wright |
Test29 | empty | none | none | none |
Test30 | Low and medium energy validation | run to completion, spectrum comparison | running, complete | Vladimir Ivantchenko |
Test35 | HARP test (internal) | run to completion, spectrum comparison | running, complete | Vladimir Ivantchenko |
Test39 | empty | none | none | none |
Test42 | Based on examples LXe and Hadr01 | run to completion, spectrum comparison | running, complete | Vladimir Grichine |
Test43 | High energy models validation | run to completion, spectrum comparison | under development | Gunter Folger |
Test45 | Thick tgt validation for low energy p and ion | run to completion, spectrum comparison | running, complete | Anton Ivantchenko |
Test46 | Thick tgt validation for low energy p and ion | run to completion, spectrum comparison | running, complete | Anton Ivantchenko |
Test47 | Intermediate energy validation | run to completion, spectrum comparison | running, complete | Julia Yarba |
Test48 | Stopping particles validation | run to completion, spectrum comparison | running, complete | Julia Yarba |
Test49 | empty | none | none | none |
Test61 | QMD | run to completion | running, complete | Tatsumi Koi |
Test62 | INCL/ABLA, p, n, pi on various tgts | run to completion | running, complete | Davide Mancusi |
Test63 | FTF+Binary integration test | run to completion | running, complete | Vladimir Uzhinsky |
Test64 | Bert, FTFP capture | run to completion | running, complete | Alberto Ribon |
Test65 | Neutron transport using LEND models | run to completion | running, complete | Tatsumi Koi |
Test69 | INCL++, p, n, pi on various tgts | run to completion | running, complete | Davide Mancusi |
Test71 | Quasi-elastic Scattering | run to completion | running, complete | Witold Pokorski |
Test72 | pi- capture | |||
Test75 | Gamma-nuclear | under development | Julia Yarba, Dennis Wright | |
Test79 | empty | none | none | none |
Regression Tests
Regression tests are run before each release by developers in the hadronic working group to check that the physics performance of the code has either not changed, or has changed in an expected way as a result of code changes. Code that passes the regression tests is recommended to the hadronic working group coordinator for inclusion into the overall hadronic tag. These tests typically consist of a single hadronic model, run as a process, over a range of incident particle types, targets and energies. Comparisons to standard spectra and rates are used to gauge success or failure of the test.rocesses.
Regression Test | Description | Success Condition | Status |
test30 | Low and medium energy model tests | spectra within sigma | running, complete |
test30iaea | Comparison to spallation data (low, medium energy models) | spectrum comparison | running, complete |
test35 | HARP data comparison | spectrum comparison | running, complete |
test43 | High energy model tests | spectra within sigma | under development |
test45 | Thick tgt validation for low energy p and ion | spectrum comparison | running, complete |
test47 | Medium energy model tests | spectra comparison | running, complete |
test48 | Stopping model validation | spectra comparison | running, complete |
Unit Tests
Unit tests are run during the development and testing of hadronic code by the maintainers of the various hadronic models, processes and cross sections. They are meant to be run frequently or whenever code changes are made. These tests typically check the performance of the components of a given model, rather the performance of the entire model.
System and Unit Tests for Each Hadronic Model
Model | Responsible | System Tests | Unit Tests |
Abrasion/Ablation | Dennis Wright | Test28 (80 MeV - 1 TeV) | none |
Bertini cascade | Mike Kelsey | Test25 (thick target: 65 MeV - 15 GeV), Test47 (thin target: 1-15 GeV), Test48 (stopping), Test64 (capture) | Cascade regression (0-15 GeV, status: active) |
Binary cascade | Gunter Folger | Test24 (binary), Test27 (binary light ion) | ??? |
Coherent elastic | Vladimir Ivantchenko | ||
De-excitation | Jose Manuel Quesada, Vladimir Ivantchenko | ||
Elastic | Vladimir Ivantchenko | ||
EM dissociation | Dennis Wright | ||
FTF | Vladimir Uzhinsky | Test | Test |
Gamma-nuclear | Julia Yarba, Dennis Wright | Test75 | Test |
INCL++ | Davide Mancusi | Test | Test |
LEND | Tatsumi Koi | ||
Lepto-nuclear | Dennis Wright | Test15 | Test |
Livermore fission | Jerome Verbeke | ||
NeutronHP | Tatsumi Koi | ||
Precompound | Jose Manuel Quesada, Vladimir Ivantchenko | ||
QGS | Gunter Folger | ||
QMD | Tatsumi Koi | Test | Test |
Quasi-elastic scattering | Witold Pokorski | ||
Radioactive Decay | Dennis Wright | Test | Test |
Stopping | Julia Yarba, Alberto Ribon, Mike Kelsey |
Plans
- Hadronic system tests are currently nearly complete in their coverage of hadronic models, processes and cross sections. Work underway or planned to complete the system tests is listed here:
- Replace test25 (Bertini + LEP) with a test of LEP/HEP exclusively
- Create system test for INCL/ABLA
- Create system test for non-CHIPS stopping processes
- Move some tests out of system testing and into regression testing
- Regression testing in hadronics is under developement, with only part of the models covered. Plans for the development of additional regression tests include:
- Set up a directory for each release to contain results of past regression tests
- Develop standard tools to use for regular regression testing, such as process-level code (as in Test30), automatic comparison of spectra or rates against a standard, stanard conditions of success, etc.
- Many unit tests exist for each hadronic model. However, most are not currently performed in a standard way and some are out of date or do not compile or run. Plans for standardizing both the running and reporting of unit tests are being developed.