Skip to content

Commit

Permalink
Import Geant4 10.3.2 source tree
Browse files Browse the repository at this point in the history
  • Loading branch information
gcosmo committed Jul 27, 2017
1 parent 31a2416 commit 96205ca
Show file tree
Hide file tree
Showing 869 changed files with 15,594 additions and 109,511 deletions.
6 changes: 3 additions & 3 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
#
# 21st September 2010 Ben Morgan
#
# $Id: CMakeLists.txt 102581 2017-02-09 09:30:38Z gcosmo $
# $Id: CMakeLists.txt 105145 2017-07-14 07:51:44Z gcosmo $
#

#-----------------------------------------------------------------------
Expand Down Expand Up @@ -35,10 +35,10 @@ set(CMAKE_USER_MAKE_RULES_OVERRIDE_CXX
project(Geant4)

# - Versioning. We do this here for now
set(${PROJECT_NAME}_VERSION "10.3.1")
set(${PROJECT_NAME}_VERSION "10.3.2")
set(${PROJECT_NAME}_VERSION_MAJOR "10")
set(${PROJECT_NAME}_VERSION_MINOR "3")
set(${PROJECT_NAME}_VERSION_PATCH "1")
set(${PROJECT_NAME}_VERSION_PATCH "2")


# - Prepend our own CMake Modules to the search path
Expand Down
219 changes: 219 additions & 0 deletions ReleaseNotes/Patch4.10.3-2.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,219 @@

Geant4 10.3 - patch-02 Release Notes
------------------------------------

27 July 2017

List of fixes included in this public patch since the public release 10.3.p01:

o Configuration:
-------------
+ CMake:
o Added VECGEOM_DEFINITIONS and VECGEOM_EXTERNAL_INCLUDES when compiling
with USolids/VecGeom enabled, to allow for detection of external
packages paths from VecGeom.
o Corrected Qt setup for GNUmake builds, avoid setting QTLIBS and
GLQTLIBS as already handled by the GNUmake system for Qt4 and Qt5.
+ GNUmake:
o Corrected order of linkage in binmake.gmk for analysis global library.

o Analysis:
--------
+ Fixed problem of removing non-empty ntuple files in user application
where ntuples are created after open file.
+ Added GetP[1,2]Id(const G4String&) functions to G4AnaysisManager.
Addressing problem report #1949.
+ Corrected handling of open file failure.
Addressing problem report #1957.

o Event:
-----
+ Fixed 'fallthrough' compilation warnings in case statements on gcc-7.1.

o Externals:
---------
+ Fixed compilation warnings on gcc-7.1.

o G3toG4:
------
+ Fixed compilation warnings on gcc-7.1.

o Generic Processes:
-----------------
+ biasing:
o G4GeometrySampler: removed unnecessary ClearSampling() from the
destructor.
+ scoring:
o G4ParallelWorldProcess: fix to have a valid pointer to secondaries
in G4Step of a parallel world.

o Geometry:
--------
+ biasing:
o Added mutex locks to methods within G4IStore and G4ImportanceAlgorithm.
Temporary fix for erratic behaviour in MT-mode and crashing if bounds-
checking is switched on with many threads/events.
Addressing problem report #1945.
+ solids/CSG:
o Fixed possible rounding off error in calculation of 'astep' (max angle
for one step) in CalculateExtent() for G4Cons, G4Tubs, G4CutTubs
and related USolids wrappers.
o Added accessor to G4Orb and G4UOrb for retrieving cached max radius
tolerance.
o Fix in G4CutTubs::Inside() for case where inside points were considered
as points on surface. Addressing problem report #1973.
+ solids/specific:
o Fixed possible rounding off error in calculation of 'astep' (max angle
for one step) in CalculateExtent() for G4Polycone, G4GenericPolycone
and related USolids wrappers.
o Removed potential race condition in G4VTwistSurface::AmIOnLeftSide().
Addressing problem report #1972.

o Global:
------
+ Corrected TLS setup in tls.hh for gcc compiler.
+ Updated date and version for 10.3.p02.

o Intercoms:
---------
+ Fix to G4GenericMessenger::Command::SetUnit: do not ignore setting and
issue a warning when running sequential application built against Geant4
libraries compiled with MT enabled.

o Physics Lists
-------------
+ constructors/electromagnetic:
o G4EmStandardPhysicsSS: apply single scattering to all particles.
Addressing problem report #1966.
o G4EmModelActivator: fixed Opt4 and SS per region.
+ lists:
o G4PhysListFactory: fixed EM option "__SS".
Addressing problem report #1966.

o Processes - Electromagnetic:
---------------------------
+ dna:
o Fixed compilation warnings on gcc-7.1.
+ lowenergy:
o G4LowEPPolarizedComptonModel: fixed FPE in comptation of std::acos().
o Fixed compilation warnings on gcc-7.1.
+ standard:
o G4UniversalFluctuation: fixed numerical problem for sampling
low-energy anti-protons with very small steps.
o G4NuclearStopping, G4ICRU49NuclearStoppingModel: fixed nuclear
stopping power computation addressed in Hypernews post #1595 in the
Hadronic Processes Forum.
o G4hIonisation: fixed min/max energy for dEdx table for the case when
the mass of a hadron is very different from the mass of proton.
+ utils:
o G4EmCalculator: for computation of the nuclear stopping power, use
concrete model (applied at run time) instead of G4EmCorrections
emulation; to get cross section per volume for discrete processes
use interface of the process. Addressing Hypernwes post #1595 in the
Hadronic Processes Forum.
o G4VEmModel: added extra protected class member for nuclear stopping.
o G4EmSaturation: fixed typo in printout.

o Processes - Hadronic:
--------------------
+ models/cascade:
o G4CascadeCoalescence: removed clusterHash() function and 'triedClusters'
registry. Droped redundant calls of tryCluster() with subcombinatorics;
all combinations are handled, uniquely, in main loop over indices.
This eliminates significant memory usage observed with high-energy
applications of BERT.
+ models/de_excitation:
o G4DeexPrecoParameters: disabled parameter change in G4_Idle state,
only G4_PreInit is allowed; disabled correlated gamma;
set default time limit to 1000s (if radioactive decay is enabled this
time may be set to the limit of the G4NuclideTable), this allows do
not create extra isomeres if radioactive decay is not included in the
physics list
o G4LevelReader, G4LevelManager, G4PhotonEvaporation: for stable states
(ground state isotopes) set life time to "-1"; changed all checks
accordingly.
o G4LevelReader: issue fatal exception if data file is not open.
Addressing problem report #1942.
o G4PhotonEvaporation: always have gamma transition to the discrete
level (if there is no levels, go to the ground state).
Addressing problem report #1950.
+ models/lend:
o Fixed compilation warnings on gcc-7.1.
o Fixed Coverity defects.
+ models/particle_hp:
o Added check for He3 projectile. Addressing problem report #1907.
o G4ParticleHPThermalScattering: fixed angular distribution sampling
problem. Addressing problem report #1971.
o Fix in destructor of processes to protect against concurrent deletion.
o Bug fix and improved stability in G4ParticleHPFinalState.
o Suppressed unnecessary warning messages in G4ParticleHPEnAngCorrelation.
o Fixed minor inconsistency between documentation and code.
+ models/radioactive_decay:
o G4RadioactiveDecay::DecayIt(): added statement to propagate weight of
parent track. Addressing problem report #1946.
+ models/util:
o G4Fragment: fixed destructor and printout.
o G4PolynomialPDF: fix for potential division by zero.
+ util:
o G4GHEKinematicsVector: fixed case of variable shadowing.

o Run:
---
+ G4RunManagerKernel: removed unnecessary warning message.

o Visualization:
-------------
+ Fixed compilation warnings on gcc-7.1.

o Examples:
--------
+ Updated reference outputs.
+ Fixed compilation warning on gcc-7.1.
+ advanced/air_shower:
o Updated setup for visualization in main() and Visualisation.mac.
+ extended/biasing/B01:
+ extended/biasing/B02:
o Removed unnecessary clearing of sampling.
+ extended/biasing/B03:
o B03PhysicsList: removed obsolete unnecessary instantiation of
de-excitation sub-models.
o Removed unnecessary clearing of sampling.
+ extended/eventgenerator/HepMC/MCTruth:
o Fixed typo in initialisation.
+ extended/g3tog4:
o Fixed linking problem for static build.
+ extended/optical/LXe:
o Fix for issue reported on Hypernews Optical-Photons Forum #651.
+ extended/medical/DICOM:
o Fix to DicomRun::RecordEvent() that was incrementing the inherited
numberOfEvent variable from G4Run twice causing the output of the
number of events to be twice the actual value.
o Corrected element definitions for Potassium and Phosphorus in
DetectorConstruction.
+ extended/persistency/gdml/G01:
o Updated setup for visualization in main program.
o Added missing gdml files to CMake installation script.
+ extended/persistency/gdml/G02:
+ extended/persistency/gdml/G03:
o Updated setup for visualization in main program.
+ extended/radioactivedecay/rdecay02:
o Updated README, adding a note stating that all histograms but one are
turned off by default, and describing how to turn them back on.
Addressing problem report #1936.
+ extended/runAndEvent/RE05:
o Fixed potential rare race condition issue in RE05PrimaryGeneratorAction.

----------------------------------------------------------------------------

Technical Notes
---------------

o This patch should be applied on top of release 10.3.p01.
o Technical notes distributed for release 10.3 are also applicable and
valid for this patch.

The code and rebuilt binary libraries for release 10.3.p02 are available
through our "Download" Web page.

Please refer to the Geant4 User Documentation for further information about
using Geant4.
20 changes: 20 additions & 0 deletions cmake/History
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,26 @@ add this in the documentation for the changed file as [BUGFIX #BUGNUMBER].

----------------------------------------------------------

17th July 2017 - Gabriele Cosmo (cmake-V10-02-41)
- Modules/Geant4ToolchainBackwardCompatibility.cmake,
Modules/Geant4InterfaceOptions.cmake:
corrected Qt setup for GNUmake builds, avoid setting QTLIBS and GLQTLIBS
as already handled by the GNUmake system for Qt4 and Qt5.

9th June 2017 - Gabriele Cosmo (cmake-V10-02-40)
- Corrected exporting of external packages paths from VecGeom.

30th May 2017 - Gabriele Cosmo
- Modules/Geant4OptionalComponents.cmake: added VECGEOM_EXTERNAL_INCLUDES
to include directories for USolids/VecGeom enabled build, in order to
allow for detection of external packages paths from VecGeom (e.g. Vc if
Vetor backend is chosen at installation of VecGeom).

24th May 2017 - Gabriele Cosmo
- Modules/Geant4OptionalComponents.cmake: appended VECGEOM_DEFINITIONS
to GEANT4_USOLIDS_COMPILE_DEFINITIONS. Preparing for introducing direct
dependency on VecGeom in G4U* wrappers, and deprecate USolids.

21st February 2017 - Gunter Folger (cmake-V10-02-39)
- Switch to PhotonEvaporation 4.3.2

Expand Down
2 changes: 1 addition & 1 deletion cmake/Modules/Geant4BuildProjectConfig.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,7 @@ if(GEANT4_USE_USOLIDS OR GEANT4_USE_PARTIAL_USOLIDS)
# System USolids headers, because these do appear in Geant4's
# public interface. The library should be in the link interface
# of G4geometry (may need refinding)
list(APPEND GEANT4_THIRD_PARTY_INCLUDES ${USOLIDS_INCLUDE_DIRS})
list(APPEND GEANT4_THIRD_PARTY_INCLUDES ${USOLIDS_INCLUDE_DIRS} ${VECGEOM_EXTERNAL_INCLUDES})
endif()

# - Stuff from Geant4InterfaceOptions.cmake
Expand Down
2 changes: 1 addition & 1 deletion cmake/Modules/Geant4ConfigureConfigScript.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -153,7 +153,7 @@ if(NOT GEANT4_BUILD_GRANULAR_LIBS AND UNIX)
# - USolids
if(GEANT4_USE_USOLIDS OR GEANT4_USE_PARTIAL_USOLIDS)
set(G4_BUILTWITH_USOLIDS "yes")
set(G4_USOLIDS_INCLUDE_DIRS ${USOLIDS_INCLUDE_DIRS})
set(G4_USOLIDS_INCLUDE_DIRS "${USOLIDS_INCLUDE_DIRS} ${VECGEOM_EXTERNAL_INCLUDES}")
list(REMOVE_DUPLICATES G4_USOLIDS_INCLUDE_DIRS)
list(REMOVE_ITEM G4_USOLIDS_INCLUDE_DIRS ${_cxx_compiler_dirs})

Expand Down
2 changes: 0 additions & 2 deletions cmake/Modules/Geant4InterfaceOptions.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -106,8 +106,6 @@ if(GEANT4_USE_QT)
set(QT_USE_FILE "${PROJECT_BINARY_DIR}/Geant4UseQt5.cmake")
configure_file("${Qt5_USE_FILE_IN}" "${QT_USE_FILE}" @ONLY)
get_target_property(QT_QMAKE_EXECUTABLE ${Qt5Core_QMAKE_EXECUTABLE} IMPORTED_LOCATION)
set(G4QTLIBLIST "-lQt5PrintSupport -lQt5Widgets -lQt5Gui -lQt5Core")
set(G4GLQTLIBLIST "-lQt5OpenGL ${G4QTLIBLIST}")
else()
unset(Qt5Core_DIR CACHE)
unset(Qt5Gui_DIR CACHE)
Expand Down
3 changes: 2 additions & 1 deletion cmake/Modules/Geant4OptionalComponents.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -241,13 +241,14 @@ if(GEANT4_USE_ALL_USOLIDS OR GEANT4_USE_PARTIAL_USOLIDS)
endforeach()
GEANT4_ADD_FEATURE(GEANT4_USE_USOLIDS "Replacing Geant4 solids with USolids equivalents for ${GEANT4_USE_PARTIAL_USOLIDS_SHAPE_LIST} (EXPERIMENTAL)")
endif()
list (APPEND GEANT4_USOLIDS_COMPILE_DEFINITIONS ${VECGEOM_DEFINITIONS})

# Combined definitions
add_definitions(${GEANT4_USOLIDS_COMPILE_DEFINITIONS})

# Add USolids inc dirs here - can be removed once USolids supports
# INTERFACE_INCLUDE_DIRECTORIES
include_directories(${USOLIDS_INCLUDE_DIRS})
include_directories(${USOLIDS_INCLUDE_DIRS} ${VECGEOM_EXTERNAL_INCLUDES})
endif()


Expand Down
8 changes: 0 additions & 8 deletions cmake/Modules/Geant4ToolchainBackwardCompatibility.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -481,14 +481,6 @@ macro(_g4tc_configure_tc_variables SHELL_FAMILY SCRIPT_NAME)
if(GEANT4_USE_QT)
_g4tc_setenv_command(GEANT4_TC_QTHOME ${SHELL_FAMILY} QTHOME ${G4QTHOME})
_g4tc_setenv_command(GEANT4_TC_QTLIBPATH ${SHELL_FAMILY} QTLIBPATH ${G4QTLIBPATH})
if(QT4_FOUND)
set(GEANT4_TC_QTLIBS "#Geant4Make automatically handles QTLIBS for Qt4")
set(GEANT4_TC_GLQTLIBS "#Geant4Make automatically handles GLQTLIBS for Qt4")
else()
_g4tc_setenv_command(GEANT4_TC_QTLIBS ${SHELL_FAMILY} QTLIBS "\"-L${G4QTLIBPATH} ${G4QTLIBLIST}\"")
_g4tc_setenv_command(GEANT4_TC_GLQTLIBS ${SHELL_FAMILY} GLQTLIBS "\"-L${G4QTLIBPATH} ${G4GLQTLIBLIST}\"")
endif()

_g4tc_setenv_command(GEANT4_TC_G4UI_USE_QT ${SHELL_FAMILY} G4UI_USE_QT 1)
_g4tc_setenv_command(GEANT4_TC_G4VIS_USE_OPENGLQT ${SHELL_FAMILY} G4VIS_USE_OPENGLQT 1)

Expand Down
9 changes: 6 additions & 3 deletions config/History
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
svn log $Id: History 101512 2016-11-18 15:28:47Z gcosmo $
svn log $Id: History 105125 2017-07-13 14:06:47Z gcosmo $
-------------------------------------------------------------------

=========================================================
Expand All @@ -16,11 +16,14 @@ committal in the CVS repository !
* Reverse chronological order (last date on top), please *
----------------------------------------------------------

18th November 2016 Gunter Folger (config-V10-02-07)
14th March 2017 Gabriele Cosmo (config-V10-02-08)
- Corrected order of linkage in binmake.gmk for analysis global library.

18th November 2016 Gunter Folger (config-V10-02-07)
- add include for analysis/accumulables
- revert change forcing load of libraries

9th November 2016 Gunter Folger (config-V10-02-06) *tag REJECTED*
9th November 2016 Gunter Folger (config-V10-02-06) *tag REJECTED*
- Force loading of symbols for physics_lists/constructor and builders
libraries in granular mode for static libs

Expand Down
6 changes: 3 additions & 3 deletions config/binmake.gmk
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# $Id: binmake.gmk 101512 2016-11-18 15:28:47Z gcosmo $
# $Id: binmake.gmk 105125 2017-07-13 14:06:47Z gcosmo $
# ----------------------------------------------------------
# Script defining rules and paths for making binaries.
# First implementation: Gabriele Cosmo, 25/06/1998.
Expand Down Expand Up @@ -233,8 +233,7 @@ ifdef GLOBALLIBS
LDLIBS2 += -lG3toG4
endif

LDLIBS2 += -lG4analysis \
-lG4error_propagation \
LDLIBS2 += -lG4error_propagation \
-lG4readout \
-lG4physicslists \
-lG4run \
Expand All @@ -248,6 +247,7 @@ ifdef GLOBALLIBS
-lG4geometry \
-lG4materials \
-lG4graphics_reps \
-lG4analysis \
-lG4intercoms \
-lG4global

Expand Down

This file was deleted.

Loading

0 comments on commit 96205ca

Please sign in to comment.