Import Geant4 10.3.0 source tree

This commit is contained in:
Gabriele Cosmo
2016-12-09 12:35:28 +01:00
parent 4ec577e5c4
commit a3452e42ac
3514 changed files with 210500 additions and 89628 deletions
@@ -1,4 +1,4 @@
# $Id: GNUmakefile 85904 2014-11-06 08:50:03Z gcosmo $
# $Id: GNUmakefile 100687 2016-10-31 11:20:33Z gcosmo $
# --------------------------------------------------------------
# GNUmakefile for examples module
# --------------------------------------------------------------
@@ -1,4 +1,4 @@
$Id: History 94007 2015-11-05 10:04:41Z gcosmo $
$Id: History 100687 2016-10-31 11:20:33Z gcosmo $
----------------------------------------------------------------------------
=========================================================
@@ -14,6 +14,25 @@ modifications introduced in the code and keep track of all tags.
* Reverse chronological order (last date on top), please *
----------------------------------------------------------
24/10/2016 I.Hrivnacova (p6decayer-V10-02-05)
- Do not use svn:extternal in the tag
14/10/2016 G.Folger (p6decayer-V10-02-04)
- remove direct use of aParticleIterator, use GetParticleTableIterator().
fix required by clang39 on Linux and MAC
21/07/2016 I.Hrivnacova (p6decayer-V10-02-03)
- Adding extern keyword to data declarations in pythia6_common_address.c
This fixes problem on MAC OSX, where no decay happenned.
20/07/2016 I.Hrivnacova (p6decayer-V10-02-02)
- Fixed compiler warning
- Coding guidelines in common
04/07/2016 I.Hrivnacova (p6decayer-V10-02-01)
(p6decayer-V10-02-00)
- Fixes for Doxygen documentation
04/11/2015 - I.Hrivnacova (p6decayer-V10-01-01)
- Restored common directory (missing in previous tag)
@@ -1,4 +1,4 @@
$Id: README 85904 2014-11-06 08:50:03Z gcosmo $
$Id: README 100687 2016-10-31 11:20:33Z gcosmo $
------------------------------------------------------------
Example of the external decayer implementation with PYTHIA6
@@ -11,17 +11,17 @@
This module is going to be enhanced in future. Currently it provides
the following sets of classes:
- \ref extended_common_detectorConstruction :
- Detector construction classes
- two simple detector construction classes with a messenger
- \ref extended_common_physicsList :
- Physics list classes
- ExG4PhysicsList00 - physics list with geantino and chargedgeantino only
- \ref extended_common_primaryGenerator :
- Primary generator classes
- two simple primary generator classes (with G4ParticleGun and
G4ParticleGeneralSource)
- \ref extended_common_userActions :
- User action classes:
- event action and run action classes with messengers
*/
@@ -15,6 +15,12 @@ track of all tags.
* Reverse chronological order (last date on top), please *
----------------------------------------------------------
20/07/16 I. Hrivnacova (excommon-V10-02-01)
- Coding guidelines (redundant empty lines)
04/07/16 I. Hrivnacova (excommon-V10-02-00)
- Fix for Doxygen documentation
09/06/15 I. Hrivnacova (excommon-V10-01-00)
- Added a client-specific prefix to common library and test
to avoid name clashes when building all extended examples at once
@@ -73,6 +73,5 @@ class ExG4DetectorConstruction01 : public G4VUserDetectorConstruction
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#endif
@@ -23,7 +23,7 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: ExG4DetectorConstruction01Messenger.hh 85714 2014-11-04 14:30:40Z ihrivnac $
// $Id: ExG4DetectorConstruction01Messenger.hh 100687 2016-10-31 11:20:33Z gcosmo $
//
/// \file ExG4DetectorConstruction01Messenger.hh
/// \brief Definition of the ExG4DetectorConstruction01Messenger class
@@ -80,6 +80,5 @@ class ExG4DetectorConstruction02 : public G4VUserDetectorConstruction
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
#endif
@@ -23,7 +23,7 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: ExG4DetectorConstruction02Messenger.hh 85714 2014-11-04 14:30:40Z ihrivnac $
// $Id: ExG4DetectorConstruction02Messenger.hh 100687 2016-10-31 11:20:33Z gcosmo $
//
/// \file ExG4DetectorConstruction02Messenger.hh
/// \brief Definition of the ExG4DetectorConstruction02Messenger class
@@ -49,9 +49,3 @@ class ExG4PhysicsList00: public G4VUserPhysicsList
#endif
@@ -65,4 +65,3 @@ class ExG4PrimaryGeneratorAction01 : public G4VUserPrimaryGeneratorAction
#endif
@@ -66,4 +66,3 @@ class ExG4PrimaryGeneratorAction02 : public G4VUserPrimaryGeneratorAction
#endif
@@ -37,7 +37,6 @@
#include "G4LogicalVolume.hh"
#include "G4PVPlacement.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
ExG4DetectorConstruction01::ExG4DetectorConstruction01(
@@ -23,7 +23,7 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: ExG4DetectorConstruction01Messenger.cc 85714 2014-11-04 14:30:40Z ihrivnac $
// $Id: ExG4DetectorConstruction01Messenger.cc 100687 2016-10-31 11:20:33Z gcosmo $
//
/// \file ExG4DetectorConstruction01Messenger.cc
/// \brief Implementation of the ExG4DetectorConstruction01Messenger class
@@ -37,7 +37,6 @@
#include "G4LogicalVolume.hh"
#include "G4PVPlacement.hh"
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
ExG4DetectorConstruction02::ExG4DetectorConstruction02(
@@ -34,7 +34,6 @@
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
ExG4PhysicsList00::ExG4PhysicsList00()
: G4VUserPhysicsList()
{}
@@ -40,7 +40,6 @@
#include "G4RunManager.hh"
#include "FTFP_BERT.hh"
// Test program which only instantiates classes defined in
// examples/common
@@ -83,4 +82,3 @@ int main()
return 0;
}
@@ -23,7 +23,7 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: EDecayType.hh 72244 2013-07-12 08:49:56Z gcosmo $
// $Id: EDecayType.hh 100687 2016-10-31 11:20:33Z gcosmo $
//
/// \file eventgenerator/pythia/decayer6/include/EDecayType.hh
/// \brief Definition of the EDecayType enumeration
@@ -24,7 +24,7 @@
// ********************************************************************
//
//
// $Id: G4Pythia6Decayer.hh 72244 2013-07-12 08:49:56Z gcosmo $
// $Id: G4Pythia6Decayer.hh 100687 2016-10-31 11:20:33Z gcosmo $
//
/// \file eventgenerator/pythia/decayer6/include/G4Pythia6Decayer.hh
/// \brief Definition of the G4Pythia6Decayer class
@@ -39,7 +39,7 @@
#include "globals.hh"
class Pythia6Particle;
struct Pythia6Particle;
class G4Track;
class G4DecayProducts;
@@ -24,7 +24,7 @@
// ********************************************************************
//
//
// $Id: G4Pythia6DecayerMessenger.hh 72244 2013-07-12 08:49:56Z gcosmo $
// $Id: G4Pythia6DecayerMessenger.hh 100687 2016-10-31 11:20:33Z gcosmo $
//
/// \file eventgenerator/pythia/decayer6/include/G4Pythia6DecayerMessenger.hh
/// \brief Definition of the G4Pythia6DecayerMessenger class
@@ -23,7 +23,7 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: P6DExtDecayerPhysics.hh 72244 2013-07-12 08:49:56Z gcosmo $
// $Id: P6DExtDecayerPhysics.hh 100687 2016-10-31 11:20:33Z gcosmo $
//
/// \file eventgenerator/pythia/decayer6/include/P6DExtDecayerPhysics.hh
/// \brief Definition of the P6DExtDecayerPhysics class
@@ -23,7 +23,7 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: Pythia6.hh 72244 2013-07-12 08:49:56Z gcosmo $
// $Id: Pythia6.hh 100687 2016-10-31 11:20:33Z gcosmo $
//
/// \file eventgenerator/pythia/decayer6/include/Pythia6.hh
/// \brief Definition of the Pythia6 class
@@ -23,7 +23,7 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: pythia6_decayer.cc 81443 2014-05-28 14:26:55Z gcosmo $
// $Id: pythia6_decayer.cc 100687 2016-10-31 11:20:33Z gcosmo $
//
/// \file eventgenerator/pythia/decayer6/pythia6_decayer.cc
/// \brief Main program of the pythia6Decayer example
@@ -51,7 +51,6 @@
#include "Randomize.hh"
int main(int argc,char** argv)
{
// Choose the Random engine
@@ -23,7 +23,7 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: G4Pythia6Decayer.cc 81443 2014-05-28 14:26:55Z gcosmo $
// $Id: G4Pythia6Decayer.cc 100687 2016-10-31 11:20:33Z gcosmo $
//
/// \file eventgenerator/pythia/decayer6/src/G4Pythia6Decayer.cc
/// \brief Implementation of the G4Pythia6Decayer class
@@ -79,7 +79,6 @@ G4Pythia6Decayer::~G4Pythia6Decayer()
// private methods
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
G4ParticleDefinition* G4Pythia6Decayer::
@@ -23,7 +23,7 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: G4Pythia6DecayerMessenger.cc 72244 2013-07-12 08:49:56Z gcosmo $
// $Id: G4Pythia6DecayerMessenger.cc 100687 2016-10-31 11:20:33Z gcosmo $
//
/// \file eventgenerator/pythia/decayer6/src/G4Pythia6DecayerMessenger.cc
/// \brief Implementation of the G4Pythia6DecayerMessenger class
@@ -23,7 +23,7 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: P6DExtDecayerPhysics.cc 72244 2013-07-12 08:49:56Z gcosmo $
// $Id: P6DExtDecayerPhysics.cc 100687 2016-10-31 11:20:33Z gcosmo $
//
/// \file eventgenerator/pythia/decayer6/src/P6DExtDecayerPhysics.cc
/// \brief Implementation of the P6DExtDecayerPhysics class
@@ -75,15 +75,16 @@ void P6DExtDecayerPhysics::ConstructProcess()
extDecayer->SetVerboseLevel(1);
// The extDecayer will be deleted in G4Decay destructor
aParticleIterator->reset();
while ((*aParticleIterator)())
auto particleIterator=GetParticleIterator();
particleIterator->reset();
while ((*particleIterator)())
{
G4ParticleDefinition* particle = aParticleIterator->value();
G4ParticleDefinition* particle = particleIterator->value();
G4ProcessManager* pmanager = particle->GetProcessManager();
if ( verboseLevel > 1 ) {
G4cout << "Setting ext decayer for: "
<< aParticleIterator->value()->GetParticleName()
<< particleIterator->value()->GetParticleName()
<< G4endl;
}
@@ -23,7 +23,7 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: Pythia6.cc 72244 2013-07-12 08:49:56Z gcosmo $
// $Id: Pythia6.cc 100687 2016-10-31 11:20:33Z gcosmo $
//
/// \file eventgenerator/pythia/decayer6/src/Pythia6.cc
/// \brief Implementation of the Pythia6 class
@@ -104,12 +104,20 @@
# define type_of_call _stdcall
#endif
// pythia6 functions
extern "C" {
int type_of_call pycomp(int *kf);
void type_of_call py1ent(int&, int&, double&, double&, double&);
void* pythia6_common_address(const char*);
}
// Direct declaration of pythia6 common blocks
// extern "C" {
// extern Pyjets_t pyjets_;
// extern Pydat1_t pydat1_;
// extern Pydat3_t pydat3_;
// }
Pythia6* Pythia6::fgInstance = 0;
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -144,10 +152,16 @@ Pythia6::Pythia6()
fParticles = new ParticleVector();
// initialize common-blocks
// Initialize common-blocks
fPyjets = (Pyjets_t*) pythia6_common_address("PYJETS");
fPydat1 = (Pydat1_t*) pythia6_common_address("PYDAT1");
fPydat3 = (Pydat3_t*) pythia6_common_address("PYDAT3");
// Alternative way to initialize common-blocks
// usind direct declaration of pythia6 common blocks
// fPyjets = &pyjets_;
// fPydat1 = &pydat1_;
// fPydat3 = &pydat3_;
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -23,7 +23,7 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: pythia6_common_address.c 72244 2013-07-12 08:49:56Z gcosmo $
// $Id: pythia6_common_address.c 100687 2016-10-31 11:20:33Z gcosmo $
//
// According to pythia6_common_address.c provided in Root
// Pythia6 distribution:
@@ -49,16 +49,14 @@
# define type_of_call _stdcall
#endif
int pyjets[2+5*4000+2*2*5*4000];
int pydat1[200+2*200+200+2*200];
int pydat3[3*500+2*8000+2*8000+5*8000]; /* KNDCAY=8000 */
extern int pyjets[2+5*4000+2*2*5*4000];
extern int pydat1[200+2*200+200+2*200];
extern int pydat3[3*500+2*8000+2*8000+5*8000]; /* KNDCAY=8000 */
void *pythia6_common_address(const char* name)
void* pythia6_common_address(const char* name)
{
if (!strcmp(name,"PYJETS")) return pyjets;
else if (!strcmp(name,"PYDAT1")) return pydat1;
else if (!strcmp(name,"PYDAT3")) return pydat3;
return 0;
}
@@ -1,4 +1,4 @@
# $Id: vis.mac 72244 2013-07-12 08:49:56Z gcosmo $
# $Id: vis.mac 100687 2016-10-31 11:20:33Z gcosmo $
#
# Macro file for the initialization phase
# when running in interactive mode