Import Geant4 10.3.0.beta source tree

This commit is contained in:
Gabriele Cosmo
2016-06-30 14:12:05 +02:00
parent a654a7ab1f
commit 4ec577e5c4
2021 changed files with 100995 additions and 78277 deletions
@@ -24,7 +24,7 @@
// ********************************************************************
//
//
// $Id: G4ePolarizedIonisation.cc 93113 2015-10-07 07:49:04Z gcosmo $
// $Id: G4ePolarizedIonisation.cc 97175 2016-05-27 12:42:05Z gcosmo $
// -------------------------------------------------------------------
//
// GEANT4 Class file
@@ -176,23 +176,32 @@ G4double G4ePolarizedIonisation::PostStepGetPhysicalInteractionLength(const G4Tr
G4double step,
G4ForceCondition* cond)
{
// save previous value
// save previous values
G4double nLength = theNumberOfInteractionLengthLeft;
G4double iLength = currentInteractionLength;
// *** get unploarised mean free path from lambda table ***
// *** get unpolarised mean free path from lambda table ***
// this changes theNumberOfInteractionLengthLeft and currentInteractionLength
G4double x = G4VEnergyLossProcess::PostStepGetPhysicalInteractionLength(track, step, cond);
G4double x0 = x;
G4double satFact = 1.;
// *** add corrections on polarisation ***
if(theAsymmetryTable && theTransverseAsymmetryTable && x < DBL_MAX) {
G4double curLength = currentInteractionLength*ComputeSaturationFactor(track);
satFact = ComputeSaturationFactor(track);
G4double curLength = currentInteractionLength*satFact;
G4double prvLength = iLength*satFact;
if(nLength > 0.0) {
theNumberOfInteractionLengthLeft =
std::max(nLength - step/curLength, 0.0);
std::max(nLength - step/prvLength, 0.0);
}
x = theNumberOfInteractionLengthLeft * curLength;
}
if (verboseLevel>=2) {
G4cout << "G4ePolarizedIonisation::PostStepGetPhysicalInteractionLength: "
<< x/mm << " mm " << G4endl;
G4cout << "G4ePolarizedIonisation::PostStepGPIL: "
<< std::setprecision(8) << x/mm << " mm;" << G4endl
<< " unpolarized value: "
<< std::setprecision(8) << x0/mm << " mm." << G4endl;
}
return x;
}