Geant4.10
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions
G4ComponentSAIDTotalXS Class Reference

#include <G4ComponentSAIDTotalXS.hh>

Inheritance diagram for G4ComponentSAIDTotalXS:
G4VComponentCrossSection

Public Member Functions

 G4ComponentSAIDTotalXS ()
 
virtual ~G4ComponentSAIDTotalXS ()
 
virtual G4double GetTotalElementCrossSection (const G4ParticleDefinition *, G4double kinEnergy, G4int, G4double)
 
virtual G4double GetTotalIsotopeCrossSection (const G4ParticleDefinition *, G4double kinEnergy, G4int, G4int)
 
virtual G4double GetInelasticElementCrossSection (const G4ParticleDefinition *, G4double kinEnergy, G4int, G4double)
 
virtual G4double GetInelasticIsotopeCrossSection (const G4ParticleDefinition *, G4double kinEnergy, G4int, G4int)
 
virtual G4double GetElasticElementCrossSection (const G4ParticleDefinition *, G4double kinEnergy, G4int, G4double)
 
virtual G4double GetElasticIsotopeCrossSection (const G4ParticleDefinition *, G4double kinEnergy, G4int, G4int)
 
G4double GetChargeExchangeCrossSection (const G4ParticleDefinition *prim, const G4ParticleDefinition *sec, G4double kinEnergy, G4int, G4int)
 
virtual void Description () const
 
- Public Member Functions inherited from G4VComponentCrossSection
 G4VComponentCrossSection (const G4String &nam="")
 
virtual ~G4VComponentCrossSection ()
 
G4double GetTotalElementCrossSection (const G4ParticleDefinition *, G4double kinEnergy, const G4Element *)
 
G4double GetInelasticElementCrossSection (const G4ParticleDefinition *, G4double kinEnergy, const G4Element *)
 
G4double GetElasticElementCrossSection (const G4ParticleDefinition *, G4double kinEnergy, const G4Element *)
 
virtual G4double ComputeQuasiElasticRatio (const G4ParticleDefinition *, G4double kinEnergy, G4int, G4int)
 
virtual void BuildPhysicsTable (const G4ParticleDefinition &)
 
virtual void DumpPhysicsTable (const G4ParticleDefinition &)
 
void SetVerboseLevel (G4int value)
 
G4int GetVerboseLevel () const
 
G4double GetMinKinEnergy () const
 
void SetMinKinEnergy (G4double value)
 
G4double GetMaxKinEnergy () const
 
void SetMaxKinEnergy (G4double value)
 
const G4StringGetName () const
 

Detailed Description

Definition at line 74 of file G4ComponentSAIDTotalXS.hh.

Constructor & Destructor Documentation

G4ComponentSAIDTotalXS::G4ComponentSAIDTotalXS ( )

Definition at line 50 of file G4ComponentSAIDTotalXS.cc.

References numberOfSaidXS.

51  : G4VComponentCrossSection("xsSAID")
52 {
53  for(G4int i=0; i<numberOfSaidXS; ++i) {
54  elastdata[i] = 0;
55  inelastdata[i] = 0;
56  }
57 }
int G4int
Definition: G4Types.hh:78
G4VComponentCrossSection(const G4String &nam="")
G4ComponentSAIDTotalXS::~G4ComponentSAIDTotalXS ( )
virtual

Definition at line 59 of file G4ComponentSAIDTotalXS.cc.

60 {
61  /*
62  for(G4int i=0; i<numberOfSaidXS; ++i) {
63  if(elastdata[i]) {
64  delete elastdata[i];
65  elastdata[i] = 0;
66  }
67  if(inelastdata[i]) {
68  delete inelastdata[i];
69  inelastdata[i] = 0;
70  }
71  }
72  */
73 }

Member Function Documentation

void G4ComponentSAIDTotalXS::Description ( ) const
virtual

Reimplemented from G4VComponentCrossSection.

Definition at line 170 of file G4ComponentSAIDTotalXS.cc.

171 {
172 }
G4double G4ComponentSAIDTotalXS::GetChargeExchangeCrossSection ( const G4ParticleDefinition prim,
const G4ParticleDefinition sec,
G4double  kinEnergy,
G4int  Z,
G4int  N 
)

Definition at line 152 of file G4ComponentSAIDTotalXS.cc.

References saidUnknown, and G4InuclParticleNames::tp.

156 {
157  G4double cross = 0.0;
158  G4SAIDCrossSectionType tp = GetType(prim,sec,Z,N);
159  if(saidUnknown != tp) {
160  G4int idx = G4int(tp);
161  if(!inelastdata[idx]) { Initialise(tp); }
162  if(inelastdata[idx]) {
163  cross = (inelastdata[idx])->Value(kinEnergy);
164  }
165  }
166  return cross;
167 }
G4SAIDCrossSectionType
int G4int
Definition: G4Types.hh:78
**D E S C R I P T I O N
double G4double
Definition: G4Types.hh:76
G4double G4ComponentSAIDTotalXS::GetElasticElementCrossSection ( const G4ParticleDefinition part,
G4double  kinEnergy,
G4int  Z,
G4double  N 
)
virtual

Implements G4VComponentCrossSection.

Definition at line 124 of file G4ComponentSAIDTotalXS.cc.

References G4lrint().

127 {
128  PrintWarning(part,0,Z,G4lrint(N),
129  "G4ComponentSAIDTotalXS::GetTotalElementCrossSection",
130  "Method is not implemented");
131  return 0.0;
132 }
int G4lrint(double ad)
Definition: templates.hh:163
**D E S C R I P T I O N
G4double G4ComponentSAIDTotalXS::GetElasticIsotopeCrossSection ( const G4ParticleDefinition part,
G4double  kinEnergy,
G4int  Z,
G4int  N 
)
virtual

Implements G4VComponentCrossSection.

Definition at line 135 of file G4ComponentSAIDTotalXS.cc.

References saidUnknown, and G4InuclParticleNames::tp.

Referenced by G4BGGPionElasticXS::BuildPhysicsTable(), G4BGGNucleonElasticXS::BuildPhysicsTable(), G4BGGPionElasticXS::GetIsoCrossSection(), G4BGGNucleonElasticXS::GetIsoCrossSection(), and GetTotalIsotopeCrossSection().

138 {
139  G4double cross = 0.0;
140  G4SAIDCrossSectionType tp = GetType(part,0,Z,N);
141  if(saidUnknown != tp) {
142  G4int idx = G4int(tp);
143  if(!elastdata[idx]) { Initialise(tp); }
144  if(elastdata[idx]) {
145  cross = (elastdata[idx])->Value(kinEnergy);
146  }
147  }
148  return cross;
149 }
G4SAIDCrossSectionType
int G4int
Definition: G4Types.hh:78
**D E S C R I P T I O N
double G4double
Definition: G4Types.hh:76
G4double G4ComponentSAIDTotalXS::GetInelasticElementCrossSection ( const G4ParticleDefinition part,
G4double  kinEnergy,
G4int  Z,
G4double  N 
)
virtual

Implements G4VComponentCrossSection.

Definition at line 96 of file G4ComponentSAIDTotalXS.cc.

References G4lrint().

99 {
100  PrintWarning(part,0,Z,G4lrint(N),
101  "G4ComponentSAIDTotalXS::GetTotalElementCrossSection",
102  "Method is not implemented");
103  return 0.0;
104 }
int G4lrint(double ad)
Definition: templates.hh:163
**D E S C R I P T I O N
G4double G4ComponentSAIDTotalXS::GetInelasticIsotopeCrossSection ( const G4ParticleDefinition part,
G4double  kinEnergy,
G4int  Z,
G4int  N 
)
virtual

Implements G4VComponentCrossSection.

Definition at line 107 of file G4ComponentSAIDTotalXS.cc.

References saidUnknown, and G4InuclParticleNames::tp.

Referenced by G4BGGNucleonInelasticXS::BuildPhysicsTable(), G4BGGPionInelasticXS::BuildPhysicsTable(), G4BGGNucleonInelasticXS::GetIsoCrossSection(), G4BGGPionInelasticXS::GetIsoCrossSection(), and GetTotalIsotopeCrossSection().

110 {
111  G4double cross = 0.0;
112  G4SAIDCrossSectionType tp = GetType(part,0,Z,N);
113  if(saidUnknown != tp) {
114  G4int idx = G4int(tp);
115  if(!inelastdata[idx]) { Initialise(tp); }
116  if(inelastdata[idx]) {
117  cross = (inelastdata[idx])->Value(kinEnergy);
118  }
119  }
120  return cross;
121 }
G4SAIDCrossSectionType
int G4int
Definition: G4Types.hh:78
**D E S C R I P T I O N
double G4double
Definition: G4Types.hh:76
G4double G4ComponentSAIDTotalXS::GetTotalElementCrossSection ( const G4ParticleDefinition part,
G4double  kinEnergy,
G4int  Z,
G4double  N 
)
virtual

Implements G4VComponentCrossSection.

Definition at line 76 of file G4ComponentSAIDTotalXS.cc.

References G4lrint().

79 {
80  PrintWarning(part,0,Z,G4lrint(N),
81  "G4ComponentSAIDTotalXS::GetTotalElementCrossSection",
82  "Method is not implemented");
83  return 0.0;
84 }
int G4lrint(double ad)
Definition: templates.hh:163
**D E S C R I P T I O N
G4double G4ComponentSAIDTotalXS::GetTotalIsotopeCrossSection ( const G4ParticleDefinition part,
G4double  kinEnergy,
G4int  Z,
G4int  N 
)
virtual

Implements G4VComponentCrossSection.

Definition at line 87 of file G4ComponentSAIDTotalXS.cc.

References GetElasticIsotopeCrossSection(), and GetInelasticIsotopeCrossSection().

90 {
91  return GetInelasticIsotopeCrossSection(part,kinEnergy,Z,N)
92  + GetElasticIsotopeCrossSection(part,kinEnergy,Z,N);
93 }
virtual G4double GetInelasticIsotopeCrossSection(const G4ParticleDefinition *, G4double kinEnergy, G4int, G4int)
virtual G4double GetElasticIsotopeCrossSection(const G4ParticleDefinition *, G4double kinEnergy, G4int, G4int)
**D E S C R I P T I O N

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