Physics Validation Task Force main twiki page

This is a collection of links, materials and pages mainly for internal use of the PhysicsValidationTaskForce of the Geant4 Testing and Quality Assurance Working Group.

This webpage is work in progress and mainly used by members of the the task force. Please refer to the main Geant4 public website and the physics validation section: Results

Task Force Members

Name e-mail Role and area of activity
Andrea Dotti andrea.dotti@cernNOSPAMPLEASE.ch Coordinator and HEP experiments
Hans-Joachim Wenzel wenzel@fnalNOSPAMPLEASE.gov Deputy coordinator and HEP experiments
Julia Yarba yarba_j@fnalNOSPAMPLEASE.gov HEP experiments

If you wish to participate to the task force activities contact andrea.dotti@cernNOSPAMPLEASE.ch

Mailing List

Members/announcements: geant4-PhysValidTaskForce@cernNOSPAMPLEASE.ch (self-subscribe policy with owner/admin approval).
Archive: https://groups.cern.ch/group/geant4-PhysValidTaskForce/default.aspx

Admins: geant4-PhysValidTaskForce-Admin@cernNOSPAMPLEASE.ch

Areas of activities and current status

Publications and results repository

Need to collect in a single place all validations and resources relative to Geant4. At the moment we have several twikis and simple webpages:

A technology to store the results and make them searchable should be investigated, for example using the LCG Physics Validation results database based on DRUPAL: http://sftweb.cern.ch/validation/docs

GRID Validation

An online manual to run the SimplifiedCalorimeter application is under preparation: Google doc

The new web application to inspect results can be found at: http://g4-val.cern.ch/.

Automated testing (ctest/cdash integration)

Currently the infrastructure to include physics tests is being included in the Geant4 ! CTest/CDash system. To extend current CTest system the following steps are being implemented:

Component Tag Status Description
test73 test73-V09-05-11 Accepted Multiple Scattering test (inspired by LHCb): proof of principle of physics validation with ctest/cdash
StatTest stattest-V09-05-01 Accepted Module to perform automatic regression testing on ctest output
FindStatTest.cmake cmake-V09-05-35 Accepted Provides module to use StatTest package
tests/ctest/CMakeLists.txt ctest-V09-05-12 Accepted Extends ctest to include SimplifiedCalorimeter
SimplifiedCalorimeter simpifiedcalorimeter-V09-05-00 Accepted Few tests included in ctest of same application used for GRID validation
test48 test48-V09-05-07 Accepted First extension of already existing test to use automatic regression testing (StatTest)

When all these steps will be completed, we have demonstrated that physics validation can be perfumed with ctest in a coherent manner both with external applications (e.g. SimplifiedCalorimeter) and with standard Geant4 tests (e.g. test48, test73). We will also have provided a tool (StatTest, FindStatTest.cmake) to perform automatic regression testing of results (e.g. test48, SimplifiedCalorimeter). Next in the pipeline to further test the system are test47 and crystal calorimeter application.

Ideas on other applications/test to be included. The proposed examples need to have analysis facility, produce histograms and have a run-time compatible with nightlies.

  • Double read-out calorimeter
  • xray_fluorescence example : to test low-E models
  • TARC experiment: validation of low-E neutrons (would be an external application like SimplifiedCalorimeter)
  • purging_magnet/nanobeam : validation of tracking in EM fields
  • hadrontherapy : Bragg Peak validation

How to include a test in PhysicsChecks group in Ctest/CDash

To extend an already existing Geant4 ctest to be tested for physics validation you need to modify the test's CMakeLists.txt file. The file will probably contain a GEANT4_ADD_TEST instruction. To make the test available for physics validation (i.e. the PhysicsChecks CDash group) add the LABELS parameters to the GEANT4_ADD_TEST group.

For example the very simple test (trying just to build the test73 executable):

GEANT4_ADD_TEST( test73-build BUILD test73)

Can be run in ALL CDash groups by specifying the list of LABELS

GEANT4_ADD_TEST( test73-build BUILD test73 LABELS Nightly Continuous PhysicsChecks)

To run a test ONLY in the PhysicsChecks group write LABELS PhysicsChecks. A complete example (including creation of unique working directories, examples of loops to define tests etc) can be found in test73.

Example of a real CMakeLists.txt

This is an example of realistic test definitions from test67. It includes definitions of tests for PhysicsChecks group and shows the use of a loop and the copying of ROOT reference files to the working directory:
cmake_minimum_required(VERSION 2.6 FATAL_ERROR)
project(test67)
find_package(Geant4 REQUIRED)
include(${Geant4_USE_FILE})

find_package(ROOT QUIET)
if(ROOT_FOUND)
  #message(STATUS "G4 TESTS: ROOT package found --> test67 with analysis enabled") 
  add_definitions(-DG4_USE_ROOT)
  include_directories(${ROOT_INCLUDE_DIR} ${PROJECT_SOURCE_DIR}/include)  
else()
  message(STATUS "G4 TESTS: ROOT package not found. --> test67 Analysis disabled")
  include_directories(${PROJECT_SOURCE_DIR}/include)
endif() 

if(ROOT_FOUND)
 GEANT4_EXECUTABLE(test67 test67.cc src/*.cc LIBRARIES ${ROOT_LIBRARIES})
else()
 GEANT4_EXECUTABLE(test67 test67.cc src/*.cc LIBRARIES)
endif()

#---Test definitions----------------------------------------------------------------------------------
# For all groups
GEANT4_ADD_TEST( test67-build 
                                 BUILD test67 
                                 LABELS Nightly Continuous PhysicsChecks
                                 ENVIRONMENT ${GEANT4_TEST_ENVIRONMENT})
GEANT4_ADD_TEST(test67 COMMAND test67 ${CMAKE_CURRENT_SOURCE_DIR}/test67.in
                       DEPENDS test67-build
                       LABELS Nightly Continuous PhysicsChecks
                       ENVIRONMENT ${GEANT4_TEST_ENVIRONMENT})

#Add special tests for PhysicsList group
if(ROOT_FOUND)
   #Define a test that builds the executable: needed independent since tests after will be
   #executed in parallel. This ensure correct dependency treatment
   FILE(GLOB _refs RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.root)
   FILE(COPY ${_refs} DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
   #Loop on all different test types
   foreach(_confs test67_livermore test67_stdopt3 test67_stdopt0)
        #Use for testname same string as macro name (test names need to be unique)
        #Note we need a different working directory for each test so each test can write its own output
        #w/o interference 
        #set( _wd ${CMAKE_BINARY_DIR}/${_confs} )
        #file(MAKE_DIRECTORY ${_wd} )
        GEANT4_ADD_TEST( ${_confs} COMMAND test67 ${CMAKE_CURRENT_SOURCE_DIR}/${_confs}.in
        #                          WORKING_DIRECTORY ${_wd}
                                   DEPENDS test67-build
                                   LABELS PhysicsChecks
                                   ENVIRONMENT ${GEANT4_TEST_ENVIRONMENT})
                                   
   endforeach()

endif()

Validation Results Database

Production Web application:

Development web application (more functionality will be rolled over to production)

Below is a list of links with information about this project:

  1. The SVN repository can be browsed here
  2. The project twiki can be found here
  3. A list of tasks regarding the Validation Results Database can be found here

New activity for extension of FNAL DB here

Validation coverage

Only validation applications used regularly on GRID/distributed resources are listed. Individual validation efforts from developers and user-applications are not included.

CERN/HEP Oriented: SimplifiedCalorimeter on the GRID

The following table contains the list of physics lists being tested:
Physics List Notes
FTFP_BERT Recommended for Cern LHC experiments: main interests are Fritiof model and Bertinig cascade
FTFP_BERT_HP Adding high-precision neutron testing
FTFP_BERT_TRV Currently add new hadronic elastic
FTF_BIC Use Binary cascade and interface it to Fritiof for de-excitation of nucleus at high-energy
QBBC Experimental combining several hadronic models. Some interest in medical community
QGSP_BERT Instead of Fritiof use QGS model
QGSP_BERT_HP Add high-precision neutron
QGSP_BIC QGS and Binary
QGSP_FTFP_BERT Use Fritiof and QGS at higher energies
The application allows to study the following quantities: Response , Resolution, Shower shapes (width and length). Granularity of calorimeters and physics quantity are tailored to LHC experiments.

HEP/Low background experiment Oriented

HEP/Intensity frontier Oriented

Shielding Oriented

Medical Applications Oriented

Two possible applications have been provided by S. Guatelli and P.Arce. Evaluation ongoing on adaptation for distributed computing.

Space Applications Oriented

Meetings Minutes

Edit | Attach | Watch | Print version | History: r23 < r22 < r21 < r20 < r19 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r23 - 2016-08-11 - AndreaDotti
 
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    Geant4 All webs login

This site is powered by the TWiki collaboration platform Powered by PerlCopyright & 2008-2019 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback