Geant4  10.03.p02
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
G4IonProtonCrossSection Class Reference

#include <G4IonProtonCrossSection.hh>

Inheritance diagram for G4IonProtonCrossSection:
Collaboration diagram for G4IonProtonCrossSection:

Public Member Functions

 G4IonProtonCrossSection ()
 
virtual ~G4IonProtonCrossSection ()
 
G4double GetProtonCrossSection (G4double kinEnergy, G4int Z)
 
virtual G4bool IsElementApplicable (const G4DynamicParticle *aPart, G4int Z, const G4Material *)
 
virtual G4double GetElementCrossSection (const G4DynamicParticle *aPart, G4int Z, const G4Material *)
 
virtual void CrossSectionDescription (std::ostream &) const
 
- Public Member Functions inherited from G4VCrossSectionDataSet
 G4VCrossSectionDataSet (const G4String &nam="")
 
virtual ~G4VCrossSectionDataSet ()
 
virtual G4bool IsIsoApplicable (const G4DynamicParticle *, G4int Z, G4int A, const G4Element *elm=0, const G4Material *mat=0)
 
G4double GetCrossSection (const G4DynamicParticle *, const G4Element *, const G4Material *mat=0)
 
G4double ComputeCrossSection (const G4DynamicParticle *, const G4Element *, const G4Material *mat=0)
 
virtual G4double GetIsoCrossSection (const G4DynamicParticle *, G4int Z, G4int A, const G4Isotope *iso=0, const G4Element *elm=0, const G4Material *mat=0)
 
virtual G4IsotopeSelectIsotope (const G4Element *, G4double kinEnergy)
 
virtual void BuildPhysicsTable (const G4ParticleDefinition &)
 
virtual void DumpPhysicsTable (const G4ParticleDefinition &)
 
virtual G4int GetVerboseLevel () const
 
virtual void SetVerboseLevel (G4int value)
 
G4double GetMinKinEnergy () const
 
void SetMinKinEnergy (G4double value)
 
G4double GetMaxKinEnergy () const
 
void SetMaxKinEnergy (G4double value)
 
const G4StringGetName () const
 

Additional Inherited Members

- Protected Member Functions inherited from G4VCrossSectionDataSet
void SetName (const G4String &)
 
- Protected Attributes inherited from G4VCrossSectionDataSet
G4int verboseLevel
 

Detailed Description

Definition at line 58 of file G4IonProtonCrossSection.hh.

Constructor & Destructor Documentation

G4IonProtonCrossSection::G4IonProtonCrossSection ( )

Definition at line 49 of file G4IonProtonCrossSection.cc.

50  : G4VCrossSectionDataSet("AxenWellischIonH")
51 {
52  theForward = new G4ProtonInelasticCrossSection();
53 }
G4VCrossSectionDataSet(const G4String &nam="")
G4IonProtonCrossSection::~G4IonProtonCrossSection ( )
virtual

Definition at line 55 of file G4IonProtonCrossSection.cc.

56 {}

Member Function Documentation

void G4IonProtonCrossSection::CrossSectionDescription ( std::ostream &  outFile) const
virtual

Reimplemented from G4VCrossSectionDataSet.

Definition at line 78 of file G4IonProtonCrossSection.cc.

79 {
80  outFile << "G4IonProtonCrossSection calculates the inelastic cross section\n"
81  << "for any ion projectile with Z >=2 only on hydrogen target.\n"
82  << "It uses the inverse kinematics and the Axen-Wellisch\n"
83  << "inelastic cross section (G4ProtonInelasticCrossSection).\n";
84 }
G4double G4IonProtonCrossSection::GetElementCrossSection ( const G4DynamicParticle aPart,
G4int  Z,
const G4Material  
)
virtual

Reimplemented from G4VCrossSectionDataSet.

Definition at line 67 of file G4IonProtonCrossSection.cc.

70 {
71  const G4ParticleDefinition* p = dp->GetDefinition();
72  G4double e = dp->GetKineticEnergy()*CLHEP::proton_mass_c2/p->GetPDGMass();
73  return
74  theForward->GetProtonCrossSection(e, G4lrint(p->GetPDGCharge()/eplus));
75 }
static constexpr double proton_mass_c2
const char * p
Definition: xmltok.h:285
static constexpr double eplus
Definition: G4SIunits.hh:199
G4double GetPDGMass() const
int G4lrint(double ad)
Definition: templates.hh:163
double G4double
Definition: G4Types.hh:76
G4double GetPDGCharge() const
G4double GetProtonCrossSection(G4double kineticEnergy, G4int Z)

Here is the call graph for this function:

G4double G4IonProtonCrossSection::GetProtonCrossSection ( G4double  kinEnergy,
G4int  Z 
)
G4bool G4IonProtonCrossSection::IsElementApplicable ( const G4DynamicParticle aPart,
G4int  Z,
const G4Material  
)
virtual

Reimplemented from G4VCrossSectionDataSet.

Definition at line 59 of file G4IonProtonCrossSection.cc.

61 {
62  return ((1 == Z) && (dp->GetDefinition()->GetPDGCharge()/eplus > 1.5));
63 }
static constexpr double eplus
Definition: G4SIunits.hh:199

Here is the call graph for this function:


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