#include <G4INCLPauliStandard.hh>
Definition at line 44 of file G4INCLPauliStandard.hh.
G4INCL::PauliStandard::PauliStandard |
( |
| ) |
|
G4INCL::PauliStandard::~PauliStandard |
( |
| ) |
|
G4double G4INCL::PauliStandard::getBlockingProbability |
( |
Particle const * const |
particle, |
|
|
Nucleus const * const |
nucleus |
|
) |
| const |
Definition at line 62 of file G4INCLPauliStandard.cc.
64 const G4double pFermi = nucleus->getPotential()->getFermiMomentum(particle);
66 const G4double pbl = cellSize * std::sqrt(pFermi/r0);
67 const G4double rbl = pbl * r0/pFermi;
73 const G4double rdeq = nucleus->getUniverseRadius();
74 const G4double rs = particle->getPosition().mag();
76 if(rs - maxVolR > rdeq) {
80 if(rs + maxVolR > rdeq) {
81 vol = vol * 0.5 * (rdeq - rs + maxVolR) / maxVolR;
86 ParticleList
const &particles = nucleus->getStore()->getParticles();
89 for(
ParticleIter it=particles.begin(), e=particles.end(); it!=e; ++it) {
91 if( (*it)->getID() == particle->getID() )
continue;
93 if((*it)->getType() == particle->getType()) {
94 const ThreeVector dx2v = particle->getPosition() - (*it)->getPosition();
96 if(dx2 > maxVolR * maxVolR)
continue;
98 const ThreeVector dp2v = particle->getMomentum() - (*it)->getMomentum();
100 if(dp2 > maxVolP * maxVolP)
continue;
107 if(blockingProbability > 1.0)
return 1.0;
108 else if(blockingProbability < 0.0)
return 0.0;
109 else return blockingProbability;
const G4double hc
[MeV*fm]
G4double getNuclearRadius(const ParticleType t, const G4int A, const G4int Z)
ParticleList::const_iterator ParticleIter
Implements G4INCL::IPauli.
Definition at line 54 of file G4INCLPauliStandard.cc.
56 if( !(*p)->isNucleon() )
continue;
G4double getBlockingProbability(Particle const *const, Nucleus const *const) const
ParticleList::const_iterator ParticleIter
The documentation for this class was generated from the following files: