Import Geant4 8.3.0 source tree
This commit is contained in:
@@ -77,6 +77,7 @@
|
||||
theEnergy = -1;
|
||||
theStat = isAlive;
|
||||
theW = 1.;
|
||||
theEDep = 0.;
|
||||
if(!hasStaleSecondaries)
|
||||
{
|
||||
for(size_t i=0; i<theSecs.size(); i++) delete theSecs[i];
|
||||
|
||||
@@ -32,50 +32,74 @@ G4HadronicWhiteBoard & G4HadronicWhiteBoard::Instance()
|
||||
return theInstance;
|
||||
}
|
||||
|
||||
const G4HadProjectile * G4HadronicWhiteBoard::GetProjectile() {return theProjectile;}
|
||||
const G4Nucleus & G4HadronicWhiteBoard::GetTargetNucleus() { return theTarget; }
|
||||
G4ParticleDefinition * G4HadronicWhiteBoard::GetPDef() {return theDef;}
|
||||
G4String G4HadronicWhiteBoard::GetParticleName() {return theName;}
|
||||
G4double G4HadronicWhiteBoard::GetEnergy() {return theE;}
|
||||
G4double G4HadronicWhiteBoard::GetPx(){return thePx;}
|
||||
G4double G4HadronicWhiteBoard::GetPy(){return thePy;}
|
||||
G4double G4HadronicWhiteBoard::GetPz(){return thePz;}
|
||||
G4double G4HadronicWhiteBoard::GetA(){return theA;}
|
||||
G4double G4HadronicWhiteBoard::GetZ(){return theZ;}
|
||||
const G4HadProjectile * G4HadronicWhiteBoard::GetProjectile()
|
||||
{
|
||||
return theProjectile;
|
||||
}
|
||||
|
||||
const G4Nucleus & G4HadronicWhiteBoard::GetTargetNucleus()
|
||||
{
|
||||
return theTarget;
|
||||
}
|
||||
|
||||
G4ParticleDefinition * G4HadronicWhiteBoard::GetPDef() {return theDef;}
|
||||
G4String G4HadronicWhiteBoard::GetParticleName() {return theName;}
|
||||
G4double G4HadronicWhiteBoard::GetEnergy() {return theE;}
|
||||
G4double G4HadronicWhiteBoard::GetPx(){return thePx;}
|
||||
G4double G4HadronicWhiteBoard::GetPy(){return thePy;}
|
||||
G4double G4HadronicWhiteBoard::GetPz(){return thePz;}
|
||||
G4double G4HadronicWhiteBoard::GetA(){return theA;}
|
||||
G4double G4HadronicWhiteBoard::GetZ(){return theZ;}
|
||||
|
||||
|
||||
void G4HadronicWhiteBoard::SetProjectile(const G4HadProjectile & aProjectile)
|
||||
{
|
||||
theProjectile = const_cast<G4HadProjectile*>(& aProjectile);
|
||||
theDef = const_cast<G4ParticleDefinition*>(theProjectile->GetDefinition());
|
||||
theName = const_cast<char *>(theDef->GetParticleName().c_str() );
|
||||
theE = theProjectile->Get4Momentum().t();
|
||||
thePx = theProjectile->Get4Momentum().vect().x();
|
||||
thePy = theProjectile->Get4Momentum().vect().y();
|
||||
thePz = theProjectile->Get4Momentum().vect().z();
|
||||
}
|
||||
void G4HadronicWhiteBoard::SetProjectile(const G4HadProjectile & aProjectile)
|
||||
{
|
||||
theProjectile = const_cast<G4HadProjectile*>(& aProjectile);
|
||||
theDef = const_cast<G4ParticleDefinition*>(theProjectile->GetDefinition());
|
||||
theName = const_cast<char *>(theDef->GetParticleName().c_str() );
|
||||
theE = theProjectile->Get4Momentum().t();
|
||||
thePx = theProjectile->Get4Momentum().vect().x();
|
||||
thePy = theProjectile->Get4Momentum().vect().y();
|
||||
thePz = theProjectile->Get4Momentum().vect().z();
|
||||
}
|
||||
|
||||
|
||||
void G4HadronicWhiteBoard::SetTargetNucleus(const G4Nucleus & aTarget)
|
||||
{
|
||||
theTarget = aTarget;
|
||||
theA = theTarget.GetN();
|
||||
theZ = theTarget.GetZ();
|
||||
}
|
||||
void G4HadronicWhiteBoard::SetTargetNucleus(const G4Nucleus & aTarget)
|
||||
{
|
||||
theTarget = aTarget;
|
||||
theA = theTarget.GetN();
|
||||
theZ = theTarget.GetZ();
|
||||
}
|
||||
|
||||
|
||||
void G4HadronicWhiteBoard::Dump()
|
||||
{
|
||||
std::cerr << std::endl;
|
||||
std::cerr << "*** Geant4 Hadronic Reaction Information ***"
|
||||
<< std::endl;
|
||||
std::cerr << " Nucleus A, Z = " << theA << " " << theZ
|
||||
<< std::endl;
|
||||
std::cerr << " Projectile was a " << theName
|
||||
<< std::endl;
|
||||
std::cerr << " projectile momentum (px, py, pz) = (" << thePx << ", "
|
||||
<< thePy << ", " << thePz << ")" << std::endl;
|
||||
std::cerr << " Projectile energy = "<< theE
|
||||
<< std::endl;
|
||||
std::cerr << "*** End of Geant4 Hadronic Reaction Information ***"
|
||||
<< std::endl;
|
||||
G4Exception("G4HadronicProcess", "001", FatalException, "segmentation fault");
|
||||
}
|
||||
void G4HadronicWhiteBoard::SetProcessName(const G4String& aProcessName)
|
||||
{
|
||||
theProcessName = aProcessName;
|
||||
}
|
||||
|
||||
|
||||
void G4HadronicWhiteBoard::SetModelName(const G4String& aModelName)
|
||||
{
|
||||
theModelName = aModelName;
|
||||
}
|
||||
|
||||
|
||||
void G4HadronicWhiteBoard::Dump()
|
||||
{
|
||||
std::cerr << std::endl;
|
||||
std::cerr << "*** Geant4 Hadronic Reaction Information ***"
|
||||
<< std::endl;
|
||||
std::cerr << " Process: " << theProcessName << " , Model: "
|
||||
<< theModelName << std::endl;
|
||||
std::cerr << " Nucleus A, Z = " << theA << " " << theZ
|
||||
<< std::endl;
|
||||
std::cerr << " Projectile was a " << theName
|
||||
<< std::endl;
|
||||
std::cerr << " projectile momentum (px, py, pz) = (" << thePx << ", "
|
||||
<< thePy << ", " << thePz << ")" << std::endl;
|
||||
std::cerr << " Projectile energy = "<< theE
|
||||
<< std::endl;
|
||||
std::cerr << "*** End of Geant4 Hadronic Reaction Information ***"
|
||||
<< std::endl;
|
||||
G4Exception(theModelName, "001", FatalException, "segmentation fault");
|
||||
}
|
||||
|
||||
@@ -1369,6 +1369,7 @@
|
||||
|
||||
G4ParticleDefinition *aPiMinus = G4PionMinus::PionMinus();
|
||||
G4ParticleDefinition *aPiPlus = G4PionPlus::PionPlus();
|
||||
G4ParticleDefinition* aPiZero = G4PionZero::PionZero();
|
||||
G4ParticleDefinition *aProton = G4Proton::Proton();
|
||||
G4ParticleDefinition *aNeutron = G4Neutron::Neutron();
|
||||
G4double piMass = aPiPlus->GetPDGMass()/GeV;
|
||||
@@ -1386,6 +1387,7 @@
|
||||
|
||||
if( antiTest && (
|
||||
currentParticle.GetDefinition() == aPiPlus ||
|
||||
currentParticle.GetDefinition() == aPiZero ||
|
||||
currentParticle.GetDefinition() == aPiMinus ) &&
|
||||
( G4UniformRand() <= (10.0-pOriginal)/6.0 ) &&
|
||||
( G4UniformRand() <= atomicWeight/300.0 ) )
|
||||
@@ -1400,6 +1402,7 @@
|
||||
}
|
||||
if( antiTest && (
|
||||
targetParticle.GetDefinition() == aPiPlus ||
|
||||
targetParticle.GetDefinition() == aPiZero ||
|
||||
targetParticle.GetDefinition() == aPiMinus ) &&
|
||||
( G4UniformRand() <= (10.0-pOriginal)/6.0 ) &&
|
||||
( G4UniformRand() <= atomicWeight/300.0 ) )
|
||||
@@ -1417,6 +1420,7 @@
|
||||
{
|
||||
if( antiTest && (
|
||||
vec[i]->GetDefinition() == aPiPlus ||
|
||||
vec[i]->GetDefinition() == aPiZero ||
|
||||
vec[i]->GetDefinition() == aPiMinus ) &&
|
||||
( G4UniformRand() <= (10.0-pOriginal)/6.0 ) &&
|
||||
( G4UniformRand() <= atomicWeight/300.0 ) )
|
||||
|
||||
Reference in New Issue
Block a user