Import Geant4 5.2.0 source tree

This commit is contained in:
Gabriele Cosmo
2016-06-09 10:28:22 +02:00
parent fbd4999cf7
commit 4aea781e80
5454 changed files with 223141 additions and 67347 deletions
@@ -64,9 +64,9 @@ void G4BEChargedChannel::calculateProbability()
G4double levelParam = getLevelDensityParameter();
G4double s = 2 * sqrt( levelParam * ( excitationEnergy - getThresh() - correction ) );
G4double constant = A / 2 * ( 2 * spin + 1 ) * ( 1 + coulombFactor() );
G4double eye1 = ( pow( s, 2 ) - 3 * s + 3 ) / ( 4 * pow( levelParam, 2 ) ) * exp( s );
G4double eye1 = ( pow( s, 2. ) - 3 * s + 3 ) / ( 4 * pow( levelParam, 2. ) ) * exp( s );
emissionProbability = constant * pow( residualA, 0.6666666 ) * eye1;
emissionProbability = constant * pow( G4double(residualA), 0.6666666 ) * eye1;
if ( verboseLevel >= 6 )
G4cout << "G4BEChargedChannel : calculateProbability for " << getName() << G4endl
@@ -100,8 +100,8 @@ G4double G4BEChargedChannel::sampleKineticEnergy()
// randExp2 = RandExponential::shoot( 1 );
// levelParam = getLevelDensityParameter();
// s = 2 * sqrt( levelParam * ( excitationEnergy - getThresh() - correction ) );
// kineticEnergyAv = 2 * ( pow( s, 3 ) - 6.0 * pow( s, 2 ) + 15.0 * s - 15.0 ) /
// ( ( 2.0 * pow( s, 2 ) - 6.0 * s + 6.0 ) * levelParam );
// kineticEnergyAv = 2 * ( pow( s, 3. ) - 6.0 * pow( s, 2. ) + 15.0 * s - 15.0 ) /
// ( ( 2.0 * pow( s, 2. ) - 6.0 * s + 6.0 ) * levelParam );
// kineticEnergy = 0.5 * ( randExp1 + randExp2 ) * kineticEnergyAv + getThresh() - getQ();
@@ -75,12 +75,12 @@ void G4BENeutronChannel::calculateProbability()
const G4double levelParam = getLevelDensityParameter();
const G4double s = 2 * sqrt( levelParam * ( excitationEnergy - getThresh() - correction ) );
const G4double temp = ( pow( s, 2 ) - 3 * s + 3 ) / ( 4 * pow( levelParam, 2 ) )
+ beta() * ( s - 1 ) / ( 2 * levelParam );
// const G4double temp = ( pow( s, 2. ) - 3 * s + 3 ) / ( 4 * pow( levelParam, 2. ) )
// + beta() * ( s - 1 ) / ( 2 * levelParam );
const G4double eye0 = exp( s ) * ( s - 1 ) / ( 2 * levelParam );
const G4double eye1 = ( pow( s, 2 ) - 3*s +3 ) * exp( s ) / ( 4 * pow( levelParam, 2 ) ) ;
const G4double eye1 = ( pow( s, 2. ) - 3*s +3 ) * exp( s ) / ( 4 * pow( levelParam, 2. ) ) ;
emissionProbability = pow( residualA, 0.666666 ) * alpha() * ( eye1 + beta() * eye0 );
emissionProbability = pow( G4double(residualA), 0.666666 ) * alpha() * ( eye1 + beta() * eye0 );
if ( verboseLevel >= 6 )
G4cout << "G4BENeutronChannel : calculateProbability " << G4endl
@@ -122,9 +122,9 @@ G4double G4BENeutronChannel::sampleKineticEnergy()
// levelParam = getLevelDensityParameter();
// s = 2 * sqrt( levelParam * ( excitationEnergy - getThresh() - correction ) );
// eye0 = 0.5 * ( s - 1 ) * exp( s ) / levelParam;
// eye1 = ( pow( s, 2 ) - 3*s + 3 ) * exp( s ) / ( 4 * pow( levelParam, 2 ) );
// kineticEnergyAv = 2 * ( pow( s, 3 ) - 6.0 * pow( s, 2 ) + 15.0 * s - 15.0 ) /
// ( ( 2.0 * pow( s, 2 ) - 6.0 * s + 6.0 ) * levelParam );
// eye1 = ( pow( s, 2. ) - 3*s + 3 ) * exp( s ) / ( 4 * pow( levelParam, 2. ) );
// kineticEnergyAv = 2 * ( pow( s, 3. ) - 6.0 * pow( s, 2. ) + 15.0 * s - 15.0 ) /
// ( ( 2.0 * pow( s, 2. ) - 6.0 * s + 6.0 ) * levelParam );
// kineticEnergyAv = ( kineticEnergyAv + beta() ) / ( 1.0 + beta() * eye0
// / eye1 );
@@ -70,7 +70,7 @@ void G4BertiniEvaporation::setVerboseLevel( const G4int verbose )
verboseLevel = verbose;
// Update verbose level to all evaporation channels.
G4std::vector< G4BertiniEvaporationChannel * >::iterator iChannel = channelVector.begin();
std::vector< G4BertiniEvaporationChannel * >::iterator iChannel = channelVector.begin();
for ( ; iChannel != channelVector.end() ; *iChannel++ )
( *iChannel )->setVerboseLevel( verboseLevel );
}
@@ -89,7 +89,7 @@ G4FragmentVector * G4BertiniEvaporation::BreakItUp( G4LayeredNucleus & nucleus )
G4double mRes; // Mass of residual nucleus.
G4ThreeVector nucleusMomentumVector;
G4DynamicParticle *pEmittedParticle;
G4std::vector< G4DynamicParticle * > secondaryParticleVector;
std::vector< G4DynamicParticle * > secondaryParticleVector;
G4FragmentVector * result = new G4FragmentVector;
// Read properties of the nucleus.
@@ -115,7 +115,7 @@ G4FragmentVector * G4BertiniEvaporation::BreakItUp( G4LayeredNucleus & nucleus )
// Initialize evaporation channels and calculate sum of emission
// probabilities.
G4std::vector< G4BertiniEvaporationChannel * >::iterator iChannel = channelVector.begin();
std::vector< G4BertiniEvaporationChannel * >::iterator iChannel = channelVector.begin();
totalProbability = 0;
for ( ; iChannel != channelVector.end() ; *iChannel++ )
{
@@ -177,7 +177,7 @@ G4FragmentVector * G4BertiniEvaporation::BreakItUp( G4LayeredNucleus & nucleus )
const G4int zRes = nucleusZ - pSelectedChannel->getParticleZ();
const G4int aRes = nucleusA - pSelectedChannel->getParticleA();
const G4double eBind = G4NucleiProperties::GetBindingEnergy( aRes, zRes ); // Binding energy of the nucleus.
// const G4double eBind = G4NucleiProperties::GetBindingEnergy( aRes, zRes ); // Binding energy of the nucleus.
mRes = G4NucleiProperties::GetAtomicMass( aRes, zRes ); // Mass of the target nucleus
// In HETC88:
// eBind = Z * (-0.78244) + A * 8.36755 - cameron ( A , Z );
@@ -328,7 +328,7 @@ G4FragmentVector * G4BertiniEvaporation::BreakItUp( G4LayeredNucleus & nucleus )
void G4BertiniEvaporation::splitBe8( const G4double E,
const G4ThreeVector boostToLab,
G4std::vector< G4DynamicParticle * > & secondaryParticleVector )
std::vector< G4DynamicParticle * > & secondaryParticleVector )
{
G4double kineticEnergy;
G4double u;
@@ -376,7 +376,7 @@ void G4BertiniEvaporation::splitBe8( const G4double E,
}
void G4BertiniEvaporation::fillResult( G4std::vector<G4DynamicParticle *> secondaryParticleVector,
void G4BertiniEvaporation::fillResult( std::vector<G4DynamicParticle *> secondaryParticleVector,
G4FragmentVector * aResult )
{
// Fill the vector pParticleChange with secondary particles stored in vector.
@@ -159,7 +159,7 @@ G4double G4BertiniEvaporationChannel::getCoulomb()
// In HETC88 this factor was 0.88235, perhaps due to different r0
G4double coulomb = factor * particleZ * qmFactor() * residualZ /
( pow( residualA, 0.33333333 ) + rho ) * MeV;
( pow( G4double(residualA), 0.33333333 ) + rho ) * MeV;
if ( verboseLevel >= 10 )
G4cout << " G4BertiniEvaporationChannel::getThresh() " << G4endl
@@ -192,7 +192,7 @@ G4double G4BertiniEvaporationChannel::getLevelDensityParameter()
G4double y0 = 1.5;
G4double temp = ( residualA - 2.0 * residualZ ) / residualA;
G4double smallA = residualA * ( 1.0 + y0 * pow( temp, 2 ) ) / b0 / MeV;
G4double smallA = residualA * ( 1.0 + y0 * pow( temp, 2. ) ) / b0 / MeV;
// In HETC98 b0 = b0(E).