Geant4-11
Public Member Functions | Protected Attributes | Private Member Functions | Private Attributes
GFlashHomoShowerParameterisation Class Reference

#include <GFlashHomoShowerParameterisation.hh>

Inheritance diagram for GFlashHomoShowerParameterisation:
GVFlashShowerParameterisation

Public Member Functions

void ComputeRadialParameters (G4double y, G4double Tau)
 
G4double ComputeTau (G4double LongitudinalPosition)
 
void ComputeZAX0EFFetc ()
 
G4double gam (G4double x, G4double a) const
 
G4double GenerateExponential (G4double Energy)
 
void GenerateLongitudinalProfile (G4double Energy)
 
G4double GeneratePhi ()
 
G4double GenerateRadius (G4int ispot, G4double Energy, G4double LongitudinalPosition)
 
G4double GetAveR90 ()
 
G4double GetAveR99 ()
 
G4double GetAveT90 ()
 
G4double GetAveT99 ()
 
G4double GetAveTmx ()
 
G4double GetEc ()
 
G4double GetEffA (const G4Material *material)
 
G4double GetEffZ (const G4Material *material)
 
G4double GetNspot ()
 
G4double GetRm ()
 
G4double GetX0 ()
 
 GFlashHomoShowerParameterisation (G4Material *aMat, GVFlashHomoShowerTuning *aPar=0)
 
G4double IntegrateEneLongitudinal (G4double LongitudinalStep)
 
G4double IntegrateNspLongitudinal (G4double LongitudinalStep)
 
void PrintMaterial (const G4Material *mat)
 
void SetMaterial (G4Material *mat)
 
 ~GFlashHomoShowerParameterisation ()
 

Protected Attributes

G4double A
 
G4double density
 
G4double Ec
 
G4double Rm
 
G4double X0
 
G4double Z
 

Private Member Functions

void ComputeLongitudinalParameters (G4double y)
 
void GenerateEnergyProfile (G4double y)
 
void GenerateNSpotProfile (G4double y)
 

Private Attributes

G4double Alphah
 
G4double AlphaNSpot
 
G4double AveLogAlphah
 
G4double AveLogTmaxh
 
G4double Betah
 
G4double BetaNSpot
 
G4double ConstantResolution
 
MyGammafGamma
 
G4Materialmaterial
 
G4double NoiseResolution
 
G4double NSpot
 
G4double ParAveA1
 
G4double ParAveA2
 
G4double ParAveA3
 
G4double ParAveT1
 
G4double ParRC1
 
G4double ParRC2
 
G4double ParRC3
 
G4double ParRC4
 
G4double ParRho1
 
G4double ParRho2
 
G4double ParRT1
 
G4double ParRT2
 
G4double ParRT3
 
G4double ParRT4
 
G4double ParRT5
 
G4double ParRT6
 
G4double ParSigLogA1
 
G4double ParSigLogA2
 
G4double ParSigLogT1
 
G4double ParSigLogT2
 
G4double ParSpotA1
 
G4double ParSpotA2
 
G4double ParSpotN1
 
G4double ParSpotN2
 
G4double ParSpotT1
 
G4double ParSpotT2
 
G4double ParWC1
 
G4double ParWC2
 
G4double ParWC3
 
G4double ParWC4
 
G4double ParWC5
 
G4double ParWC6
 
G4double RadiusCore
 
G4double RadiusTail
 
G4double Rhoh
 
G4double SamplingResolution
 
G4double SigmaLogAlphah
 
G4double SigmaLogTmaxh
 
GVFlashHomoShowerTuningthePar
 
G4double Tmaxh
 
G4double TNSpot
 
G4double WeightCore
 

Detailed Description

Definition at line 49 of file GFlashHomoShowerParameterisation.hh.

Constructor & Destructor Documentation

◆ GFlashHomoShowerParameterisation()

GFlashHomoShowerParameterisation::GFlashHomoShowerParameterisation ( G4Material aMat,
GVFlashHomoShowerTuning aPar = 0 
)

Definition at line 47 of file GFlashHomoShowerParameterisation.cc.

53 Rhoh(0.), Alphah(0.), Tmaxh(0.), Betah(0.)
54
55{
56 if(!aPar) {
58 } else {
59 thePar = aPar;
60 }
61
62 SetMaterial(aMat);
63 PrintMaterial(aMat);
64
65 /********************************************/
66 /* Homo Calorimeter */
67 /********************************************/
68 // Longitudinal Coefficients for a homogenious calo
69 // shower max
70 //
71 ParAveT1 = thePar->ParAveT1(); // ln (ln y -0.812)
72 ParAveA1 = thePar->ParAveA1(); // ln a (0.81 + (0.458 + 2.26/Z)ln y)
75
76 // Variance of shower max
77 ParSigLogT1 = thePar->ParSigLogT1(); // Sigma T1 (-1.4 + 1.26 ln y)**-1
79
80 // variance of 'alpha'
81 //
82 ParSigLogA1 = thePar->ParSigLogA1(); // Sigma a (-0.58 + 0.86 ln y)**-1
84
85 // correlation alpha%T
86 //
87 ParRho1 = thePar->ParRho1(); // Rho = 0.705 -0.023 ln y
89
90 // Radial Coefficients
91 // r_C (tau)= z_1 +z_2 tau
92 // r_t (tau)= k1 (std::exp (k3(tau -k2 ))+std::exp (k_4 (tau- k_2))))
93 //
94 ParRC1 = thePar->ParRC1(); // z_1 = 0.0251 + 0.00319 ln E
95 ParRC2 = thePar->ParRC2();
96
97 ParRC3 = thePar->ParRC3(); // z_2 = 0.1162 + - 0.000381 Z
98 ParRC4 = thePar->ParRC4();
99
100 ParWC1 = thePar->ParWC1();
101 ParWC2 = thePar->ParWC2();
102 ParWC3 = thePar->ParWC3();
103 ParWC4 = thePar->ParWC4();
104 ParWC5 = thePar->ParWC5();
105 ParWC6 = thePar->ParWC6();
106
107 ParRT1 = thePar->ParRT1();
108 ParRT2 = thePar->ParRT2();
109 ParRT3 = thePar->ParRT3();
110 ParRT4 = thePar->ParRT4();
111 ParRT5 = thePar->ParRT5();
112 ParRT6 = thePar->ParRT6();
113
114 // Coeff for fluctueted radial profiles for a uniform media
115 //
116 ParSpotT1 = thePar->ParSpotT1(); // T_spot = T_hom =(0.698 + 0.00212)
118
119 ParSpotA1 = thePar->ParSpotA1(); // a_spot= a_hom (0.639 + 0.00334)
121
122 ParSpotN1 = thePar->ParSpotN1(); // N_Spot 93 * ln(Z) E ** 0.876
124
125 // Inits
126
127 NSpot = 0.00;
128 AlphaNSpot = 0.00;
129 TNSpot = 0.00;
130 BetaNSpot = 0.00;
131
132 RadiusCore = 0.00;
133 WeightCore = 0.00;
134 RadiusTail = 0.00;
135
136 G4cout << "/********************************************/ " << G4endl;
137 G4cout << " - GFlashHomoShowerParameterisation::Constructor - " << G4endl;
138 G4cout << "/********************************************/ " << G4endl;
139}
#define G4endl
Definition: G4ios.hh:57
G4GLOB_DLL std::ostream G4cout

References AlphaNSpot, BetaNSpot, G4cout, G4endl, NSpot, ParAveA1, GVFlashHomoShowerTuning::ParAveA1(), ParAveA2, GVFlashHomoShowerTuning::ParAveA2(), ParAveA3, GVFlashHomoShowerTuning::ParAveA3(), ParAveT1, GVFlashHomoShowerTuning::ParAveT1(), ParRC1, GVFlashHomoShowerTuning::ParRC1(), ParRC2, GVFlashHomoShowerTuning::ParRC2(), ParRC3, GVFlashHomoShowerTuning::ParRC3(), ParRC4, GVFlashHomoShowerTuning::ParRC4(), ParRho1, GVFlashHomoShowerTuning::ParRho1(), ParRho2, GVFlashHomoShowerTuning::ParRho2(), ParRT1, GVFlashHomoShowerTuning::ParRT1(), ParRT2, GVFlashHomoShowerTuning::ParRT2(), ParRT3, GVFlashHomoShowerTuning::ParRT3(), ParRT4, GVFlashHomoShowerTuning::ParRT4(), ParRT5, GVFlashHomoShowerTuning::ParRT5(), ParRT6, GVFlashHomoShowerTuning::ParRT6(), ParSigLogA1, GVFlashHomoShowerTuning::ParSigLogA1(), ParSigLogA2, GVFlashHomoShowerTuning::ParSigLogA2(), ParSigLogT1, GVFlashHomoShowerTuning::ParSigLogT1(), ParSigLogT2, GVFlashHomoShowerTuning::ParSigLogT2(), ParSpotA1, GVFlashHomoShowerTuning::ParSpotA1(), ParSpotA2, GVFlashHomoShowerTuning::ParSpotA2(), ParSpotN1, GVFlashHomoShowerTuning::ParSpotN1(), ParSpotN2, GVFlashHomoShowerTuning::ParSpotN2(), ParSpotT1, GVFlashHomoShowerTuning::ParSpotT1(), ParSpotT2, GVFlashHomoShowerTuning::ParSpotT2(), ParWC1, GVFlashHomoShowerTuning::ParWC1(), ParWC2, GVFlashHomoShowerTuning::ParWC2(), ParWC3, GVFlashHomoShowerTuning::ParWC3(), ParWC4, GVFlashHomoShowerTuning::ParWC4(), ParWC5, GVFlashHomoShowerTuning::ParWC5(), ParWC6, GVFlashHomoShowerTuning::ParWC6(), GVFlashShowerParameterisation::PrintMaterial(), RadiusCore, RadiusTail, SetMaterial(), thePar, TNSpot, and WeightCore.

◆ ~GFlashHomoShowerParameterisation()

GFlashHomoShowerParameterisation::~GFlashHomoShowerParameterisation ( )

Definition at line 154 of file GFlashHomoShowerParameterisation.cc.

155{
156 delete thePar;
157}

References thePar.

Member Function Documentation

◆ ComputeLongitudinalParameters()

void GFlashHomoShowerParameterisation::ComputeLongitudinalParameters ( G4double  y)
privatevirtual

Implements GVFlashShowerParameterisation.

Definition at line 175 of file GFlashHomoShowerParameterisation.cc.

176{
177 AveLogTmaxh = std::log(ParAveT1 + std::log(y));
178 //ok <ln T hom>
179 AveLogAlphah = std::log(ParAveA1 + (ParAveA2+ParAveA3/Z)*std::log(y));
180 //ok <ln alpha hom>
181
182 SigmaLogTmaxh = 1.00/( ParSigLogT1 + ParSigLogT2*std::log(y)) ;
183 //ok sigma (ln T hom)
184 SigmaLogAlphah = 1.00/( ParSigLogA1 + ParSigLogA2*std::log(y));
185 //ok sigma (ln alpha hom)
186 Rhoh = ParRho1+ParRho2*std::log(y); //ok
187}

References AveLogAlphah, AveLogTmaxh, ParAveA1, ParAveA2, ParAveA3, ParAveT1, ParRho1, ParRho2, ParSigLogA1, ParSigLogA2, ParSigLogT1, ParSigLogT2, Rhoh, SigmaLogAlphah, SigmaLogTmaxh, and GVFlashShowerParameterisation::Z.

Referenced by GenerateLongitudinalProfile().

◆ ComputeRadialParameters()

void GFlashHomoShowerParameterisation::ComputeRadialParameters ( G4double  y,
G4double  Tau 
)
virtual

Implements GVFlashShowerParameterisation.

Definition at line 274 of file GFlashHomoShowerParameterisation.cc.

276{
277 G4double z1 = ParRC1 + ParRC2* std::log(Energy/GeV) ; //ok
278 G4double z2 = ParRC3+ParRC4*Z ; //ok
279 RadiusCore = z1 + z2 * Tau ; //ok
280
281 G4double p1 = ParWC1+ParWC2*Z; //ok
282 G4double p2 = ParWC3+ParWC4*Z; //ok
283 G4double p3 = ParWC5+ParWC6*std::log(Energy/GeV); //ok
284
285 WeightCore = p1 * std::exp( (p2-Tau)/p3 - std::exp( (p2-Tau) /p3) ); //ok
286
287 G4double k1 = ParRT1+ParRT2*Z; // ok
288 G4double k2 = ParRT3; // ok
289 G4double k3 = ParRT4; // ok
290 G4double k4 = ParRT5+ParRT6* std::log(Energy/GeV); // ok
291
292 RadiusTail = k1*(std::exp(k3*(Tau-k2)) +
293 std::exp(k4*(Tau-k2)) ); //ok
294}
static constexpr double GeV
Definition: G4SIunits.hh:203
double G4double
Definition: G4Types.hh:83

References GeV, ParRC1, ParRC2, ParRC3, ParRC4, ParRT1, ParRT2, ParRT3, ParRT4, ParRT5, ParRT6, ParWC1, ParWC2, ParWC3, ParWC4, ParWC5, ParWC6, RadiusCore, RadiusTail, WeightCore, and GVFlashShowerParameterisation::Z.

Referenced by GenerateRadius().

◆ ComputeTau()

G4double GFlashHomoShowerParameterisation::ComputeTau ( G4double  LongitudinalPosition)
virtual

Implements GVFlashShowerParameterisation.

Definition at line 265 of file GFlashHomoShowerParameterisation.cc.

267{
268 G4double tau = LongitudinalPosition / Tmaxh / X0 //<t> = T* a /(a - 1)
269 * (Alphah-1.00) /Alphah *
270 std::exp(AveLogAlphah)/(std::exp(AveLogAlphah)-1.); //ok
271 return tau;
272}

References Alphah, AveLogAlphah, Tmaxh, and GVFlashShowerParameterisation::X0.

Referenced by GenerateRadius().

◆ ComputeZAX0EFFetc()

void GFlashHomoShowerParameterisation::ComputeZAX0EFFetc ( )

◆ gam()

G4double GVFlashShowerParameterisation::gam ( G4double  x,
G4double  a 
) const
inherited

◆ GenerateEnergyProfile()

void GFlashHomoShowerParameterisation::GenerateEnergyProfile ( G4double  y)
privatevirtual

Implements GVFlashShowerParameterisation.

Definition at line 189 of file GFlashHomoShowerParameterisation.cc.

190{
191 G4double Correlation1h = std::sqrt((1+Rhoh)/2);
192 G4double Correlation2h = std::sqrt((1-Rhoh)/2);
193
194 G4double Random1 = G4RandGauss::shoot();
195 G4double Random2 = G4RandGauss::shoot();
196
197 // Parameters for Enenrgy Profile including correaltion and sigmas
198
199 Tmaxh = std::exp( AveLogTmaxh + SigmaLogTmaxh *
200 (Correlation1h*Random1 + Correlation2h*Random2) );
201 Alphah = std::exp( AveLogAlphah + SigmaLogAlphah *
202 (Correlation1h*Random1 - Correlation2h*Random2) );
203 Betah = (Alphah-1.00)/Tmaxh;
204}
ThreeVector shoot(const G4int Ap, const G4int Af)

References Alphah, AveLogAlphah, AveLogTmaxh, Betah, Rhoh, G4INCL::DeJongSpin::shoot(), SigmaLogAlphah, SigmaLogTmaxh, and Tmaxh.

Referenced by GenerateLongitudinalProfile().

◆ GenerateExponential()

G4double GFlashHomoShowerParameterisation::GenerateExponential ( G4double  Energy)
virtual

Implements GVFlashShowerParameterisation.

Definition at line 296 of file GFlashHomoShowerParameterisation.cc.

298{
299 G4double ParExp1 = 9./7.*X0;
300 G4double random = -ParExp1*G4RandExponential::shoot() ;
301 return random;
302}

References G4INCL::DeJongSpin::shoot(), and GVFlashShowerParameterisation::X0.

◆ GenerateLongitudinalProfile()

void GFlashHomoShowerParameterisation::GenerateLongitudinalProfile ( G4double  Energy)
virtual

Implements GVFlashShowerParameterisation.

Definition at line 159 of file GFlashHomoShowerParameterisation.cc.

161{
162 if (material==0)
163 {
164 G4Exception("GFlashHomoShowerParameterisation::GenerateLongitudinalProfile()",
165 "InvalidSetup", FatalException, "No material initialized!");
166 }
167
168 G4double y = Energy/Ec;
172}
@ FatalException
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *description)
Definition: G4Exception.cc:35

References ComputeLongitudinalParameters(), GVFlashShowerParameterisation::Ec, FatalException, G4Exception(), GenerateEnergyProfile(), GenerateNSpotProfile(), and material.

◆ GenerateNSpotProfile()

void GFlashHomoShowerParameterisation::GenerateNSpotProfile ( G4double  y)
privatevirtual

◆ GeneratePhi()

G4double GFlashHomoShowerParameterisation::GeneratePhi ( )

◆ GenerateRadius()

G4double GFlashHomoShowerParameterisation::GenerateRadius ( G4int  ispot,
G4double  Energy,
G4double  LongitudinalPosition 
)
virtual

Implements GVFlashShowerParameterisation.

Definition at line 237 of file GFlashHomoShowerParameterisation.cc.

239{
240 if(ispot < 1)
241 {
242 // Determine lateral parameters in the middle of the step.
243 // They depend on energy & position along step.
244 //
245 G4double Tau = ComputeTau(LongitudinalPosition);
246 ComputeRadialParameters(Energy,Tau);
247 }
248
249 G4double Radius;
250 G4double Random1 = G4UniformRand();
251 G4double Random2 = G4UniformRand();
252
253 if(Random1 <WeightCore) //WeightCore = p < w_i
254 {
255 Radius = Rm * RadiusCore * std::sqrt( Random2/(1. - Random2) );
256 }
257 else
258 {
259 Radius = Rm * RadiusTail * std::sqrt( Random2/(1. - Random2) );
260 }
261 Radius = std::min(Radius,DBL_MAX);
262 return Radius;
263}
#define G4UniformRand()
Definition: Randomize.hh:52
G4double ComputeTau(G4double LongitudinalPosition)
void ComputeRadialParameters(G4double y, G4double Tau)
T min(const T t1, const T t2)
brief Return the smallest of the two arguments
#define DBL_MAX
Definition: templates.hh:62

References ComputeRadialParameters(), ComputeTau(), DBL_MAX, G4UniformRand, G4INCL::Math::min(), RadiusCore, RadiusTail, GVFlashShowerParameterisation::Rm, and WeightCore.

◆ GetAveR90()

G4double GFlashHomoShowerParameterisation::GetAveR90 ( )
inlinevirtual

Implements GVFlashShowerParameterisation.

Definition at line 72 of file GFlashHomoShowerParameterisation.hh.

72{return (1.5 * Rm);} //ok

References GVFlashShowerParameterisation::Rm.

◆ GetAveR99()

G4double GFlashHomoShowerParameterisation::GetAveR99 ( )
inlinevirtual

Implements GVFlashShowerParameterisation.

Definition at line 71 of file GFlashHomoShowerParameterisation.hh.

71{return (3.5 * Rm);}

References GVFlashShowerParameterisation::Rm.

◆ GetAveT90()

G4double GFlashHomoShowerParameterisation::GetAveT90 ( )
inlinevirtual

Implements GVFlashShowerParameterisation.

Definition at line 76 of file GFlashHomoShowerParameterisation.hh.

76{return (2.5* X0*std::exp( AveLogTmaxh) );}

References AveLogTmaxh, and GVFlashShowerParameterisation::X0.

◆ GetAveT99()

G4double GFlashHomoShowerParameterisation::GetAveT99 ( )
inlinevirtual

◆ GetAveTmx()

G4double GFlashHomoShowerParameterisation::GetAveTmx ( )
inlinevirtual

Implements GVFlashShowerParameterisation.

Definition at line 74 of file GFlashHomoShowerParameterisation.hh.

74{return (X0 * std::exp(AveLogTmaxh));}

References AveLogTmaxh, and GVFlashShowerParameterisation::X0.

◆ GetEc()

G4double GFlashHomoShowerParameterisation::GetEc ( )
inlinevirtual

Implements GVFlashShowerParameterisation.

Definition at line 80 of file GFlashHomoShowerParameterisation.hh.

80{return Ec;}

References GVFlashShowerParameterisation::Ec.

◆ GetEffA()

G4double GVFlashShowerParameterisation::GetEffA ( const G4Material material)
inherited

Definition at line 82 of file GVFlashShowerParameterisation.cc.

83{
84 // Returns A or effective A=sum(pi*Ai) (if compound/mixture)
85 // of given material
86 //
87 G4double a = 0.;
88 G4int nofElements = mat->GetNumberOfElements();
89 if (nofElements > 1) {
90 for (G4int i=0; i<nofElements; i++) {
91 G4double aOfElement = mat->GetElement(i)->GetA()/(g/mole);
92 G4double massFraction = mat->GetFractionVector()[i];
93 a += aOfElement*massFraction;
94 }
95 }
96 else {
97 a = mat->GetA()/(g/mole);
98 }
99 return a;
100}
static constexpr double mole
Definition: G4SIunits.hh:279
static constexpr double g
Definition: G4SIunits.hh:168
int G4int
Definition: G4Types.hh:85

References g, G4Element::GetA(), G4Material::GetA(), G4Material::GetElement(), G4Material::GetFractionVector(), G4Material::GetNumberOfElements(), and mole.

Referenced by SetMaterial(), and GFlashSamplingShowerParameterisation::SetMaterial().

◆ GetEffZ()

G4double GVFlashShowerParameterisation::GetEffZ ( const G4Material material)
inherited

Definition at line 59 of file GVFlashShowerParameterisation.cc.

60{
61 // Returns Z or effective Z=sum(pi*Zi) (if compound/mixture)
62 // of given material
63 //
64 G4double z = 0.;
65 G4int nofElements = mat->GetNumberOfElements();
66 if (nofElements > 1)
67 {
68 for (G4int i=0; i<nofElements; i++) {
69 G4double zOfElement = mat->GetElement(i)->GetZ();
70 G4double massFraction = mat->GetFractionVector()[i];
71 // cout << mat->GetElement(i)->GetName()
72 // <<" Z= "<<zOfElement << " , Fraction= "<<massFraction <<endl;
73 z += zOfElement*massFraction;
74 }
75 }
76 else {
77 z = mat->GetZ();
78 }
79 return z;
80}

References G4Material::GetElement(), G4Material::GetFractionVector(), G4Material::GetNumberOfElements(), G4Element::GetZ(), and G4Material::GetZ().

Referenced by SetMaterial(), and GFlashSamplingShowerParameterisation::SetMaterial().

◆ GetNspot()

G4double GFlashHomoShowerParameterisation::GetNspot ( )
inlinevirtual

Implements GVFlashShowerParameterisation.

Definition at line 78 of file GFlashHomoShowerParameterisation.hh.

78{ return NSpot;}

References NSpot.

◆ GetRm()

G4double GFlashHomoShowerParameterisation::GetRm ( )
inlinevirtual

Implements GVFlashShowerParameterisation.

Definition at line 81 of file GFlashHomoShowerParameterisation.hh.

81{return Rm;}

References GVFlashShowerParameterisation::Rm.

◆ GetX0()

G4double GFlashHomoShowerParameterisation::GetX0 ( )
inlinevirtual

Implements GVFlashShowerParameterisation.

Definition at line 79 of file GFlashHomoShowerParameterisation.hh.

79{return X0;}

References GVFlashShowerParameterisation::X0.

◆ IntegrateEneLongitudinal()

G4double GFlashHomoShowerParameterisation::IntegrateEneLongitudinal ( G4double  LongitudinalStep)
virtual

Implements GVFlashShowerParameterisation.

Definition at line 214 of file GFlashHomoShowerParameterisation.cc.

216{
217 G4double LongitudinalStepInX0 = LongitudinalStep / X0;
218 G4float x1= Betah*LongitudinalStepInX0;
219 G4float x2= Alphah;
220 float x3 = gam(x1,x2);
221 G4double DEne=x3;
222 return DEne;
223}
float G4float
Definition: G4Types.hh:84
G4double gam(G4double x, G4double a) const

References Alphah, Betah, GVFlashShowerParameterisation::gam(), and GVFlashShowerParameterisation::X0.

◆ IntegrateNspLongitudinal()

G4double GFlashHomoShowerParameterisation::IntegrateNspLongitudinal ( G4double  LongitudinalStep)
virtual

Implements GVFlashShowerParameterisation.

Definition at line 225 of file GFlashHomoShowerParameterisation.cc.

227{
228 G4double LongitudinalStepInX0 = LongitudinalStep / X0;
229 G4float x1 = BetaNSpot*LongitudinalStepInX0;
230 G4float x2 = AlphaNSpot;
231 G4float x3 = gam(x1,x2);
232 G4double DNsp = x3;
233 return DNsp;
234}

References AlphaNSpot, BetaNSpot, GVFlashShowerParameterisation::gam(), and GVFlashShowerParameterisation::X0.

◆ PrintMaterial()

void GVFlashShowerParameterisation::PrintMaterial ( const G4Material mat)
inherited

Definition at line 102 of file GVFlashShowerParameterisation.cc.

103{
104 G4cout<<"/********************************************/ " << G4endl;
105 G4cout<<" - GVFlashShowerParameterisation::Material - " << G4endl;
106 G4cout<<" Material : " << mat->GetName() << G4endl;
107 G4cout<<" Z = " << Z << G4endl;
108 G4cout<<" A = " << A << G4endl;
109 G4cout<<" X0 = " << X0/cm << " cm" << G4endl;
110 G4cout<<" Rm = " << Rm/cm << " cm" << G4endl;
111 G4cout<<" Ec = " << Ec/MeV << " MeV"<< G4endl;
112 G4cout<<"/********************************************/ " << G4endl;
113}
static constexpr double MeV
Definition: G4SIunits.hh:200
static constexpr double cm
Definition: G4SIunits.hh:99
const G4String & GetName() const
Definition: G4Material.hh:173

References GVFlashShowerParameterisation::A, cm, GVFlashShowerParameterisation::Ec, G4cout, G4endl, G4Material::GetName(), MeV, GVFlashShowerParameterisation::Rm, GVFlashShowerParameterisation::X0, and GVFlashShowerParameterisation::Z.

Referenced by GFlashHomoShowerParameterisation().

◆ SetMaterial()

void GFlashHomoShowerParameterisation::SetMaterial ( G4Material mat)

Field Documentation

◆ A

G4double GVFlashShowerParameterisation::A
protectedinherited

◆ Alphah

G4double GFlashHomoShowerParameterisation::Alphah
private

◆ AlphaNSpot

G4double GFlashHomoShowerParameterisation::AlphaNSpot
private

◆ AveLogAlphah

G4double GFlashHomoShowerParameterisation::AveLogAlphah
private

◆ AveLogTmaxh

G4double GFlashHomoShowerParameterisation::AveLogTmaxh
private

◆ Betah

G4double GFlashHomoShowerParameterisation::Betah
private

◆ BetaNSpot

G4double GFlashHomoShowerParameterisation::BetaNSpot
private

◆ ConstantResolution

G4double GFlashHomoShowerParameterisation::ConstantResolution
private

Definition at line 88 of file GFlashHomoShowerParameterisation.hh.

◆ density

G4double GVFlashShowerParameterisation::density
protectedinherited

Definition at line 91 of file GVFlashShowerParameterisation.hh.

Referenced by SetMaterial().

◆ Ec

G4double GVFlashShowerParameterisation::Ec
protectedinherited

◆ fGamma

MyGamma* GVFlashShowerParameterisation::fGamma
privateinherited

◆ material

G4Material* GFlashHomoShowerParameterisation::material
private

◆ NoiseResolution

G4double GFlashHomoShowerParameterisation::NoiseResolution
private

Definition at line 89 of file GFlashHomoShowerParameterisation.hh.

◆ NSpot

G4double GFlashHomoShowerParameterisation::NSpot
private

◆ ParAveA1

G4double GFlashHomoShowerParameterisation::ParAveA1
private

◆ ParAveA2

G4double GFlashHomoShowerParameterisation::ParAveA2
private

◆ ParAveA3

G4double GFlashHomoShowerParameterisation::ParAveA3
private

◆ ParAveT1

G4double GFlashHomoShowerParameterisation::ParAveT1
private

◆ ParRC1

G4double GFlashHomoShowerParameterisation::ParRC1
private

◆ ParRC2

G4double GFlashHomoShowerParameterisation::ParRC2
private

◆ ParRC3

G4double GFlashHomoShowerParameterisation::ParRC3
private

◆ ParRC4

G4double GFlashHomoShowerParameterisation::ParRC4
private

◆ ParRho1

G4double GFlashHomoShowerParameterisation::ParRho1
private

◆ ParRho2

G4double GFlashHomoShowerParameterisation::ParRho2
private

◆ ParRT1

G4double GFlashHomoShowerParameterisation::ParRT1
private

◆ ParRT2

G4double GFlashHomoShowerParameterisation::ParRT2
private

◆ ParRT3

G4double GFlashHomoShowerParameterisation::ParRT3
private

◆ ParRT4

G4double GFlashHomoShowerParameterisation::ParRT4
private

◆ ParRT5

G4double GFlashHomoShowerParameterisation::ParRT5
private

◆ ParRT6

G4double GFlashHomoShowerParameterisation::ParRT6
private

◆ ParSigLogA1

G4double GFlashHomoShowerParameterisation::ParSigLogA1
private

◆ ParSigLogA2

G4double GFlashHomoShowerParameterisation::ParSigLogA2
private

◆ ParSigLogT1

G4double GFlashHomoShowerParameterisation::ParSigLogT1
private

◆ ParSigLogT2

G4double GFlashHomoShowerParameterisation::ParSigLogT2
private

◆ ParSpotA1

G4double GFlashHomoShowerParameterisation::ParSpotA1
private

◆ ParSpotA2

G4double GFlashHomoShowerParameterisation::ParSpotA2
private

◆ ParSpotN1

G4double GFlashHomoShowerParameterisation::ParSpotN1
private

◆ ParSpotN2

G4double GFlashHomoShowerParameterisation::ParSpotN2
private

◆ ParSpotT1

G4double GFlashHomoShowerParameterisation::ParSpotT1
private

◆ ParSpotT2

G4double GFlashHomoShowerParameterisation::ParSpotT2
private

◆ ParWC1

G4double GFlashHomoShowerParameterisation::ParWC1
private

◆ ParWC2

G4double GFlashHomoShowerParameterisation::ParWC2
private

◆ ParWC3

G4double GFlashHomoShowerParameterisation::ParWC3
private

◆ ParWC4

G4double GFlashHomoShowerParameterisation::ParWC4
private

◆ ParWC5

G4double GFlashHomoShowerParameterisation::ParWC5
private

◆ ParWC6

G4double GFlashHomoShowerParameterisation::ParWC6
private

◆ RadiusCore

G4double GFlashHomoShowerParameterisation::RadiusCore
private

◆ RadiusTail

G4double GFlashHomoShowerParameterisation::RadiusTail
private

◆ Rhoh

G4double GFlashHomoShowerParameterisation::Rhoh
private

◆ Rm

G4double GVFlashShowerParameterisation::Rm
protectedinherited

◆ SamplingResolution

G4double GFlashHomoShowerParameterisation::SamplingResolution
private

Definition at line 90 of file GFlashHomoShowerParameterisation.hh.

◆ SigmaLogAlphah

G4double GFlashHomoShowerParameterisation::SigmaLogAlphah
private

◆ SigmaLogTmaxh

G4double GFlashHomoShowerParameterisation::SigmaLogTmaxh
private

◆ thePar

GVFlashHomoShowerTuning* GFlashHomoShowerParameterisation::thePar
private

◆ Tmaxh

G4double GFlashHomoShowerParameterisation::Tmaxh
private

◆ TNSpot

G4double GFlashHomoShowerParameterisation::TNSpot
private

◆ WeightCore

G4double GFlashHomoShowerParameterisation::WeightCore
private

◆ X0

G4double GVFlashShowerParameterisation::X0
protectedinherited

◆ Z

G4double GVFlashShowerParameterisation::Z
protectedinherited

The documentation for this class was generated from the following files: