Geant4  10.02.p02
G4XNNElasticLowE Class Reference

#include <G4XNNElasticLowE.hh>

+ Inheritance diagram for G4XNNElasticLowE:
+ Collaboration diagram for G4XNNElasticLowE:

Public Member Functions

 G4XNNElasticLowE ()
 
virtual ~G4XNNElasticLowE ()
 
G4bool operator== (const G4XNNElasticLowE &right) const
 
G4bool operator!= (const G4XNNElasticLowE &right) const
 
virtual G4double CrossSection (const G4KineticTrack &trk1, const G4KineticTrack &trk2) const
 
virtual const
G4CrossSectionVector
GetComponents () const
 
virtual G4bool IsValid (G4double e) const
 
virtual G4String Name () const
 
virtual void Print () const
 
virtual G4double HighLimit () const
 
- Public Member Functions inherited from G4VCrossSectionSource
 G4VCrossSectionSource ()
 
virtual ~G4VCrossSectionSource ()
 
G4bool operator== (const G4VCrossSectionSource &right) const
 
G4bool operator!= (const G4VCrossSectionSource &right) const
 
virtual void PrintAll (const G4KineticTrack &trk1, const G4KineticTrack &trk2) const
 
virtual G4double LowLimit () const
 

Private Member Functions

 G4XNNElasticLowE (const G4XNNElasticLowE &right)
 
const G4XNNElasticLowEoperator= (const G4XNNElasticLowE &right)
 

Private Attributes

std::map< const
G4ParticleDefinition
*, G4PhysicsVector
*, std::less< const
G4ParticleDefinition * > > 
xMap
 
G4double _eMin
 
G4double _eMax
 

Static Private Attributes

static const G4double _lowLimit = 0.
 
static const G4double _highLimit = 3.*GeV
 
static const G4double ppTable [101]
 
static const G4double npTable [101]
 
static const G4int tableSize = 101
 
static const G4double _eMinTable = 1.8964808
 
static const G4double _eStepLog = 0.01
 

Additional Inherited Members

- Protected Member Functions inherited from G4VCrossSectionSource
G4bool InLimits (G4double e, G4double eLow, G4double eHigh) const
 
const G4ParticleDefinitionFindLightParticle (const G4KineticTrack &trk1, const G4KineticTrack &trk2) const
 
G4double FcrossX (G4double e, G4double e0, G4double sigma, G4double eParam, G4double power) const
 
const G4ParticleDefinitionFindKeyParticle (const G4KineticTrack &trk1, const G4KineticTrack &trk2) const
 

Detailed Description

Definition at line 39 of file G4XNNElasticLowE.hh.

Constructor & Destructor Documentation

G4XNNElasticLowE::G4XNNElasticLowE ( )

Definition at line 89 of file G4XNNElasticLowE.cc.

References _eMax, _eMin, _eMinTable, _eStepLog, _highLimit, _lowLimit, G4Exp(), G4Log(), GeV, millibarn, G4Neutron::NeutronDefinition(), npTable, G4InuclParticleNames::pp, ppTable, G4Proton::ProtonDefinition(), G4PhysicsVector::PutValue(), tableSize, and xMap.

+ Here is the call graph for this function:

G4XNNElasticLowE::~G4XNNElasticLowE ( )
virtual

Definition at line 119 of file G4XNNElasticLowE.cc.

References G4Neutron::NeutronDefinition(), G4Proton::ProtonDefinition(), and xMap.

+ Here is the call graph for this function:

G4XNNElasticLowE::G4XNNElasticLowE ( const G4XNNElasticLowE right)
private

Member Function Documentation

G4double G4XNNElasticLowE::CrossSection ( const G4KineticTrack trk1,
const G4KineticTrack trk2 
) const
virtual

Implements G4VCrossSectionSource.

Definition at line 139 of file G4XNNElasticLowE.cc.

References _eMax, _eMin, G4VCrossSectionSource::FindKeyParticle(), G4KineticTrack::Get4Momentum(), G4PhysicsVector::GetValue(), and xMap.

+ Here is the call graph for this function:

virtual const G4CrossSectionVector* G4XNNElasticLowE::GetComponents ( ) const
inlinevirtual

Implements G4VCrossSectionSource.

Definition at line 53 of file G4XNNElasticLowE.hh.

virtual G4double G4XNNElasticLowE::HighLimit ( ) const
inlinevirtual

Reimplemented from G4VCrossSectionSource.

Definition at line 61 of file G4XNNElasticLowE.hh.

References _highLimit.

G4bool G4XNNElasticLowE::IsValid ( G4double  e) const
virtual

Reimplemented from G4VCrossSectionSource.

Definition at line 247 of file G4XNNElasticLowE.cc.

References _highLimit, _lowLimit, and G4VCrossSectionSource::InLimits().

+ Here is the call graph for this function:

G4String G4XNNElasticLowE::Name ( ) const
virtual

Implements G4VCrossSectionSource.

Definition at line 239 of file G4XNNElasticLowE.cc.

References name.

Referenced by Print().

+ Here is the caller graph for this function:

G4bool G4XNNElasticLowE::operator!= ( const G4XNNElasticLowE right) const

Definition at line 132 of file G4XNNElasticLowE.cc.

const G4XNNElasticLowE& G4XNNElasticLowE::operator= ( const G4XNNElasticLowE right)
private
G4bool G4XNNElasticLowE::operator== ( const G4XNNElasticLowE right) const

Definition at line 126 of file G4XNNElasticLowE.cc.

void G4XNNElasticLowE::Print ( void  ) const
virtual

Reimplemented from G4VCrossSectionSource.

Definition at line 176 of file G4XNNElasticLowE.cc.

References G4cout, G4endl, G4PhysicsVector::GetLowEdgeEnergy(), G4PhysicsVector::GetValue(), GeV, millibarn, Name(), G4Neutron::NeutronDefinition(), G4InuclParticleNames::pp, G4VCrossSectionSource::Print(), G4Proton::ProtonDefinition(), tableSize, and xMap.

+ Here is the call graph for this function:

Member Data Documentation

G4double G4XNNElasticLowE::_eMax
private

Definition at line 83 of file G4XNNElasticLowE.hh.

Referenced by CrossSection(), and G4XNNElasticLowE().

G4double G4XNNElasticLowE::_eMin
private

Definition at line 82 of file G4XNNElasticLowE.hh.

Referenced by CrossSection(), and G4XNNElasticLowE().

const G4double G4XNNElasticLowE::_eMinTable = 1.8964808
staticprivate

Definition at line 77 of file G4XNNElasticLowE.hh.

Referenced by G4XNNElasticLowE().

const G4double G4XNNElasticLowE::_eStepLog = 0.01
staticprivate

Definition at line 78 of file G4XNNElasticLowE.hh.

Referenced by G4XNNElasticLowE().

const G4double G4XNNElasticLowE::_highLimit = 3.*GeV
staticprivate

Definition at line 73 of file G4XNNElasticLowE.hh.

Referenced by G4XNNElasticLowE(), HighLimit(), and IsValid().

const G4double G4XNNElasticLowE::_lowLimit = 0.
staticprivate

Definition at line 72 of file G4XNNElasticLowE.hh.

Referenced by G4XNNElasticLowE(), and IsValid().

const G4double G4XNNElasticLowE::npTable
staticprivate
Initial value:
=
{
1500.00,
248.20, 93.38, 55.26, 44.50, 41.33, 38.48, 37.20, 35.98,
35.02, 34.47, 32.48, 30.76, 29.46, 28.53, 27.84, 27.20,
26.53, 25.95, 25.59, 25.46, 25.00, 24.49, 24.08, 23.86,
23.17, 22.70, 21.88, 21.48, 20.22, 19.75, 18.97, 18.39,
17.98, 17.63, 17.21, 16.72, 16.68, 16.58, 16.42, 16.22,
15.98, 15.71, 15.42, 15.14, 14.87, 14.65, 14.44, 14.26,
14.10, 13.95, 13.80, 13.64, 13.47, 13.29, 13.09, 12.89,
12.68, 12.47, 12.27, 12.06, 11.84, 11.76, 11.69, 11.60,
11.50, 11.41, 11.29, 11.17, 11.06, 10.93, 10.81, 10.68,
10.56, 10.44, 10.33, 10.21, 10.12, 10.03, 9.96, 9.89,
9.83, 9.80, 9.77, 9.75, 9.74, 9.74, 9.74, 9.76,
9.73, 9.70, 9.68, 9.65, 9.63, 9.60, 9.57, 9.55,
9.52, 9.49, 9.46, 9.43
}

Definition at line 75 of file G4XNNElasticLowE.hh.

Referenced by G4XNNElasticLowE().

const G4double G4XNNElasticLowE::ppTable
staticprivate
Initial value:
=
{
60.00,
33.48, 26.76, 25.26, 24.55, 23.94, 23.77, 23.72, 23.98,
25.48, 27.52, 27.72, 27.21, 25.80, 26.00, 24.32, 23.81,
24.37, 24.36, 23.13, 22.43, 21.71, 21.01, 20.83, 20.74,
20.25, 20.10, 20.59, 20.04, 20.83, 20.84, 21.07, 20.83,
20.79, 21.88, 21.15, 20.92, 19.00, 18.60, 17.30, 17.00,
16.70, 16.50, 16.20, 15.80, 15.57, 15.20, 15.00, 14.60,
14.20, 14.00, 13.80, 13.60, 13.40, 13.20, 13.00, 12.85,
12.70, 12.60, 12.50, 12.40, 12.30, 12.20, 12.10, 12.00,
11.90, 11.80, 11.75, 11.70, 11.64, 11.53, 11.41, 11.31,
11.22, 11.13, 11.05, 10.97, 10.89, 10.82, 10.75, 10.68,
10.61, 10.54, 10.48, 10.41, 10.35, 10.28, 10.22, 10.16,
10.13, 10.10, 10.08, 10.05, 10.02, 9.99, 9.96, 9.93,
9.90, 9.87, 9.84, 9.80
}

Definition at line 74 of file G4XNNElasticLowE.hh.

Referenced by G4XNNElasticLowE().

const G4int G4XNNElasticLowE::tableSize = 101
staticprivate

Definition at line 76 of file G4XNNElasticLowE.hh.

Referenced by G4XNNElasticLowE(), and Print().

std::map<const G4ParticleDefinition *, G4PhysicsVector*, std::less<const G4ParticleDefinition *> > G4XNNElasticLowE::xMap
private

Definition at line 80 of file G4XNNElasticLowE.hh.

Referenced by CrossSection(), G4XNNElasticLowE(), Print(), and ~G4XNNElasticLowE().


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