60 #include "G4ParticleChangeForLoss.hh"    69                           0.5917, 0.7628, 0.8983, 0.9801 };
    71                         0.1813, 0.1569, 0.1112, 0.0506 };
   210   if(cut == 0.0) { 
return 0.0; }
   247   for(
G4int l=0; l<
n; l++) {
   249     for(
G4int i=0; i<8; i++) {
   279   if(cut >= tmax) { 
return 0.0; }
   310   for(
G4int l=0; l<
n; l++) {
   312     for(
G4int i=0; i<8; i++) {
   336   if (ScreenVariable > 1.)
   337     screenVal = 42.24 - 8.368*
G4Log(ScreenVariable+0.952);
   339     screenVal = 42.392 - ScreenVariable* (7.796 - 1.961*ScreenVariable);
   352   if (ScreenVariable > 1.)
   353     screenVal = 42.24 - 8.368*
G4Log(ScreenVariable+0.952);
   355     screenVal = 41.734 - ScreenVariable* (6.484 - 1.250*ScreenVariable);
   382   if (kineticEnergy > 
tlow) {
   392     ah = 1.   + (ah1*U2 + ah2*U + ah3) / (U2*U);
   393     bh = 0.75 + (bh1*U2 + bh2*U + bh3) / (U2*U);
   400         G4double screenvar = screenfac*epsil/(1.0-epsil);
   405     greject = (F1 - epsil* (ah*F1 - bh*epsil*F2))/8.; 
   407     std::cout << 
" yy = "<<epsil<<std::endl;
   408     std::cout << 
" F1/(...) "<<F1/(42.392 - FZ)<<std::endl;
   409     std::cout << 
" F2/(...) "<<F2/(42.392 - FZ)<<std::endl;
   410     std::cout << 
" (42.392 - FZ) " << (42.392 - FZ) <<std::endl;
   422     ah = al0 + al1*U + al2*U2;
   423     bh = bl0 + bl1*U + bl2*U2;
   426     greject=(1. + x* (ah + bh*
x));
   444   if(gammaEnergy < 0.0) { 
return 0.0; }
   458   std::cout<<
"Ekin = "<<
kinEnergy<<std::endl;
   459   std::cout<<
"Z = "<<
currentZ<<std::endl;
   460   std::cout<<
"main  = "<<main<<std::endl;
   461   std::cout<<
" y = "<<y<<std::endl;
   462   std::cout<<
" Fel-fCoulomb "<< (
Fel-
fCoulomb) <<std::endl;
   465   std::cout<<
"main2 = "<<main2<<std::endl;
   475                       std::vector<G4DynamicParticle*>* vdp, 
   485   if(cut >= emax) { 
return; }
   506     gammaEnergy = sqrt(x);
   510       G4cout << 
"### G4eBremParametrizedModel Warning: Majoranta exceeded! "   511          << f << 
" > " << 
fMax   512          << 
" Egamma(MeV)= " << gammaEnergy
   513          << 
" E(mEV)= " << kineticEnergy
   518   } 
while (f < fMax*rndmEngine->
flat());
   532   vdp->push_back(gamma);
   536                  - gammaEnergy*gammaDirection).unit();
   539   G4double finalE = kineticEnergy - gammaEnergy;
 
G4double LowEnergyLimit() const
 
static const G4double bh12
 
G4double ScreenFunction2(G4double ScreenVariable)
 
static const G4double al00
 
G4double SecondaryThreshold() const
 
virtual void InitialiseLocal(const G4ParticleDefinition *, G4VEmModel *masterModel)
 
static const G4double bh10
 
G4ParticleChangeForLoss * GetParticleChangeForLoss()
 
static const G4double bh32
 
G4bool isElectron(G4int ityp)
 
static const G4double al12
 
std::vector< G4Element * > G4ElementVector
 
const G4Material * GetMaterial() const
 
static const G4double bl02
 
void InitialiseElementSelectors(const G4ParticleDefinition *, const G4DataVector &)
 
static const G4double ah11
 
G4ParticleChangeForLoss * fParticleChange
 
static const G4double bl11
 
void InitialiseConstants()
 
G4double GetZ13(G4double Z)
 
virtual G4double ComputeDEDXPerVolume(const G4Material *, const G4ParticleDefinition *, G4double kineticEnergy, G4double cutEnergy)
 
G4VEmAngularDistribution * GetAngularDistribution()
 
G4eBremParametrizedModel(const G4ParticleDefinition *p=0, const G4String &nam="eBremParam")
 
void SetElementSelectors(std::vector< G4EmElementSelector *> *)
 
static const G4double bh22
 
int main(int argc, char **argv)
 
G4double ScreenFunction1(G4double ScreenVariable)
 
static const G4double ah31
 
static const G4double xgi[8]
 
static const G4double al01
 
G4double ComputeXSectionPerAtom(G4double cutEnergy)
 
static const G4double bl21
 
static G4NistManager * Instance()
 
static const G4double ah22
 
static const G4double al11
 
static const G4double bh20
 
static const G4double bl00
 
static const G4double al22
 
static const G4double bl01
 
G4double GetKineticEnergy() const
 
static const G4double al20
 
const G4double * GetAtomicNumDensityVector() const
 
static const G4double al02
 
G4GLOB_DLL std::ostream G4cout
 
G4ParticleDefinition * theGamma
 
virtual G4ThreeVector & SampleDirection(const G4DynamicParticle *dp, G4double finalTotalEnergy, G4int Z, const G4Material *)=0
 
static const G4double bh11
 
float electron_Compton_length
 
static const G4double tlow
 
std::vector< G4EmElementSelector * > * GetElementSelectors()
 
static const G4double bh30
 
virtual ~G4eBremParametrizedModel()
 
static const G4double emax
 
G4double G4Log(G4double x)
 
G4double G4Exp(G4double initial_x)
Exponential Function double precision. 
 
G4double ComputeParametrizedDXSectionPerAtom(G4double kineticEnergy, G4double gammaEnergy, G4double Z)
 
static const G4double ah12
 
int classic_electr_radius
 
static const G4double ah32
 
static const G4double al10
 
static const G4double ah20
 
G4double GetElectronDensity() const
 
const G4ThreeVector & GetMomentumDirection() const
 
G4double GetPDGMass() const
 
void SetParticle(const G4ParticleDefinition *p)
 
void SetAngularDistribution(G4VEmAngularDistribution *)
 
size_t GetNumberOfElements() const
 
static const G4double bh21
 
const G4ParticleDefinition * particle
 
static const G4double bl22
 
static const G4double bh31
 
static G4Electron * Electron()
 
virtual G4double ComputeCrossSectionPerAtom(const G4ParticleDefinition *, G4double tkin, G4double Z, G4double, G4double cutEnergy, G4double maxEnergy=DBL_MAX)
 
static const G4double bl10
 
G4double ComputeDXSectionPerAtom(G4double gammaEnergy)
 
const G4ElementVector * GetElementVector() const
 
virtual void SetupForMaterial(const G4ParticleDefinition *, const G4Material *, G4double)
 
static const G4double bl12
 
void SetCurrentElement(const G4double)
 
void SetLowEnergyLimit(G4double)
 
static const G4double al21
 
virtual G4double MinEnergyCut(const G4ParticleDefinition *, const G4MaterialCutsCouple *)
 
static const G4double wgi[8]
 
void SetCurrentElement(const G4Element *)
 
static const G4double ah21
 
static const G4double ah30
 
G4double ComputeBremLoss(G4double cutEnergy)
 
static const G4double bl20
 
virtual void SampleSecondaries(std::vector< G4DynamicParticle *> *, const G4MaterialCutsCouple *, const G4DynamicParticle *, G4double cutEnergy, G4double maxEnergy)
 
const G4Element * SelectRandomAtom(const G4MaterialCutsCouple *, const G4ParticleDefinition *, G4double kineticEnergy, G4double cutEnergy=0.0, G4double maxEnergy=DBL_MAX)
 
static const G4double ah10
 
virtual void Initialise(const G4ParticleDefinition *, const G4DataVector &)