Geant4  10.03.p01
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
G4INCL::CDPP Class Reference

#include <G4INCLCDPP.hh>

Inheritance diagram for G4INCL::CDPP:
Collaboration diagram for G4INCL::CDPP:

Public Member Functions

 CDPP ()
 
 ~CDPP ()
 
G4bool isBlocked (ParticleList const &, Nucleus const *const)
 
void processOneParticle (Particle const *const p)
 
- Public Member Functions inherited from G4INCL::IPauli
 IPauli ()
 
virtual ~IPauli ()
 

Protected Attributes

G4double Sk
 
G4double TbelowTf
 
NuclearPotential::INuclearPotential
const * 
thePotential
 

Detailed Description

Definition at line 47 of file G4INCLCDPP.hh.

Constructor & Destructor Documentation

G4INCL::CDPP::CDPP ( )

Definition at line 44 of file G4INCLCDPP.cc.

44  :
45  Sk(0.0),
46  TbelowTf(0.0),
47  thePotential(NULL)
48  {}
G4double TbelowTf
Definition: G4INCLCDPP.hh:73
G4double Sk
Definition: G4INCLCDPP.hh:72
NuclearPotential::INuclearPotential const * thePotential
Definition: G4INCLCDPP.hh:74
G4INCL::CDPP::~CDPP ( )

Definition at line 50 of file G4INCLCDPP.cc.

50 {}

Member Function Documentation

G4bool G4INCL::CDPP::isBlocked ( ParticleList const &  created,
Nucleus const * const  nucleus 
)
virtual

Implements G4INCL::IPauli.

Definition at line 52 of file G4INCLCDPP.cc.

52  {
53  G4double S = nucleus->computeSeparationEnergyBalance();
54 
55  thePotential = nucleus->getPotential();
56 
57  ParticleList const &remnantParticles = nucleus->getStore()->getParticles();
58 
59  Sk = 0.0;
60  TbelowTf = 0.0;
61 
62  std::for_each(remnantParticles.begin(), remnantParticles.end(), std::bind1st(std::mem_fun(&G4INCL::CDPP::processOneParticle), this));
63  std::for_each(created.begin(), created.end(), std::bind1st(std::mem_fun(&G4INCL::CDPP::processOneParticle), this));
64 
65  const G4double Tinitial = nucleus->getInitialInternalEnergy();
66  const G4double Eblock = TbelowTf - Tinitial - Sk - S;
67 
68  return (Eblock < 0.0);
69  }
double S(double temp)
G4double TbelowTf
Definition: G4INCLCDPP.hh:73
G4double Sk
Definition: G4INCLCDPP.hh:72
void processOneParticle(Particle const *const p)
Definition: G4INCLCDPP.hh:54
double G4double
Definition: G4Types.hh:76
NuclearPotential::INuclearPotential const * thePotential
Definition: G4INCLCDPP.hh:74

Here is the call graph for this function:

void G4INCL::CDPP::processOneParticle ( Particle const *const  p)
inline

Definition at line 54 of file G4INCLCDPP.hh.

54  {
55  if(p->isNucleon()) {
57  const G4double T = p->getKineticEnergy();
58 
59  if(T > Tf) {
61  Sk += sep;
62  } else {
63  TbelowTf += T - p->getPotentialEnergy();
64  }
65  } else if(p->isPion() || p->isResonance()) {
67  Sk += sep;
68  }
69  }
const char * p
Definition: xmltok.h:285
G4double TbelowTf
Definition: G4INCLCDPP.hh:73
G4double getFermiEnergy(const Particle *const p) const
Return the Fermi energy for a particle.
G4double getSeparationEnergy(const Particle *const p) const
Return the separation energy for a particle.
G4double Sk
Definition: G4INCLCDPP.hh:72
double G4double
Definition: G4Types.hh:76
NuclearPotential::INuclearPotential const * thePotential
Definition: G4INCLCDPP.hh:74

Here is the call graph for this function:

Here is the caller graph for this function:

Member Data Documentation

G4double G4INCL::CDPP::Sk
protected

Definition at line 72 of file G4INCLCDPP.hh.

G4double G4INCL::CDPP::TbelowTf
protected

Definition at line 73 of file G4INCLCDPP.hh.

NuclearPotential::INuclearPotential const* G4INCL::CDPP::thePotential
protected

Definition at line 74 of file G4INCLCDPP.hh.


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