Skip to content

Commit

Permalink
Import Geant4 10.4.2 source tree
Browse files Browse the repository at this point in the history
  • Loading branch information
gcosmo committed May 25, 2018
1 parent fe04dcb commit fe81a77
Show file tree
Hide file tree
Showing 233 changed files with 34,409 additions and 95,779 deletions.
4 changes: 2 additions & 2 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 108564 2018-02-16 10:19:00Z gcosmo $
# $Id: CMakeLists.txt 110078 2018-05-15 10:04:54Z gcosmo $
#

#-----------------------------------------------------------------------
Expand Down Expand Up @@ -38,7 +38,7 @@ set(CMAKE_USER_MAKE_RULES_OVERRIDE_CXX
project(Geant4)
set(${PROJECT_NAME}_VERSION_MAJOR 10)
set(${PROJECT_NAME}_VERSION_MINOR 4)
set(${PROJECT_NAME}_VERSION_PATCH 1)
set(${PROJECT_NAME}_VERSION_PATCH 2)
set(${PROJECT_NAME}_VERSION "${${PROJECT_NAME}_VERSION_MAJOR}.${${PROJECT_NAME}_VERSION_MINOR}.${${PROJECT_NAME}_VERSION_PATCH}")

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

Geant4 10.4 - patch-02 Release Notes
------------------------------------

25 May 2018

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

o Configuration:
-------------
+ CMake:
o Updated to data-set G4RealSurface-2.1.1.
Addressing problem report #2043.
+ GNUMake:
o architecture.gmk: corrected default path for external expat and zlib.
o Darwing-clang.gmk: removed -pthread and -fPIC compilation options.
o WIN32-VC.gmk: updated obsolete configuration for Qt5.

o Event:
-----
o Use G4TrackStack as default and make use of G4SmartTrackStack optional.
Addressing problem report #2040.

o Externals:
---------
+ Corrected GNUmakefile on Windows.

o Geometry:
--------
+ navigation:
o G4PathFinder: in DoNextLinearStep(), use flag for relocated point to
signal move from call to ReLocate(), and ensure that new point is used
in cross-checks in subsequent Locate().
Fix to revert change previously introduced in release 10.4, to keep
fMinStep as 'logical' value, which can be kInfinity when step is not
limited by Navigators. Resolves warnings issued by G4PathFinder for
inaccuracies in relocation. Addressing problem report #2033.
o G4Navigator::GetLocalExitNormal(): fix for normal calculated at the
endpoint of current step, on a 'candidate' next volume. Adds missing
transformation to the frame of the current volume.
Addresses problem report #2054.
o G4Navigator: fix in Set/RestoreSavedState() for setting of
ReplicaNumber.
o G4SafetyHelper: do not limit memorisation of safety in case of parallel
geometries (when a length is not passed to safety method).
Fix to include full message in Exception.
+ solids/Boolean:
o G4BooleanSolid: enhanced warning message for the case of an invalid
(NULL) Boolean construct in GetPointOnSurface() and StackPolyhedron().
Use -1 instead of 0 as default initialisation value for area and
capacity, so to distinguish cases when values are zero referring to
NULL Boolean constructs.
o G4UnionSolid: define simple bounding-box and make use of early returns
in Inside() for points laying outside.
o Improved contruction of G4DiplacedSolid to combine transformations for
nested displaced types.
o Replaced USOLIDS_LIBRARIES with VECGEOM_LIBRARIES in sources.cmake.
+ solids/CSG:
o G4Box: simplified and optimised calculation of normal in method
DistanceToOut(p,v,..).
o Replaced USOLIDS_LIBRARIES with VECGEOM_LIBRARIES in sources.cmake.
+ solids/specific:
o Corrected conversion of input parameters to internal structure (used
for caching for adoption in GDML persistency) in G4UPolycone and
G4UPolyhedra wrappers.
o Replaced USOLIDS_LIBRARIES with VECGEOM_LIBRARIES in sources.cmake.

o Global:
------
+ Updated date and version for 10.4.p02.

o Interfaces:
----------
+ G4UIQt: fixed bug with command guidance including HTML tags inside
(<, > and &) and for "critical errors" message.

o Particles:
---------
+ G4PhaseSpaceDecayChannel: fixed incorrect indexing in ManyBodyDecayIt(),
causing incorrect setting of daughter momentum in 4-body phase-space
decay. Addressing problem report #2053.

o Persistency - gdml
------------------
+ Protect printout of progress in reading/writing by G4VERBOSE.

o Physics Lists
-------------
+ constructors/electromagnetic:
o G4EmModelActivator: fix for Opt4 and single-scattering activation.
Addressing problem report #2045.

o Processes - Electromagnetic:
---------------------------
+ lowenergy:
o G4LivermorePhotoElectricModel: fixed incorrect deletion of static
members when models defined per region. Addressing problem report #2052.

o Processes - Hadronic:
--------------------
+ models/particle_hp:
o G4ParticleHPFissionFS: protect against very rare cases of division
by zero.
+ models/radioactive_decay:
o G4RadioactiveDecay: in ConvolveSourceTimeProfile(), switch from
std::exp() to std::expm1() where small exp arguments are expected.
This greatly reduces cancellation errors as well as the accumulated
error in the variance reduction weight calculation. Although negative
weights still occur, their size is reduced by about ten orders of
magnitude, enough to set negative weights to zero.
G4Radioactivation::ConvolveSourceTimeProfile(): same as above.
Addresses problem report #1480.
o Make sure last stable nuclide in decay chain is included as secondary
in G4RadioactiveDecay::AddDeexcitationSpectrumForBiasMode() and in
G4Radioactivation::AddDeexcitationSpectrumForBiasMode().
Addresses problem report #2024.

o Run:
---
+ G4ExceptionHandler: added track/step/volume information when an
exception happens while event is being processed.

o Visualization:
-------------
+ modeling:
o Fixed bug in calculation of mass of parallel world, protecting for
the case of no material assigned. Addressing problem report #2039.
+ Tree:
o Fixed bug in suppressed writing of repeated parameterised volumes.
o Improved command guidance and advice printing.

o Data sets:
---------
+ Patched data set for measured optical surface reflectance
G4RealSurface-2.1.1:
o Merged LBNL LUTs data introduced in 2.0 with the Davis LUTs.
Addressing problem report #2043.

o Examples:
--------
+ extended/optical/LXe:
o Fixed header guard. Addressing problem report #2041.

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

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

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

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

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

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

23rd May 2018 - Gunter Folger (cmake-V10-03-54)
- Update Geant4DatasetDefinitions to use G4RealSurface 2.1.1
patched version bringing back data lost in 2.1

26th February 2018 - Ben Morgan (cmake-V10-03-53, 52)
- Geant4InstallData.cmake, Geant4CTest.cmake: Update URL for downloads
to "cern.ch/geant4-data" as the correct alias to new EOS area, seperate
Expand Down
4 changes: 2 additions & 2 deletions cmake/Modules/Geant4DatasetDefinitions.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -68,11 +68,11 @@ geant4_add_dataset(
# - Optical Surfaces
geant4_add_dataset(
NAME RealSurface
VERSION 2.1
VERSION 2.1.1
FILENAME G4RealSurface
EXTENSION tar.gz
ENVVAR G4REALSURFACEDATA
MD5SUM f1c72b31d45905f011e2ec4ea96612f4
MD5SUM 1d0fcc24c7082edae1e22a3d43fbb4d9
)

# - SAID
Expand Down
14 changes: 13 additions & 1 deletion config/History
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
svn log $Id: History 108466 2018-02-15 13:48:04Z gcosmo $
svn log $Id: History 110053 2018-05-15 08:55:49Z gcosmo $
-------------------------------------------------------------------

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

12th April 2018 Gabriele Cosmo (config-V10-03-09)
- WIN32-VC.gmk: updated obsolete configuration for Qt5.

20th March 2018 Gabriele Cosmo
- architecture.gmk: corrected default path for external expat and zlib.

19th March 2018 Gabriele Cosmo
- architecture.gmk: corrected settings for external expat and zlib.

9th March 2018 Gabriele Cosmo
- Darwing-clang.gmk: removed -pthread and -fPIC compilation options.

14th February 2018 Gabriele Cosmo (config-V10-03-08)
- Disable "-Wl,-force_load" global linker flag for static libraries in macro
Darwing-clang.gmk.
Expand Down
40 changes: 34 additions & 6 deletions config/architecture.gmk
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# $Id: architecture.gmk 107491 2017-11-16 09:38:59Z gcosmo $
# $Id: architecture.gmk 110053 2018-05-15 08:55:49Z gcosmo $
# ------------------------------------------------------------------------
# GEANT 4 - Architecture configuration script for GNU Make
#
Expand Down Expand Up @@ -288,13 +288,41 @@ endif
ifneq (,$(findstring WIN32-VC,$(G4SYSTEM)))
LDFLAGS += -link $(LIB_PATH)$(G4INSTALL)/lib
endif
ifeq (,$(findstring WIN32-VC,$(G4SYSTEM)))
ifndef G4LIB_USE_EXPAT
LOADLIBS += -lexpat

ifndef G4LIB_USE_EXPAT
ifndef EXPATROOT
EXPATROOT := /usr
endif
ifndef EXPATFLAGS
EXPATFLAGS := -I$(EXPATROOT)/include
endif
ifndef G4LIB_USE_ZLIB
LOADLIBS += -lz
ifndef EXPATLIBS
ifneq (,$(findstring WIN32-VC,$(G4SYSTEM)))
EXPATLIBS := $(LIB_PATH)$(EXPATROOT)/lib expat.lib
else
EXPATLIBS := -L$(EXPATROOT)/lib -lexpat
endif
endif
CPPFLAGS += $(EXPATFLAGS)
LOADLIBS += $(EXPATLIBS)
endif

ifndef G4LIB_USE_ZLIB
ifndef ZLIBROOT
ZLIBROOT := /usr
endif
ifndef ZLIBFLAGS
ZLIBFLAGS := -I$(ZLIBROOT)/include
endif
ifndef ZLIBLIBS
ifneq (,$(findstring WIN32-VC,$(G4SYSTEM)))
ZLIBLIBS := $(LIB_PATH)$(ZLIBROOT)/lib zlib.lib
else
ZLIBLIBS := -L$(ZLIBROOT)/lib -lz
endif
endif
CPPFLAGS += $(ZLIBFLAGS)
LOADLIBS += $(ZLIBLIBS)
endif

# Graphic variables...
Expand Down
7 changes: 1 addition & 6 deletions config/sys/Darwin-clang.gmk
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ ifeq ($(G4SYSTEM),Darwin-clang)
endif
endif
ifdef G4MULTITHREADED
CXXFLAGS += -ftls-model=initial-exec -pthread
CXXFLAGS += -ftls-model=initial-exec
endif
ifdef G4OPTIMISE
CXXFLAGS += -O3
Expand All @@ -47,11 +47,6 @@ ifeq ($(G4SYSTEM),Darwin-clang)
FCFLAGS += -O2 -g
CCFLAGS += -O2 -g
endif
ifdef G4LIB_BUILD_SHARED
CXXFLAGS += -fPIC
FCFLAGS += -fPIC
CCFLAGS += -fPIC
endif
G4RUNPATHOPTION := -Wl,-rpath
# G4STATIC_MODE += -Wl,-force_load
FC := gfortran
Expand Down
23 changes: 12 additions & 11 deletions config/sys/WIN32-VC.gmk
Original file line number Diff line number Diff line change
Expand Up @@ -38,20 +38,24 @@ ifeq ($(G4SYSTEM),WIN32-VC)
UI32LIBS := gdi32.lib user32.lib
endif
ifndef QTHOME
QTHOME := /usr
QTHOME := /Qt
endif
ifndef QTFLAGS
QTFLAGS := -I$(QTHOME)/include/Qt -I$(QTHOME)/include
ifndef QTFLAGS # Qt5
QTFLAGS := -I$(QTHOME)/include
QTFLAGS += -I$(QTHOME)/include/QtCore
QTFLAGS += -I$(QTHOME)/include/QtGui
QTFLAGS += -I$(QTHOME)/include/QtWidgets
QTFLAGS += -I$(QTHOME)/include/QtOpenGL
QTFLAGS += -I$(QTHOME)/include/QtPrintSupport
endif
ifndef QTMOC
QTMOC := $(QTHOME)/bin/moc
QTMOC := $(QTHOME)/bin/moc
endif

ifndef QTLIBS
QTLIBS := -L$(QTHOME)/lib QtCore4.lib QtGui4.lib
ifndef QTLIBS # Qt5
QTLIBS := $(LIB_PATH)$(QTHOME)/lib Qt5Core.lib Qt5Gui.lib Qt5Widgets.lib Qt5PrintSupport.lib
endif
ifndef GLQTLIBS
GLQTLIBS := -L$(QTHOME)/lib QtCore4.lib QtGui4.lib QtOpenGL4.lib
GLQTLIBS := $(LIB_PATH)$(QTHOME)/lib Qt5Core.lib Qt5Gui.lib Qt5Widgets.lib Qt5OpenGL.lib Qt5PrintSupport.lib
endif

#
Expand All @@ -77,9 +81,6 @@ ifeq ($(G4SYSTEM),WIN32-VC)
# Note that a DLL must be fully linked. You should NOT have undefined
# symbols as output of the link command.
#
ifdef G4LIB_USE_USOLIDS
GLOBLIBS += libG4geomUSolids.lib
endif
ifdef G4LIB_USE_CLHEP
GLOBLIBS += libG4clhep.lib
endif
Expand Down
Loading

0 comments on commit fe81a77

Please sign in to comment.