Import Geant4 11.3.0.beta source tree

This commit is contained in:
Gabriele Cosmo
2024-06-28 13:08:51 +02:00
parent f7b23877ed
commit e58e650b32
5232 changed files with 239416 additions and 244360 deletions
+11 -1
View File
@@ -6,11 +6,21 @@ It must **not** be used as a substitute for writing good git commit messages!
-------------------------------------------------------------------------------
## 2024-04-21 Gabriele Cosmo (geomnav-V11-01-09)
## 2024-05-15 Ivana Hrivnacova (geomnav-V11-02-02)
- Let G4TransportationManager notify G4FieldManager about the global
field via newly added G4FieldManager::SetGlobalFieldManager().
This allows to acces the global field manager direcly via G4FieldManager
without dependency on G4navigation.
## 2024-04-21 Gabriele Cosmo (geomnav-V11-02-01)
- Fixed compilation error in G4Navigator on Windows VC++ with
C++20 Standard enabled.
Based on [GitHub PR#69](https://github.com/Geant4/geant4/pull/69).
## 2024-04-02 Gabriele Cosmo (geomnav-V11-02-00)
- Applied trivial clang-tidy fixes to classes, i.e. use of 'override' and
removal of 'virtual' keywords; use of default constructor/destructor.
## 2023-11-17 Gabriele Cosmo (geomnav-V11-01-08)
- Fixed "/geometry/test/check_parallel" UI command in G4GeometryMessenger.
@@ -54,7 +54,7 @@ class G4DrawVoxels
// Copy constructor and assignment operator not supported (array
// fvoxelcolours ...).
~G4DrawVoxels();
~G4DrawVoxels() = default;
// Destructor NOT virtual. Not a base class.
void DrawVoxels(const G4LogicalVolume* lv) const;
@@ -31,22 +31,21 @@
// on the target surface for error propagation. It overloads ComputeStep()
// and ComputeSafety() methods.
// History:
// - Created. P. Arce, September 2004
// Created. P. Arce, September 2004
// --------------------------------------------------------------------
#ifndef G4ErrorPropagationNavigator_hh
#define G4ErrorPropagationNavigator_hh
#define G4ErrorPropagationNavigator_hh 1
#include "G4Navigator.hh"
#include "G4ThreeVector.hh"
class G4ErrorPropagationNavigator : public G4Navigator
{
public: // with description
public:
G4ErrorPropagationNavigator();
~G4ErrorPropagationNavigator() override;
G4ErrorPropagationNavigator() = default;
~G4ErrorPropagationNavigator() override = default;
G4double ComputeStep (const G4ThreeVector &pGlobalPoint,
const G4ThreeVector &pDirection,
@@ -56,7 +56,7 @@ class G4NormalNavigation : public G4VNavigation
G4NormalNavigation();
// Constructor
~G4NormalNavigation();
~G4NormalNavigation() override;
// Destructor
inline G4bool LevelLocate( G4NavigationHistory &history,
@@ -89,8 +89,8 @@ class G4NormalNavigation : public G4VNavigation
const G4NavigationHistory &history,
const G4double pMaxLength=DBL_MAX ) final;
virtual G4int GetVerboseLevel() const final;
virtual void SetVerboseLevel(G4int level) final;
G4int GetVerboseLevel() const final;
void SetVerboseLevel(G4int level) final;
// Get/Set Verbose(ness) level.
// [if level>0 && G4VERBOSE, printout can occur]
@@ -30,11 +30,10 @@
// Describes partial regular parameterisations, i.e. the voxels do not
// completely fill the container in the three dimensions
// History:
// - Created: P.Arce, September 2010
// --------------------------------------------------------------------
#ifndef G4PartialPhantomParameterisation_HH
#define G4PartialPhantomParameterisation_HH
#ifndef G4PartialPhantomParameterisation_hh
#define G4PartialPhantomParameterisation_hh 1
#include <map>
#include <set>
@@ -52,10 +51,10 @@ class G4Material;
class G4PartialPhantomParameterisation : public G4PhantomParameterisation
{
public: // with description
public:
G4PartialPhantomParameterisation();
~G4PartialPhantomParameterisation() override;
G4PartialPhantomParameterisation() = default;
~G4PartialPhantomParameterisation() override = default;
void ComputeTransformation(const G4int, G4VPhysicalVolume *) const override;
@@ -53,7 +53,7 @@ class G4RegularNavigation : public G4VNavigation
public: // with description
G4RegularNavigation();
~G4RegularNavigation();
~G4RegularNavigation() override;
G4bool LevelLocate( G4NavigationHistory& history,
const G4VPhysicalVolume* blockedVol,
@@ -77,10 +77,10 @@ struct G4ExitNormal
class G4ReplicaNavigation
{
public: // with description
public:
G4ReplicaNavigation();
~G4ReplicaNavigation();
~G4ReplicaNavigation() = default;
inline G4bool LevelLocate( G4NavigationHistory& history,
const G4VPhysicalVolume* blockedVol,
@@ -49,7 +49,7 @@ class G4VExternalNavigation : public G4VNavigation
G4VExternalNavigation();
// Constructor
virtual ~G4VExternalNavigation();
~G4VExternalNavigation() override;
// Destructor
virtual G4VExternalNavigation* Clone() = 0;
@@ -62,8 +62,8 @@ class G4VExternalNavigation : public G4VNavigation
// Special 'Inside' call that includes direction of next motion
// provided for potential optimisations.
virtual void RelocateWithinVolume( G4VPhysicalVolume* motherPhysical,
const G4ThreeVector& localPoint );
void RelocateWithinVolume( G4VPhysicalVolume* motherPhysical,
const G4ThreeVector& localPoint ) override;
// Update any relevant internal state to take account that
// - the location has been moved to 'localPoint'
// - it remains in the current (mother) physical volume 'motherPhysical'
@@ -49,7 +49,7 @@ class G4VNavigation
{
public:
/** Virtual Destructor. */
virtual ~G4VNavigation() {}
virtual ~G4VNavigation() = default;
/**
* Search positioned volumes in mother at current top level of @p history
@@ -66,40 +66,40 @@ class G4VoxelNavigation : public G4VNavigation
public: // with description
G4VoxelNavigation();
virtual ~G4VoxelNavigation();
~G4VoxelNavigation() override;
G4SmartVoxelNode* VoxelLocate( G4SmartVoxelHeader* pHead,
const G4ThreeVector& localPoint );
const G4ThreeVector& localPoint );
virtual G4bool LevelLocate( G4NavigationHistory& history,
const G4VPhysicalVolume* blockedVol,
const G4int blockedNum,
const G4ThreeVector& globalPoint,
const G4ThreeVector* globalDirection,
const G4bool pLocatedOnEdge,
G4ThreeVector& localPoint ) override;
G4bool LevelLocate( G4NavigationHistory& history,
const G4VPhysicalVolume* blockedVol,
const G4int blockedNum,
const G4ThreeVector& globalPoint,
const G4ThreeVector* globalDirection,
const G4bool pLocatedOnEdge,
G4ThreeVector& localPoint ) override;
virtual G4double ComputeStep( const G4ThreeVector& globalPoint,
const G4ThreeVector& globalDirection,
const G4double currentProposedStepLength,
G4double& newSafety,
G4NavigationHistory& history,
G4bool& validExitNormal,
G4ThreeVector& exitNormal,
G4bool& exiting,
G4bool& entering,
G4VPhysicalVolume* (*pBlockedPhysical),
G4int& blockedReplicaNo ) override;
G4double ComputeStep( const G4ThreeVector& globalPoint,
const G4ThreeVector& globalDirection,
const G4double currentProposedStepLength,
G4double& newSafety,
G4NavigationHistory& history,
G4bool& validExitNormal,
G4ThreeVector& exitNormal,
G4bool& exiting,
G4bool& entering,
G4VPhysicalVolume* (*pBlockedPhysical),
G4int& blockedReplicaNo ) override;
virtual G4double ComputeSafety( const G4ThreeVector& globalpoint,
const G4NavigationHistory& history,
const G4double pMaxLength = DBL_MAX ) override;
G4double ComputeSafety( const G4ThreeVector& globalpoint,
const G4NavigationHistory& history,
const G4double pMaxLength = DBL_MAX ) override;
virtual void RelocateWithinVolume( G4VPhysicalVolume* motherPhysical,
const G4ThreeVector& localPoint ) override;
void RelocateWithinVolume( G4VPhysicalVolume* motherPhysical,
const G4ThreeVector& localPoint ) override;
virtual G4int GetVerboseLevel() const override;
virtual void SetVerboseLevel(G4int level) override;
G4int GetVerboseLevel() const override;
void SetVerboseLevel(G4int level) override;
// Get/Set Verbose(ness) level.
// [if level>0 && G4VERBOSE, printout can occur]
@@ -52,10 +52,6 @@ G4DrawVoxels::G4DrawVoxels()
fBoundingBoxVisAttributes.SetColour(G4Colour(.3,0.,.2));
}
// Destructor
//
G4DrawVoxels::~G4DrawVoxels() = default;
// Methods that allow changing colors of the drawing
//
void G4DrawVoxels::SetVoxelsVisAttributes(G4VisAttributes& VA_voxelX,
@@ -38,19 +38,6 @@
#include "G4ErrorPlaneSurfaceTarget.hh"
#include "G4ErrorCylSurfaceTarget.hh"
//-------------------------------------------------------------------
G4ErrorPropagationNavigator::G4ErrorPropagationNavigator()
{
}
//-------------------------------------------------------------------
G4ErrorPropagationNavigator::~G4ErrorPropagationNavigator() = default;
//-------------------------------------------------------------------
G4double G4ErrorPropagationNavigator::
ComputeStep ( const G4ThreeVector &pGlobalPoint,
const G4ThreeVector &pDirection,
@@ -40,15 +40,6 @@
#include <list>
//------------------------------------------------------------------
G4PartialPhantomParameterisation::G4PartialPhantomParameterisation()
{
}
//------------------------------------------------------------------
G4PartialPhantomParameterisation::~G4PartialPhantomParameterisation() = default;
//------------------------------------------------------------------
void G4PartialPhantomParameterisation::
ComputeTransformation( const G4int copyNo, G4VPhysicalVolume *physVol ) const
@@ -25,7 +25,6 @@
// class G4ReplicaNavigation Implementation
//
// Author: P.Kent, 1996
//
// --------------------------------------------------------------------
#include "G4ReplicaNavigation.hh"
@@ -61,12 +60,6 @@ G4ReplicaNavigation::G4ReplicaNavigation()
fMinStep = 0.05*kCarTolerance;
}
// ********************************************************************
// Destructor
// ********************************************************************
//
G4ReplicaNavigation::~G4ReplicaNavigation() = default;
// ********************************************************************
// Inside
// ********************************************************************
@@ -84,6 +84,8 @@ G4TransportationManager::G4TransportationManager()
fFieldManager = new G4FieldManager(); // deleted by G4FieldManagerStore
fPropagatorInField= new G4PropagatorInField(trackingNavigator,fFieldManager);
fSafetyHelper = new G4SafetyHelper();
G4FieldManager::SetGlobalFieldManager(fFieldManager);
}
// ----------------------------------------------------------------------------
@@ -130,6 +132,7 @@ G4TransportationManager* G4TransportationManager::GetInstanceIfExist()
void G4TransportationManager::SetFieldManager(G4FieldManager* newFieldManager)
{
fFieldManager = newFieldManager;
G4FieldManager::SetGlobalFieldManager(fFieldManager);
// Message the PropagatorInField,
// which also maintains this information (to be reviewed)