32 #ifndef G4ParticleHPInterpolator_h
33 #define G4ParticleHPInterpolator_h 1
57 if(x2-x1==0)
return (y2+y1)/2.;
58 slope = (y2-
y1)/(x2-x1);
95 G4int theScheme = aScheme;
117 result =
Random(x, x1, x2, y1, y2);
121 throw G4HadronicException(__FILE__, __LINE__,
"G4ParticleHPInterpolator::Carthesian Invalid InterpolationScheme");
132 G4int theScheme = aScheme;
152 result =
Random(x, x1, x2, y1, y2);
156 throw G4HadronicException(__FILE__, __LINE__,
"G4ParticleHPInterpolator::Carthesian Invalid InterpolationScheme");
174 if(x2-x1==0)
return (y2+y1)/2.;
175 slope = (y2-
y1)/(x2-x1);
185 if(x==0) result = y1+y2/2.;
186 else if(x1==0) result =
y1;
187 else if(x2==0) result =
y2;
196 if(y1==0||y2==0) result = 0;
200 result =
G4Exp(result);
208 if(x==0)
return y1+y2/2.;
209 else if(x1==0)
return y1;
210 else if(x2==0)
return y2;
212 if(y1==0||y2==0) result = 0;
216 result =
G4Exp(result);
G4double G4Exp(G4double initial_x)
Exponential Function double precision.
Float_t y1[n_points_granero]
G4double Interpolate(G4InterpolationScheme aScheme, G4double x, G4double x1, G4double x2, G4double y1, G4double y2) const
G4double Random(G4double x, G4double x1, G4double x2, G4double y1, G4double y2) const
Float_t x1[n_points_granero]
~G4ParticleHPInterpolator()
G4double LogarithmicLinear(G4double x, G4double x1, G4double x2, G4double y1, G4double y2) const
G4double G4Log(G4double x)
G4double Interpolate2(G4InterpolationScheme aScheme, G4double x, G4double x1, G4double x2, G4double y1, G4double y2) const
Float_t y2[n_points_geant4]
G4double GetWeightedBinIntegral(const G4InterpolationScheme &aScheme, const G4double x1, const G4double x2, const G4double y1, const G4double y2)
G4ParticleHPInterpolator()
G4double Histogram(G4double x, G4double x1, G4double x2, G4double y1, G4double y2) const
G4double GetBinIntegral(const G4InterpolationScheme &aScheme, const G4double x1, const G4double x2, const G4double y1, const G4double y2)
G4double LinearLogarithmic(G4double x, G4double x1, G4double x2, G4double y1, G4double y2) const
G4double G4ParticleHPJENDLHEData::G4double result
G4double Lin(G4double x, G4double x1, G4double x2, G4double y1, G4double y2)
G4double LogarithmicLogarithmic(G4double x, G4double x1, G4double x2, G4double y1, G4double y2) const
G4GLOB_DLL std::ostream G4cout
Float_t x2[n_points_geant4]
G4double LinearLinear(G4double x, G4double x1, G4double x2, G4double y1, G4double y2) const