Geant4  10.02.p03
G4DiffElasticRatio Class Reference

#include <G4DiffElasticRatio.hh>

Inheritance diagram for G4DiffElasticRatio:
Collaboration diagram for G4DiffElasticRatio:

Public Member Functions

 G4DiffElasticRatio (const G4String &nam="", G4int verb=0)
 
virtual ~G4DiffElasticRatio ()
 
G4double ComputeRatio (const G4ParticleDefinition *, G4double kinEnergy, G4int Z, G4int A)
 
void SetEnergyThreshold (G4double e)
 
G4double GetEnergyThreshold ()
 
- Public Member Functions inherited from G4VCrossSectionRatio
 G4VCrossSectionRatio (const G4String &nam="", G4int verb=0)
 
virtual ~G4VCrossSectionRatio ()
 
virtual void BuildPhysicsTable (const G4ParticleDefinition &)
 
virtual void DumpPhysicsTable (const G4ParticleDefinition &)
 
virtual void Description () const
 
void SetVerboseLevel (G4int value)
 
G4int GetVerboseLevel () const
 
const G4StringGetName () const
 

Private Member Functions

G4DiffElasticRatiooperator= (const G4DiffElasticRatio &right)
 
 G4DiffElasticRatio (const G4DiffElasticRatio &)
 

Private Attributes

G4ComponentGGHadronNucleusXscfGGXsc
 
G4double fDDthreshold
 

Detailed Description

Definition at line 55 of file G4DiffElasticRatio.hh.

Constructor & Destructor Documentation

◆ G4DiffElasticRatio() [1/2]

G4DiffElasticRatio::G4DiffElasticRatio ( const G4String nam = "",
G4int  verb = 0 
)

Definition at line 46 of file G4DiffElasticRatio.cc.

47  : G4VCrossSectionRatio( nam, verb)
48 {
50  fDDthreshold = 450.*CLHEP::MeV; // ~3 pi masses
51 }
G4ComponentGGHadronNucleusXsc * fGGXsc
G4VCrossSectionRatio(const G4String &nam="", G4int verb=0)
static const double MeV
Here is the caller graph for this function:

◆ ~G4DiffElasticRatio()

G4DiffElasticRatio::~G4DiffElasticRatio ( )
virtual

Definition at line 53 of file G4DiffElasticRatio.cc.

54 {
55  if(fGGXsc) delete fGGXsc;
56 }
G4ComponentGGHadronNucleusXsc * fGGXsc

◆ G4DiffElasticRatio() [2/2]

G4DiffElasticRatio::G4DiffElasticRatio ( const G4DiffElasticRatio )
private

Member Function Documentation

◆ ComputeRatio()

G4double G4DiffElasticRatio::ComputeRatio ( const G4ParticleDefinition theParticleDefinition,
G4double  kinEnergy,
G4int  Z,
G4int  A 
)
virtual

Implements G4VCrossSectionRatio.

Definition at line 59 of file G4DiffElasticRatio.cc.

62 {
63  G4double ratio = 0.;
64 
65  if( A > 1 && kinEnergy > fDDthreshold )
66  {
67  G4double ggElXsc = fGGXsc->GetElasticElementCrossSection(theParticleDefinition,kinEnergy,
68  Z,A);
70 
71  if( ggElXsc > 0.) ratio = ggsdXsc/ggElXsc;
72  else ratio = 0;
73  }
74  // G4cout<<theParticleDefinition->GetParticleName()<<"; "<<kinEnergy/CLHEP::GeV<<" GeV; r = "<<ratio<<G4endl;
75  return ratio;
76 }
G4ComponentGGHadronNucleusXsc * fGGXsc
double A(double temperature)
Float_t Z
double G4double
Definition: G4Types.hh:76
virtual G4double GetElasticElementCrossSection(const G4ParticleDefinition *aParticle, G4double kinEnergy, G4int Z, G4double A)
Here is the call graph for this function:

◆ GetEnergyThreshold()

G4double G4DiffElasticRatio::GetEnergyThreshold ( )
inline

Definition at line 69 of file G4DiffElasticRatio.hh.

69 {return fDDthreshold;};
Here is the call graph for this function:

◆ operator=()

G4DiffElasticRatio& G4DiffElasticRatio::operator= ( const G4DiffElasticRatio right)
private
Here is the caller graph for this function:

◆ SetEnergyThreshold()

void G4DiffElasticRatio::SetEnergyThreshold ( G4double  e)
inline

Definition at line 68 of file G4DiffElasticRatio.hh.

Member Data Documentation

◆ fDDthreshold

G4double G4DiffElasticRatio::fDDthreshold
private

Definition at line 77 of file G4DiffElasticRatio.hh.

◆ fGGXsc

G4ComponentGGHadronNucleusXsc* G4DiffElasticRatio::fGGXsc
private

Definition at line 76 of file G4DiffElasticRatio.hh.


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