Import Geant4 3.2.0 source tree

This commit is contained in:
Gabriele Cosmo
2016-06-08 16:10:37 +02:00
parent 137e303ecc
commit 36c080dca6
3464 changed files with 119310 additions and 52696 deletions
@@ -1,4 +1,26 @@
//
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * GEANT4 collaboration. *
// * By copying, distributing or modifying the Program (or any work *
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
//
//
#include "globals.hh"
#include "G4BetaFermiFunction.hh"
@@ -1,3 +1,25 @@
//
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * GEANT4 collaboration. *
// * By copying, distributing or modifying the Program (or any work *
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
//
// %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
//
// MODULES: G4NuclearDecayChannel.cc
@@ -341,7 +363,7 @@ G4DecayProducts *G4NuclearDecayChannel::DecayIt (G4double theParentMass)
// if (gammas!=0) nGammas=gammas->entries();
// in the case of BreakItUp(nucleus), the returned G4FragmentVector contains the residual nuclide
// as its last entry.
if (gammas > 0) nGammas=gammas->entries()-1;
if (gammas > 0) nGammas=gammas->size()-1;
//
//
// Go through each gamma and add it to the decay product. The angular distribution
@@ -355,7 +377,7 @@ G4DecayProducts *G4NuclearDecayChannel::DecayIt (G4double theParentMass)
G4double phi = twopi * G4UniformRand();
G4ParticleMomentum gDirection
(sintheta*cos(phi),sintheta*sin(phi),costheta);
G4double gEnergy = gammas->at(ig)->GetMomentum().e();
G4double gEnergy = gammas->operator[](ig)->GetMomentum().e();
G4DynamicParticle *theGammaRay = new
G4DynamicParticle (G4Gamma::GammaDefinition(), gDirection, gEnergy);
products->PushProducts (theGammaRay);
@@ -365,7 +387,11 @@ G4DecayProducts *G4NuclearDecayChannel::DecayIt (G4double theParentMass)
// Delete/reset variables associated with the gammas.
//
// if (nGammas != 0) gammas->clearAndDestroy();
gammas->clearAndDestroy();
while (!gammas->empty()) {
delete *(gammas->end()-1);
gammas->pop_back();
}
// gammas->clearAndDestroy();
delete gammas;
delete deexcitation;
//
@@ -1,3 +1,25 @@
//
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * GEANT4 collaboration. *
// * By copying, distributing or modifying the Program (or any work *
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
//
// %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
//
// MODULE: G4NucleusLimits.cc
@@ -1,3 +1,25 @@
//
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * GEANT4 collaboration. *
// * By copying, distributing or modifying the Program (or any work *
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
//
// %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
//
// MODULE: G4RIsotopeTable.cc
@@ -1,3 +1,25 @@
//
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * GEANT4 collaboration. *
// * By copying, distributing or modifying the Program (or any work *
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
//
// %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
//
// MODULE: G4RadioactiveDecay.cc
@@ -204,8 +226,8 @@ void G4RadioactiveDecay::SelectAVolume(const G4String aVolume)
G4LogicalVolumeStore *theLogicalVolumes;
G4LogicalVolume *volume;
theLogicalVolumes=G4LogicalVolumeStore::GetInstance();
for (G4int i = 0; i < theLogicalVolumes->entries(); i++){
volume=theLogicalVolumes->operator()(i);
for (G4int i = 0; i < theLogicalVolumes->size(); i++){
volume=(*theLogicalVolumes)[i];
if (volume->GetName() == aVolume) {
ValidVolumes.push_back(aVolume);
G4std::sort(ValidVolumes.begin(), ValidVolumes.end());
@@ -214,7 +236,7 @@ void G4RadioactiveDecay::SelectAVolume(const G4String aVolume)
if (GetVerboseLevel()>0)
G4cout << " RDM Applies to : " << aVolume << G4endl;
#endif
}else if(i == theLogicalVolumes->entries())
}else if(i == theLogicalVolumes->size())
{
G4cerr << "SelectAVolume: "<<aVolume << " is not a valid logical volume name"<< G4endl;
}
@@ -230,8 +252,8 @@ void G4RadioactiveDecay::DeselectAVolume(const G4String aVolume)
G4LogicalVolumeStore *theLogicalVolumes;
G4LogicalVolume *volume;
theLogicalVolumes=G4LogicalVolumeStore::GetInstance();
for (G4int i = 0; i < theLogicalVolumes->entries(); i++){
volume=theLogicalVolumes->operator()(i);
for (G4int i = 0; i < theLogicalVolumes->size(); i++){
volume=(*theLogicalVolumes)[i];
if (volume->GetName() == aVolume) {
G4std::vector<G4String>::iterator location;
location = G4std::find(ValidVolumes.begin(),ValidVolumes.end(),aVolume);
@@ -245,7 +267,7 @@ void G4RadioactiveDecay::DeselectAVolume(const G4String aVolume)
if (GetVerboseLevel()>0)
G4cout << " DeselectVolume: " << aVolume << " is removed from list"<<G4endl;
#endif
}else if(i == theLogicalVolumes->entries())
}else if(i == theLogicalVolumes->size())
{
G4cerr << " DeselectVolume:" << aVolume << "is not a valid logical volume name"<< G4endl;
}
@@ -266,8 +288,8 @@ void G4RadioactiveDecay::SelectAllVolumes()
if (GetVerboseLevel()>0)
G4cout << " RDM Applies to all Volumes" << G4endl;
#endif
for (G4int i = 0; i < theLogicalVolumes->entries(); i++){
volume=theLogicalVolumes->operator()(i);
for (G4int i = 0; i < theLogicalVolumes->size(); i++){
volume=(*theLogicalVolumes)[i];
ValidVolumes.push_back(volume->GetName());
#ifdef G4VERBOSE
if (GetVerboseLevel()>0)
@@ -1,3 +1,25 @@
//
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * GEANT4 collaboration. *
// * By copying, distributing or modifying the Program (or any work *
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
//
#include "G4RadioactiveDecayMode.hh"
@@ -1,3 +1,25 @@
//
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * GEANT4 collaboration. *
// * By copying, distributing or modifying the Program (or any work *
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
//
// G4RadioactiveDecayRate.cc
#include "G4ParticleDefinition.hh"
@@ -1,3 +1,25 @@
//
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * GEANT4 collaboration. *
// * By copying, distributing or modifying the Program (or any work *
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
//
#include "G4RadioactiveDecayRateVector.hh"
@@ -1,3 +1,25 @@
//
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * GEANT4 collaboration. *
// * By copying, distributing or modifying the Program (or any work *
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
//
//
#include "G4RadioactiveDecaymessenger.hh"
@@ -1,4 +1,26 @@
//
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * GEANT4 collaboration. *
// * By copying, distributing or modifying the Program (or any work *
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
//
//
#include "G4UIcmdWithNucleusLimits.hh"
#include "g4std/strstream"
////////////////////////////////////////////////////////////////////////////////