Import Geant4 6.1.0 source tree

This commit is contained in:
Gabriele Cosmo
2016-06-09 10:49:58 +02:00
parent 96686e0c8f
commit 1d812b78b1
4545 changed files with 24433 additions and 175005 deletions
@@ -21,8 +21,8 @@
// ********************************************************************
//
//
// $Id: G4AnnihiToMuPair.cc,v 1.2 2003/02/04 11:08:42 maire Exp $
// GEANT4 tag $Name: geant4-06-00 $
// $Id: G4AnnihiToMuPair.cc,v 1.3 2004/03/10 16:48:45 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-01 $
//
// ------------ G4AnnihiToMuPair physics process ------
// by H.Burkhardt, S. Kelner and R. Kokoulin, November 2002
@@ -50,8 +50,8 @@
// constructor
G4AnnihiToMuPair::G4AnnihiToMuPair(const G4String& processName)
: G4VDiscreteProcess (processName)
G4AnnihiToMuPair::G4AnnihiToMuPair(const G4String& processName,
G4ProcessType type):G4VDiscreteProcess (processName, type)
{
//e+ Energy threshold
const G4double Mu_massc2 = G4MuonPlus::MuonPlus()->GetPDGMass();
@@ -21,8 +21,8 @@
// ********************************************************************
//
//
// $Id: G4ComptonScattering.cc,v 1.17 2003/06/16 17:02:08 gunter Exp $
// GEANT4 tag $Name: geant4-06-00 $
// $Id: G4ComptonScattering.cc,v 1.18 2004/03/10 16:48:45 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-01 $
//
//
//------------ G4ComptonScattering physics process -----------------------------
@@ -57,8 +57,8 @@
// constructor
G4ComptonScattering::G4ComptonScattering(const G4String& processName)
: G4VDiscreteProcess (processName),
G4ComptonScattering::G4ComptonScattering(const G4String& processName,
G4ProcessType type):G4VDiscreteProcess (processName, type),
theCrossSectionTable(NULL),
theMeanFreePathTable(NULL),
LowestEnergyLimit ( 1*keV),
@@ -21,8 +21,8 @@
// ********************************************************************
//
//
// $Id: G4GammaConversion.cc,v 1.18 2003/06/16 17:02:09 gunter Exp $
// GEANT4 tag $Name: geant4-06-00 $
// $Id: G4GammaConversion.cc,v 1.19 2004/03/10 16:48:45 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-01 $
//
//------------------ G4GammaConversion physics process -------------------------
// by Michel Maire, 24 May 1996
@@ -64,8 +64,8 @@
// constructor
G4GammaConversion::G4GammaConversion(const G4String& processName)
: G4VDiscreteProcess (processName), // initialization
G4GammaConversion::G4GammaConversion(const G4String& processName,
G4ProcessType type):G4VDiscreteProcess (processName, type),
theCrossSectionTable(NULL),
theMeanFreePathTable(NULL),
LowestEnergyLimit (2*electron_mass_c2),
@@ -21,8 +21,8 @@
// ********************************************************************
//
//
// $Id: G4GammaConversionToMuons.cc,v 1.4 2002/08/07 10:53:25 maire Exp $
// GEANT4 tag $Name: geant4-06-00 $
// $Id: G4GammaConversionToMuons.cc,v 1.5 2004/03/10 16:48:45 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-01 $
//
// ------------ G4GammaConversionToMuons physics process ------
// by H.Burkhardt, S. Kelner and R. Kokoulin, April 2002
@@ -41,8 +41,8 @@
// constructor
G4GammaConversionToMuons::G4GammaConversionToMuons(const G4String& processName)
: G4VDiscreteProcess (processName),
G4GammaConversionToMuons::G4GammaConversionToMuons(const G4String& processName,
G4ProcessType type):G4VDiscreteProcess (processName, type),
LowestEnergyLimit (4*G4MuonPlus::MuonPlus()->GetPDGMass()), // 4*Mmuon
HighestEnergyLimit(1e21*eV), // ok to 1e21eV=1e12GeV, then LPM suppression
CrossSecFactor(1.)
@@ -20,8 +20,8 @@
// * statement, and all its terms. *
// ********************************************************************
//
// $Id: G4MollerBhabhaModel.cc,v 1.11 2003/07/21 12:52:23 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-00 $
// $Id: G4MollerBhabhaModel.cc,v 1.14 2003/11/19 19:38:46 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-01 $
//
// -------------------------------------------------------------------
//
@@ -264,7 +264,7 @@ G4DynamicParticle* G4MollerBhabhaModel::SampleSecondary(
G4double maxEnergy)
{
G4double tmax = std::min(maxEnergy, MaxSecondaryEnergy(dp));
if(tmin >= tmax) return 0;
if(tmin > tmax) tmin = tmax;
G4double kineticEnergy = dp->GetKineticEnergy();
G4double energy = kineticEnergy + electron_mass_c2;
@@ -358,11 +358,7 @@ G4DynamicParticle* G4MollerBhabhaModel::SampleSecondary(
deltaDirection.rotateUz(momentum);
// create G4DynamicParticle object for delta ray
G4DynamicParticle* delta = new G4DynamicParticle();
delta->SetDefinition(theElectron);
delta->SetKineticEnergy(deltaKinEnergy);
delta->SetMomentumDirection(deltaDirection);
G4DynamicParticle* delta = new G4DynamicParticle(theElectron,deltaDirection,deltaKinEnergy);
return delta;
}
@@ -48,22 +48,15 @@
#include "G4DynamicParticle.hh"
#include "G4ParticleDefinition.hh"
const G4double G4PAIModel::fLowestKineticEnergy = 10.0*keV ; // 100.0*MeV ;
const G4double G4PAIModel::fHighestKineticEnergy = 100.*TeV ; // 1000.0*MeV ;
G4int G4PAIModel::fTotBin = 200 ; // 50
G4int G4PAIModel::fMeanNumber = 20 ; // 50 for dispersion
// create physics vector and fill it
G4PhysicsLogVector*
G4PAIModel::fProtonEnergyVector = new G4PhysicsLogVector(fLowestKineticEnergy,
fHighestKineticEnergy,
fTotBin);
////////////////////////////////////////////////////////////////////////
G4PAIModel::G4PAIModel(const G4ParticleDefinition* p, const G4String& nam)
: G4VEmModel(nam),G4VEmFluctuationModel(nam),
fLowestKineticEnergy(10.0*keV),
fHighestKineticEnergy(100.*TeV),
fTotBin(200),
fMeanNumber(20),
fParticle(0),
fHighKinEnergy(100.*TeV),
fLowKinEnergy(2.0*MeV),
@@ -72,26 +65,38 @@ G4PAIModel::G4PAIModel(const G4ParticleDefinition* p, const G4String& nam)
fTaulim(8.4146e-3)
{
if(p) SetParticle(p);
fProtonEnergyVector = new G4PhysicsLogVector(fLowestKineticEnergy,
fHighestKineticEnergy,
fTotBin);
fPAItransferBank = 0;
fPAIdEdxTable = 0;
fSandiaPhotoAbsCof = 0;
fdEdxVector = 0;
fLambdaVector = 0;
fdNdxCutVector = 0;
}
////////////////////////////////////////////////////////////////////////////
G4PAIModel::~G4PAIModel()
{
// delete member used ???
if(fdEdxVector) delete fdEdxVector ;
if ( fLambdaVector) delete fLambdaVector;
if ( fdNdxCutVector) delete fdNdxCutVector;
if( fPAItransferBank )
{
if(fProtonEnergyVector) delete fProtonEnergyVector;
if(fdEdxVector) delete fdEdxVector ;
if ( fLambdaVector) delete fLambdaVector;
if ( fdNdxCutVector) delete fdNdxCutVector;
if( fPAItransferBank )
{
fPAItransferBank->clearAndDestroy();
delete fPAItransferBank ;
}
for(G4int i=0;i<fSandiaIntervalNumber;i++)
{
}
if(fSandiaPhotoAbsCof)
{
for(G4int i=0;i<fSandiaIntervalNumber;i++)
{
delete[] fSandiaPhotoAbsCof[i];
}
delete[] fSandiaPhotoAbsCof;
}
delete[] fSandiaPhotoAbsCof;
}
}
///////////////////////////////////////////////////////////////////////////////
@@ -157,9 +162,12 @@ void G4PAIModel::Initialise(const G4ParticleDefinition* p,
// (*fPAIRegionVector[iRegion])
std::vector<G4Material*>::const_iterator matIter = curReg->GetMaterialIterator();
size_t jMat, numOfMat = curReg->GetNumberOfMaterials();
size_t jMat;
size_t numOfMat = curReg->GetNumberOfMaterials();
// for(size_t jMat = 0; jMat < curReg->GetNumberOfMaterials();++jMat){}
const G4MaterialTable* theMaterialTable = G4Material::GetMaterialTable();
size_t numberOfMat = G4Material::GetNumberOfMaterials();
for(jMat = 0 ; jMat < numOfMat; ++jMat) // region material loop
{
@@ -167,13 +175,10 @@ void G4PAIModel::Initialise(const G4ParticleDefinition* p,
GetMaterialCutsCouple( *matIter, curReg->GetProductionCuts() );
fMaterialCutsCoupleVector.push_back(matCouple);
static const G4MaterialTable* theMaterialTable =
G4Material::GetMaterialTable();
size_t numberOfMat = G4Material::GetNumberOfMaterials();
size_t iMatGlob;
for(iMatGlob = 0 ; iMatGlob < numberOfMat ; iMatGlob++ )
{
if( *matIter == (*theMaterialTable)[iMatGlob]) break ;
if( *matIter == (*theMaterialTable)[iMatGlob]) break ;
}
fMatIndex = iMatGlob;
@@ -205,9 +210,11 @@ void G4PAIModel::ComputeSandiaPhotoAbsCof()
GetNumberOfElements();
G4int* thisMaterialZ = new G4int[numberOfElements] ;
for(i=0;i<numberOfElements;i++) thisMaterialZ[i] =
for(i=0;i<numberOfElements;i++)
{
thisMaterialZ[i] =
(G4int)(*theMaterialTable)[fMatIndex]->GetElement(i)->GetZ() ;
}
fSandiaIntervalNumber = thisMaterialSandiaTable.SandiaIntervals
(thisMaterialZ,numberOfElements) ;
@@ -231,7 +238,7 @@ void G4PAIModel::ComputeSandiaPhotoAbsCof()
(*theMaterialTable)[fMatIndex]->GetDensity() ;
}
}
delete[] thisMaterialZ ;
// delete[] thisMaterialZ ;
}
////////////////////////////////////////////////////////////////////////////
@@ -245,8 +252,8 @@ G4PAIModel::BuildPAIonisationTable()
{
G4double LowEdgeEnergy , ionloss ;
G4double massRatio, tau, Tmax, Tmin, Tkin, deltaLow, gamma, bg2 ;
/*
if( fPAItransferBank )
/*
if( fPAItransferBank )
{
fPAItransferBank->clearAndDestroy() ;
delete fPAItransferBank ;
@@ -254,20 +261,20 @@ G4PAIModel::BuildPAIonisationTable()
*/
fPAItransferBank = new G4PhysicsTable(fTotBin);
/*
if( fPAIdEdxTable )
if( fPAIdEdxTable )
{
fPAIdEdxTable->clearAndDestroy() ;
delete fPAIdEdxTable ;
}
*/
fPAIdEdxTable = new G4PhysicsTable(fTotBin);
// if(fdEdxVector) delete fdEdxVector ;
fdEdxVector = new G4PhysicsLogVector( fLowestKineticEnergy,
fdEdxVector = new G4PhysicsLogVector( fLowestKineticEnergy,
fHighestKineticEnergy,
fTotBin ) ;
fTotBin ) ;
Tmin = fSandiaPhotoAbsCof[0][0] ; // low energy Sandia interval
deltaLow = 0.5*eV ;
deltaLow = 0.5*eV ;
for (G4int i = 0 ; i < fTotBin ; i++) //The loop for the kinetic energy
{
@@ -347,23 +354,25 @@ G4PAIModel::BuildLambdaVector(const G4MaterialCutsCouple* matCutsCouple)
const G4ProductionCutsTable* theCoupleTable=
G4ProductionCutsTable::GetProductionCutsTable();
size_t numOfCouples = theCoupleTable->GetTableSize(), jMatCC;
size_t numOfCouples = theCoupleTable->GetTableSize();
size_t jMatCC;
for (jMatCC = 0 ; jMatCC < numOfCouples ; jMatCC++ )
{
if( matCutsCouple == theCoupleTable->GetMaterialCutsCouple(jMatCC) ) break;
}
}
if( jMatCC == numOfCouples && jMatCC > 0 ) jMatCC--;
const std::vector<G4double>* deltaCutInKineticEnergy = theCoupleTable->
GetEnergyCutsVector(idxG4ElectronCut);
if (fLambdaVector) delete fLambdaVector;
if (fdNdxCutVector) delete fdNdxCutVector;
fLambdaVector = new G4PhysicsLogVector( fLowestKineticEnergy,
fLambdaVector = new G4PhysicsLogVector( fLowestKineticEnergy,
fHighestKineticEnergy,
fTotBin ) ;
fdNdxCutVector = new G4PhysicsLogVector( fLowestKineticEnergy,
fdNdxCutVector = new G4PhysicsLogVector( fLowestKineticEnergy,
fHighestKineticEnergy,
fTotBin ) ;
G4double deltaCutInKineticEnergyNow = (*deltaCutInKineticEnergy)[jMatCC] ;
@@ -373,14 +382,14 @@ G4PAIModel::BuildLambdaVector(const G4MaterialCutsCouple* matCutsCouple)
for ( i = 0 ; i < fTotBin ; i++ )
{
dNdxCut = GetdNdxCut(i,deltaCutInKineticEnergyNow) ;
lambda = dNdxCut <= DBL_MIN ? DBL_MAX: 1.0/dNdxCut ;
if (lambda <= 1000*kCarTolerance) lambda = 1000*kCarTolerance ; // Mmm ???
dNdxCut = GetdNdxCut(i,deltaCutInKineticEnergyNow) ;
lambda = dNdxCut <= DBL_MIN ? DBL_MAX: 1.0/dNdxCut ;
if (lambda <= 1000*kCarTolerance) lambda = 1000*kCarTolerance ; // Mmm ???
fLambdaVector->PutValue(i, lambda) ;
fdNdxCutVector->PutValue(i, dNdxCut) ;
}
}
}
///////////////////////////////////////////////////////////////////////
@@ -485,6 +494,8 @@ G4double G4PAIModel::ComputeDEDX(const G4MaterialCutsCouple* matCC,
{
if( matCC == fMaterialCutsCoupleVector[jMat] ) break;
}
if(jMat == fMaterialCutsCoupleVector.size() && jMat > 0) jMat--;
fPAIdEdxTable = fPAIdEdxBank[jMat];
fdEdxVector = fdEdxTable[jMat];
for(iTkin = 0 ; iTkin < fTotBin ; iTkin++)
@@ -518,6 +529,8 @@ G4double G4PAIModel::CrossSection( const G4MaterialCutsCouple* matCC,
{
if( matCC == fMaterialCutsCoupleVector[jMat] ) break;
}
if(jMat == fMaterialCutsCoupleVector.size() && jMat > 0) jMat--;
fPAItransferBank = fPAIxscBank[jMat];
for(iTkin = 0 ; iTkin < fTotBin ; iTkin++)
@@ -526,6 +539,7 @@ G4double G4PAIModel::CrossSection( const G4MaterialCutsCouple* matCC,
}
iPlace = iTkin - 1;
if(iPlace < 0) iPlace = 0;
cross1 = GetdNdxCut(iPlace,tmax) ;
cross2 = GetdNdxCut(iPlace,cutEnergy) ;
cross = (cross2-cross1)*charge2;
@@ -549,6 +563,8 @@ G4PAIModel::SampleSecondary( const G4MaterialCutsCouple* matCC,
{
if( matCC == fMaterialCutsCoupleVector[jMat] ) break;
}
if(jMat == fMaterialCutsCoupleVector.size() && jMat > 0) jMat--;
fPAItransferBank = fPAIxscBank[jMat];
fdNdxCutVector = fdNdxCutTable[jMat];
@@ -608,6 +624,7 @@ G4PAIModel::GetPostStepTransfer( G4double scaledTkin )
if(scaledTkin < fProtonEnergyVector->GetLowEdgeEnergy(iTkin)) break ;
}
iPlace = iTkin - 1 ;
if(iPlace < 0) iPlace = 0;
dNdxCut1 = (*fdNdxCutVector)(iPlace) ;
// G4cout<<"iPlace = "<<iPlace<<endl ;
@@ -653,7 +670,7 @@ G4PAIModel::GetPostStepTransfer( G4double scaledTkin )
iTransfer < G4int((*fPAItransferBank)(iPlace)->GetVectorLength()); iTransfer++ )
{
if( position >=
( (*(*fPAItransferBank)(iPlace))(iTransfer)*W1 +
( (*(*fPAItransferBank)(iPlace))(iTransfer)*W1 +
(*(*fPAItransferBank)(iPlace+1))(iTransfer)*W2) ) break ;
}
transfer = GetEnergyTransfer(iPlace,position,iTransfer);
@@ -731,6 +748,8 @@ G4double G4PAIModel::SampleFluctuations( const G4Material* material,
{
if( material == fMaterialCutsCoupleVector[jMat]->GetMaterial() ) break;
}
if(jMat == fMaterialCutsCoupleVector.size() && jMat > 0) jMat--;
fPAItransferBank = fPAIxscBank[jMat];
fdNdxCutVector = fdNdxCutTable[jMat];
@@ -92,7 +92,12 @@ G4PAIonisation::G4PAIonisation( const G4String& materialName,
theElectron ( G4Electron::Electron() )
{
G4int iMat ;
theMeanFreePathTable = NULL;
theLossTable = 0;
theMeanFreePathTable = 0;
fLambdaVector = 0;
fdNdxCutVector = 0;
fdEdxVector = 0;
fPAItransferBank = 0;
static const G4MaterialTable* theMaterialTable = G4Material::GetMaterialTable();
G4int numberOfMat = G4Material::GetNumberOfMaterials() ;
@@ -272,19 +277,19 @@ G4PAIonisation::BuildPAIonisationTable()
}
theLossTable = new G4PhysicsTable(1);
if( fPAItransferBank )
if( fPAItransferBank )
{
fPAItransferBank->clearAndDestroy() ;
delete fPAItransferBank ;
}
fPAItransferBank = new G4PhysicsTable(TotBin);
//create physics dE/dx vector then fill it ....
if(fdEdxVector) delete fdEdxVector ;
fdEdxVector = new G4PhysicsLogVector( LowestKineticEnergy,
fdEdxVector = new G4PhysicsLogVector( LowestKineticEnergy,
HighestKineticEnergy,
TotBin ) ;
@@ -376,41 +381,45 @@ G4PAIonisation::BuildLambdaTable(const G4ParticleDefinition&)
G4ProductionCutsTable::GetProductionCutsTable();
// size_t numOfCouples = theCoupleTable->GetTableSize();
if (theMeanFreePathTable)
if (theMeanFreePathTable)
{
theMeanFreePathTable->clearAndDestroy();
delete theMeanFreePathTable;
}
theMeanFreePathTable = new G4PhysicsTable(1);
DeltaCutInKineticEnergy = theCoupleTable->GetEnergyCutsVector(idxG4ElectronCut);
const std::vector<G4double>* deltaCutInKineticEnergy =
theCoupleTable->GetEnergyCutsVector(idxG4ElectronCut);
if (fLambdaVector) delete fLambdaVector;
if (fdNdxCutVector) delete fdNdxCutVector;
fLambdaVector = new G4PhysicsLogVector( LowestKineticEnergy,
fLambdaVector = new G4PhysicsLogVector( LowestKineticEnergy,
HighestKineticEnergy,
TotBin ) ;
fdNdxCutVector = new G4PhysicsLogVector( LowestKineticEnergy,
fdNdxCutVector = new G4PhysicsLogVector( LowestKineticEnergy,
HighestKineticEnergy,
TotBin ) ;
// DeltaCutInKineticEnergyNow = (*DeltaCutInKineticEnergy)[fMatIndex] ;
DeltaCutInKineticEnergyNow = (*DeltaCutInKineticEnergy)[fMatCutsIndex] ;
// DeltaCutInKineticEnergyNow = (*DeltaCutInKineticEnergy)[fMatCutsIndex] ;
// DeltaCutInKineticEnergyNow = fSandiaPhotoAbsCof[0][0] ; // low energy Sandia ??
G4double deltaCutInKineticEnergyNow = (*deltaCutInKineticEnergy)[fMatCutsIndex] ;
G4cout<<"PAI DeltaCutInKineticEnergyNow = "
<<DeltaCutInKineticEnergyNow/keV<<" keV"<<G4endl;
<<deltaCutInKineticEnergyNow/keV<<" keV"<<G4endl;
for ( i = 0 ; i < TotBin ; i++ )
{
dNdxCut = GetdNdxCut(i,DeltaCutInKineticEnergyNow) ;
lambda = dNdxCut <= DBL_MIN ? DBL_MAX: 1.0/dNdxCut ;
if (lambda <= 1000*kCarTolerance) lambda = 1000*kCarTolerance ; // Mmm ???
dNdxCut = GetdNdxCut(i,deltaCutInKineticEnergyNow) ;
lambda = dNdxCut <= DBL_MIN ? DBL_MAX: 1.0/dNdxCut ;
if (lambda <= 1000*kCarTolerance) lambda = 1000*kCarTolerance ; // Mmm ???
fLambdaVector->PutValue(i, lambda) ;
fdNdxCutVector->PutValue(i, dNdxCut) ;
}
theMeanFreePathTable->insert(fLambdaVector);
theMeanFreePathTable->insert(fLambdaVector);
}
////////////////////////////////////////////////////////////////////////////
@@ -22,7 +22,7 @@
//
//
// $Id: G4PAIxSection.cc,v 1.17 2003/10/19 15:21:22 grichine Exp $
// GEANT4 tag $Name: geant4-06-00 $
// GEANT4 tag $Name: geant4-06-00-patch-01 $
//
//
// G4PAIxSection.cc -- class implementation file
@@ -21,8 +21,8 @@
// ********************************************************************
//
//
// $Id: G4PhotoElectricEffect.cc,v 1.29 2003/06/16 17:02:11 gunter Exp $
// GEANT4 tag $Name: geant4-06-00 $
// $Id: G4PhotoElectricEffect.cc,v 1.30 2004/03/10 16:48:46 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-01 $
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -68,8 +68,8 @@
// constructor
G4PhotoElectricEffect::G4PhotoElectricEffect(const G4String& processName)
: G4VDiscreteProcess (processName),
G4PhotoElectricEffect::G4PhotoElectricEffect(const G4String& processName,
G4ProcessType type):G4VDiscreteProcess (processName, type),
fminimalEnergy(1*eV)
{ PrintInfoDefinition();}
@@ -22,7 +22,7 @@
//
//
// $Id: G4PolarizedComptonScattering.cc,v 1.10 2003/05/26 16:13:14 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-00 $
// GEANT4 tag $Name: geant4-05-02-patch-01 $
//
//
//---------- G4PolarizedComptonScattering physics process ----------------------
@@ -21,8 +21,8 @@
// ********************************************************************
//
//
// $Id: G4SynchrotronRadiation.cc,v 1.8 2003/05/26 16:13:15 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-00 $
// $Id: G4SynchrotronRadiation.cc,v 1.9 2004/03/10 16:48:46 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-01 $
//
// --------------------------------------------------------------
// GEANT 4 class implementation file
@@ -45,9 +45,8 @@
// Constructor
//
G4SynchrotronRadiation::G4SynchrotronRadiation(const G4String& processName)
: G4VDiscreteProcess(processName), // initialization
G4SynchrotronRadiation::G4SynchrotronRadiation(const G4String& processName,
G4ProcessType type):G4VDiscreteProcess (processName, type),
LowestKineticEnergy (10.*keV),
HighestKineticEnergy (100.*TeV),
TotBin(200),
@@ -22,7 +22,7 @@
//
//
// $Id: G4VPAIenergyLoss.cc,v 1.7 2003/03/10 12:22:02 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-00 $
// GEANT4 tag $Name: geant4-05-02-patch-01 $
//
// -----------------------------------------------------------
// GEANT 4 class implementation file
@@ -22,7 +22,7 @@
//
//
// $Id: G4VeEnergyLoss.cc,v 1.32 2003/06/16 17:02:12 gunter Exp $
// GEANT4 tag $Name: geant4-06-00 $
// GEANT4 tag $Name: geant4-05-02-patch-01 $
//
// -----------------------------------------------------------------------------
@@ -22,7 +22,7 @@
//
//
// $Id: G4VhEnergyLoss.cc,v 1.46 2003/06/16 17:02:13 gunter Exp $
// GEANT4 tag $Name: geant4-06-00 $
// GEANT4 tag $Name: geant4-05-02-patch-01 $
//
// -----------------------------------------------------------------------------
@@ -21,7 +21,7 @@
// ********************************************************************
//
// $Id: G4eBremsstrahlung.cc,v 1.37 2003/11/12 16:23:42 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-00 $
// GEANT4 tag $Name: geant4-06-00-patch-01 $
//
// -------------------------------------------------------------------
//
@@ -22,7 +22,7 @@
//
//
// $Id: G4eBremsstrahlung52.cc,v 1.1 2003/08/08 11:30:02 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-00 $
// GEANT4 tag $Name: geant4-06-00-patch-01 $
//
//
// ------------ G4eBremsstrahlung52 physics process --------
@@ -20,8 +20,8 @@
// * statement, and all its terms. *
// ********************************************************************
//
// $Id: G4eBremsstrahlungModel.cc,v 1.14 2003/07/21 12:52:23 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-00 $
// $Id: G4eBremsstrahlungModel.cc,v 1.15 2003/11/20 18:22:31 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-01 $
//
// -------------------------------------------------------------------
//
@@ -624,7 +624,7 @@ G4DynamicParticle* G4eBremsstrahlungModel::SampleSecondary(
const G4MaterialCutsCouple* couple,
const G4DynamicParticle* dp,
G4double tmin,
G4double tmax)
G4double maxEnergy)
// The emitted gamma energy is sampled using a parametrized formula from L. Urban.
// This parametrization is derived from :
// cross-section values of Seltzer and Berger for electron energies 1 keV - 10 GeV,
@@ -638,8 +638,8 @@ G4DynamicParticle* G4eBremsstrahlungModel::SampleSecondary(
// (Nuc Phys 20(1960),15).
{
G4double kineticEnergy = dp->GetKineticEnergy();
// G4double tmax = std::min(maxEnergy, kineticEnergy);
// if(tmin >= tmax) tmin = tmax;
G4double tmax = std::min(maxEnergy, kineticEnergy);
if(tmin > tmax) tmin = tmax;
//
// GEANT4 internal units.
@@ -822,10 +822,7 @@ G4DynamicParticle* G4eBremsstrahlungModel::SampleSecondary(
gammaDirection.rotateUz(direction);
// create G4DynamicParticle object for the Gamma
G4DynamicParticle* g = new G4DynamicParticle();
g->SetDefinition(G4Gamma::Gamma());
g->SetKineticEnergy(gammaEnergy);
g->SetMomentumDirection(gammaDirection);
G4DynamicParticle* g = new G4DynamicParticle(G4Gamma::Gamma(),gammaDirection,gammaEnergy);
return g;
}
@@ -21,7 +21,7 @@
// ********************************************************************
//
// $Id: G4eIonisation.cc,v 1.37 2003/11/12 16:23:42 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-00 $
// GEANT4 tag $Name: geant4-06-00-patch-01 $
//
// -------------------------------------------------------------------
//
@@ -22,7 +22,7 @@
//
//
// $Id: G4eIonisation52.cc,v 1.1 2003/08/08 11:30:02 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-00 $
// GEANT4 tag $Name: geant4-06-00-patch-01 $
//
//--------------- G4eIonisation52 physics process --------------------------------
// by Laszlo Urban, 20 March 1997
@@ -21,8 +21,8 @@
// ********************************************************************
//
//
// $Id: G4eplusAnnihilation.cc,v 1.15 2003/05/26 16:13:15 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-00 $
// $Id: G4eplusAnnihilation.cc,v 1.16 2004/03/10 16:48:46 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-01 $
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -49,8 +49,8 @@
// constructor
G4eplusAnnihilation::G4eplusAnnihilation(const G4String& processName)
: G4VRestDiscreteProcess (processName),
G4eplusAnnihilation::G4eplusAnnihilation(const G4String& processName,
G4ProcessType type):G4VRestDiscreteProcess (processName, type),
theCrossSectionTable(NULL),
theMeanFreePathTable(NULL),
LowestEnergyLimit (10*keV),
@@ -21,7 +21,7 @@
// ********************************************************************
//
// $Id: G4hIonisation.cc,v 1.50 2003/11/12 16:23:42 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-00 $
// GEANT4 tag $Name: geant4-06-00-patch-01 $
//
// -------------------------------------------------------------------
//
@@ -22,7 +22,7 @@
//
//
// $Id: G4hIonisation52.cc,v 1.1 2003/08/08 11:30:02 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-00 $
// GEANT4 tag $Name: geant4-06-00-patch-01 $
//
//---------------- G4hIonisation52 physics process -------------------------------
// by Laszlo Urban, 30 May 1997
@@ -21,7 +21,7 @@
// ********************************************************************
//
// $Id: G4ionIonisation.cc,v 1.21 2003/11/12 16:23:42 vnivanch Exp $
// GEANT4 tag $Name: geant4-06-00 $
// GEANT4 tag $Name: geant4-06-00-patch-01 $
//
// -------------------------------------------------------------------
//