51 ConstantResolution(0.), NoiseResolution(0.), SamplingResolution(0.),
52 AveLogAlphah(0.), AveLogTmaxh(0.), SigmaLogAlphah(0.), SigmaLogTmaxh(0.),
53 Rhoh(0.), Alphah(0.), Tmaxh(0.), Betah(0.)
136 G4cout <<
"/********************************************/ " <<
G4endl;
137 G4cout <<
" - GFlashHomoShowerParameterisation::Constructor - " <<
G4endl;
138 G4cout <<
"/********************************************/ " <<
G4endl;
148 Ec = 2.66 * std::pow((
X0 *
Z /
A),1.1);
164 G4Exception(
"GFlashHomoShowerParameterisation::GenerateLongitudinalProfile()",
200 (Correlation1h*Random1 + Correlation2h*Random2) );
202 (Correlation1h*Random1 - Correlation2h*Random2) );
217 G4double LongitudinalStepInX0 = LongitudinalStep /
X0;
220 float x3 =
gam(x1,x2);
228 G4double LongitudinalStepInX0 = LongitudinalStep /
X0;
255 Radius =
Rm *
RadiusCore * std::sqrt( Random2/(1. - Random2) );
259 Radius =
Rm *
RadiusTail * std::sqrt( Random2/(1. - Random2) );
285 WeightCore = p1 * std::exp( (p2-Tau)/p3 - std::exp( (p2-Tau) /p3) );
293 std::exp(k4*(Tau-k2)) );
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *description)
static constexpr double cm3
static constexpr double g
static constexpr double GeV
static constexpr double MeV
G4GLOB_DLL std::ostream G4cout
G4double GetDensity() const
G4double GetRadlen() const
void GenerateLongitudinalProfile(G4double Energy)
G4double GenerateExponential(G4double Energy)
void GenerateNSpotProfile(G4double y)
void SetMaterial(G4Material *mat)
G4double ComputeTau(G4double LongitudinalPosition)
~GFlashHomoShowerParameterisation()
G4double IntegrateEneLongitudinal(G4double LongitudinalStep)
GFlashHomoShowerParameterisation(G4Material *aMat, GVFlashHomoShowerTuning *aPar=0)
G4double GenerateRadius(G4int ispot, G4double Energy, G4double LongitudinalPosition)
void ComputeLongitudinalParameters(G4double y)
G4double IntegrateNspLongitudinal(G4double LongitudinalStep)
void ComputeRadialParameters(G4double y, G4double Tau)
GVFlashHomoShowerTuning * thePar
void GenerateEnergyProfile(G4double y)
virtual G4double ParSigLogT1()
virtual G4double ParRT1()
virtual G4double ParRT4()
virtual G4double ParAveA1()
virtual G4double ParSigLogA2()
virtual G4double ParRC2()
virtual G4double ParWC1()
virtual G4double ParRC4()
virtual G4double ParAveT1()
virtual G4double ParSpotN2()
virtual G4double ParWC4()
virtual G4double ParRho2()
virtual G4double ParWC6()
virtual G4double ParWC3()
virtual G4double ParSpotA1()
virtual G4double ParSpotA2()
virtual G4double ParSpotT2()
virtual G4double ParRT2()
virtual G4double ParRT6()
virtual G4double ParRC3()
virtual G4double ParAveA3()
virtual G4double ParSpotT1()
virtual G4double ParSigLogT2()
virtual G4double ParWC2()
virtual G4double ParSigLogA1()
virtual G4double ParRT5()
virtual G4double ParAveA2()
virtual G4double ParSpotN1()
virtual G4double ParWC5()
virtual G4double ParRC1()
virtual G4double ParRho1()
virtual G4double ParRT3()
G4double GetEffZ(const G4Material *material)
G4double GetEffA(const G4Material *material)
G4double gam(G4double x, G4double a) const
void PrintMaterial(const G4Material *mat)
ThreeVector shoot(const G4int Ap, const G4int Af)
T min(const T t1, const T t2)
brief Return the smallest of the two arguments