Geant4-11
Namespaces | Functions
G4INCL::Pauli Namespace Reference

Pauli blocking. More...

Namespaces

namespace  anonymous_namespace{G4INCLPauliBlocking.cc}
 

Functions

void deleteBlockers ()
 Delete blockers. More...
 
IPauligetBlocker ()
 Get the Pauli blocker algorithm. More...
 
IPauligetCDPP ()
 Get the CDPP blocker algorithm. More...
 
void initialize (Config const *const aConfig)
 Initialise blockers according to a Config object. More...
 
G4bool isBlocked (ParticleList const &p, Nucleus const *const n)
 Check Pauli blocking. More...
 
G4bool isCDPPBlocked (ParticleList const &p, Nucleus const *const n)
 Check CDPP blocking. More...
 
void setBlocker (IPauli *const)
 Set the Pauli blocker algorithm. More...
 
void setCDPP (IPauli *const)
 Set the CDPP blocker algorithm. More...
 

Detailed Description

Pauli blocking.

Function Documentation

◆ deleteBlockers()

void G4INCL::Pauli::deleteBlockers ( )

◆ getBlocker()

IPauli * G4INCL::Pauli::getBlocker ( )

Get the Pauli blocker algorithm.

Definition at line 57 of file G4INCLPauliBlocking.cc.

57{ return thePauliBlocker; }

References G4INCL::Pauli::anonymous_namespace{G4INCLPauliBlocking.cc}::thePauliBlocker.

◆ getCDPP()

IPauli * G4INCL::Pauli::getCDPP ( )

Get the CDPP blocker algorithm.

Definition at line 59 of file G4INCLPauliBlocking.cc.

59{ return theCDPP; }

References G4INCL::Pauli::anonymous_namespace{G4INCLPauliBlocking.cc}::theCDPP.

◆ initialize()

void G4INCL::Pauli::initialize ( Config const *const  aConfig)

Initialise blockers according to a Config object.

Definition at line 94 of file G4INCLPauliBlocking.cc.

94 {
95 // Select the Pauli blocking algorithm:
96 PauliType pauli = aConfig->getPauliType();
97 if(pauli == StrictStatisticalPauli)
99 else if(pauli == StatisticalPauli)
101 else if(pauli == StrictPauli)
103 else if(pauli == GlobalPauli)
105 else if(pauli == NoPauli)
106 setBlocker(NULL);
107
108 if(aConfig->getCDPP())
109 setCDPP(new CDPP);
110 else
111 setCDPP(NULL);
112
113 }
void setBlocker(IPauli *const)
Set the Pauli blocker algorithm.
void setCDPP(IPauli *const)
Set the CDPP blocker algorithm.
@ StrictStatisticalPauli

References G4INCL::Config::getCDPP(), G4INCL::Config::getPauliType(), G4INCL::GlobalPauli, G4INCL::NoPauli, setBlocker(), setCDPP(), G4INCL::StatisticalPauli, G4INCL::StrictPauli, and G4INCL::StrictStatisticalPauli.

Referenced by G4INCL::INCL::INCL().

◆ isBlocked()

G4bool G4INCL::Pauli::isBlocked ( ParticleList const &  p,
Nucleus const *const  n 
)

Check Pauli blocking.

Note: This is a "pure" function: it doesn't retain or modify any state at all and thus only depends on its arguments.

Parameters
plist of modified and created particles
nthe nucleus

Definition at line 69 of file G4INCLPauliBlocking.cc.

69 {
70 G4bool isPauliBlocked = false;
71 if(thePauliBlocker != 0) {
72 isPauliBlocked = thePauliBlocker->isBlocked(modifiedAndCreated, nucleus);
73 }
74
75 return isPauliBlocked;
76 }
bool G4bool
Definition: G4Types.hh:86
virtual G4bool isBlocked(ParticleList const &, Nucleus const *const)=0

References G4INCL::IPauli::isBlocked(), and G4INCL::Pauli::anonymous_namespace{G4INCLPauliBlocking.cc}::thePauliBlocker.

Referenced by G4INCL::InteractionAvatar::postInteraction().

◆ isCDPPBlocked()

G4bool G4INCL::Pauli::isCDPPBlocked ( ParticleList const &  p,
Nucleus const *const  n 
)

Check CDPP blocking.

Note: This is a "pure" function: it doesn't retain or modify any state at all and thus only depends on its arguments.

Parameters
plist of created particles
nthe nucleus

Definition at line 78 of file G4INCLPauliBlocking.cc.

78 {
79 G4bool isCDPPBlocked = false;
80 if(theCDPP != 0) {
81 isCDPPBlocked = theCDPP->isBlocked(created, nucleus);
82 }
83
84 return isCDPPBlocked;
85 }
G4bool isCDPPBlocked(ParticleList const &p, Nucleus const *const n)
Check CDPP blocking.

References G4INCL::IPauli::isBlocked(), isCDPPBlocked(), and G4INCL::Pauli::anonymous_namespace{G4INCLPauliBlocking.cc}::theCDPP.

Referenced by isCDPPBlocked(), G4INCL::InteractionAvatar::postInteraction(), and G4INCL::DecayAvatar::postInteraction().

◆ setBlocker()

void G4INCL::Pauli::setBlocker ( IPauli * const  pauliBlocker)

Set the Pauli blocker algorithm.

Definition at line 61 of file G4INCLPauliBlocking.cc.

61 {
62 thePauliBlocker = pauliBlocker;
63 }

References G4INCL::Pauli::anonymous_namespace{G4INCLPauliBlocking.cc}::thePauliBlocker.

Referenced by initialize().

◆ setCDPP()

void G4INCL::Pauli::setCDPP ( IPauli * const  cdpp)

Set the CDPP blocker algorithm.

Definition at line 65 of file G4INCLPauliBlocking.cc.

65 {
66 theCDPP = cdpp;
67 }

References G4INCL::Pauli::anonymous_namespace{G4INCLPauliBlocking.cc}::theCDPP.

Referenced by initialize().