ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
G4CascadeCoalescence Class Reference

#include <geant4/tree/geant4-10.6-release/source/processes/hadronic/models/cascade/cascade/include/G4CascadeCoalescence.hh>

+ Collaboration diagram for G4CascadeCoalescence:

Public Member Functions

 G4CascadeCoalescence (G4int verbose=0)
 
virtual ~G4CascadeCoalescence ()
 
void FindClusters (G4CollisionOutput &finalState)
 
void setVerboseLevel (G4int verbose)
 

Private Types

typedef std::vector< size_t > ClusterCandidate
 

Private Member Functions

void selectCandidates ()
 
void createNuclei ()
 
void removeNucleons ()
 
void tryClusters (size_t idx1, size_t idx2)
 
void tryClusters (size_t idx1, size_t idx2, size_t idx3)
 
void tryClusters (size_t idx1, size_t idx2, size_t idx3, size_t idx4)
 
void fillCluster (size_t idx1, size_t idx2)
 
void fillCluster (size_t idx1, size_t idx2, size_t idx3)
 
void fillCluster (size_t idx1, size_t idx2, size_t idx3, size_t idx4)
 
bool nucleonUsed (size_t idx) const
 
bool allNucleons (const ClusterCandidate &clus) const
 
bool goodCluster (const ClusterCandidate &clus) const
 
G4int clusterType (const ClusterCandidate &aCluster) const
 
const G4InuclElementaryParticlegetHadron (size_t idx) const
 
bool makeLightIon (const ClusterCandidate &aCluster)
 
G4LorentzVector getClusterMomentum (const ClusterCandidate &aCluster) const
 
G4double maxDeltaP (const ClusterCandidate &aCluster) const
 
void reportArgs (const G4String &name, const ClusterCandidate &clus) const
 
void reportResult (const G4String &name, const G4InuclNuclei &nucl) const
 

Private Attributes

G4int verboseLevel
 
std::vector< ClusterCandidateallClusters
 
std::set< size_t > usedNucleons
 
G4CollisionOutputthisFinalState
 
const std::vector
< G4InuclElementaryParticle > * 
thisHadrons
 
ClusterCandidate thisCluster
 
G4InuclNuclei thisLightIon
 
const G4double dpMaxDoublet
 
const G4double dpMaxTriplet
 
const G4double dpMaxAlpha
 
G4LorentzVector pCluster
 

Detailed Description

Definition at line 52 of file G4CascadeCoalescence.hh.

View newest version in sPHENIX GitHub at line 52 of file G4CascadeCoalescence.hh

Member Typedef Documentation

typedef std::vector<size_t> G4CascadeCoalescence::ClusterCandidate
private

Definition at line 63 of file G4CascadeCoalescence.hh.

View newest version in sPHENIX GitHub at line 63 of file G4CascadeCoalescence.hh

Constructor & Destructor Documentation

G4CascadeCoalescence::G4CascadeCoalescence ( G4int  verbose = 0)

Definition at line 66 of file G4CascadeCoalescence.cc.

View newest version in sPHENIX GitHub at line 66 of file G4CascadeCoalescence.cc

G4CascadeCoalescence::~G4CascadeCoalescence ( )
virtual

Definition at line 72 of file G4CascadeCoalescence.cc.

View newest version in sPHENIX GitHub at line 72 of file G4CascadeCoalescence.cc

Member Function Documentation

bool G4CascadeCoalescence::allNucleons ( const ClusterCandidate clus) const
private

Definition at line 287 of file G4CascadeCoalescence.cc.

View newest version in sPHENIX GitHub at line 287 of file G4CascadeCoalescence.cc

References getHadron(), and G4InuclElementaryParticle::nucleon().

Referenced by goodCluster().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4int G4CascadeCoalescence::clusterType ( const ClusterCandidate aCluster) const
private

Definition at line 248 of file G4CascadeCoalescence.cc.

View newest version in sPHENIX GitHub at line 248 of file G4CascadeCoalescence.cc

References getHadron(), G4InuclElementaryParticle::nucleon(), and G4InuclElementaryParticle::type().

Referenced by goodCluster(), and makeLightIon().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4CascadeCoalescence::createNuclei ( )
private

Definition at line 179 of file G4CascadeCoalescence.cc.

View newest version in sPHENIX GitHub at line 179 of file G4CascadeCoalescence.cc

References G4CollisionOutput::addOutgoingNucleus(), allClusters, G4cout, G4endl, makeLightIon(), thisFinalState, thisLightIon, usedNucleons, and verboseLevel.

Referenced by FindClusters().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4CascadeCoalescence::fillCluster ( size_t  idx1,
size_t  idx2 
)
private

Definition at line 261 of file G4CascadeCoalescence.cc.

View newest version in sPHENIX GitHub at line 261 of file G4CascadeCoalescence.cc

References thisCluster.

Referenced by tryClusters().

+ Here is the caller graph for this function:

void G4CascadeCoalescence::fillCluster ( size_t  idx1,
size_t  idx2,
size_t  idx3 
)
private

Definition at line 267 of file G4CascadeCoalescence.cc.

View newest version in sPHENIX GitHub at line 267 of file G4CascadeCoalescence.cc

References thisCluster.

void G4CascadeCoalescence::fillCluster ( size_t  idx1,
size_t  idx2,
size_t  idx3,
size_t  idx4 
)
private

Definition at line 274 of file G4CascadeCoalescence.cc.

View newest version in sPHENIX GitHub at line 274 of file G4CascadeCoalescence.cc

References thisCluster.

void G4CascadeCoalescence::FindClusters ( G4CollisionOutput finalState)

Definition at line 77 of file G4CascadeCoalescence.cc.

View newest version in sPHENIX GitHub at line 77 of file G4CascadeCoalescence.cc

References createNuclei(), G4cout, G4endl, G4CollisionOutput::getOutgoingParticles(), G4CollisionOutput::printCollisionOutput(), removeNucleons(), selectCandidates(), thisFinalState, thisHadrons, and verboseLevel.

Referenced by G4IntraNucleiCascader::finishCascade().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4LorentzVector G4CascadeCoalescence::getClusterMomentum ( const ClusterCandidate aCluster) const
private

Definition at line 215 of file G4CascadeCoalescence.cc.

View newest version in sPHENIX GitHub at line 215 of file G4CascadeCoalescence.cc

References getHadron(), G4InuclParticle::getMomentum(), pCluster, and CLHEP::HepLorentzVector::set().

Referenced by makeLightIon(), and maxDeltaP().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

const G4InuclElementaryParticle& G4CascadeCoalescence::getHadron ( size_t  idx) const
inlineprivate

Definition at line 106 of file G4CascadeCoalescence.hh.

View newest version in sPHENIX GitHub at line 106 of file G4CascadeCoalescence.hh

References incremental_prev_tag::idx, and thisHadrons.

Referenced by allNucleons(), clusterType(), getClusterMomentum(), maxDeltaP(), reportArgs(), and selectCandidates().

+ Here is the caller graph for this function:

bool G4CascadeCoalescence::goodCluster ( const ClusterCandidate clus) const
private

Definition at line 297 of file G4CascadeCoalescence.cc.

View newest version in sPHENIX GitHub at line 297 of file G4CascadeCoalescence.cc

References allNucleons(), clusterType(), dpMaxAlpha, dpMaxDoublet, dpMaxTriplet, maxDeltaP(), reportArgs(), and verboseLevel.

Referenced by tryClusters().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

bool G4CascadeCoalescence::makeLightIon ( const ClusterCandidate aCluster)
private

Definition at line 319 of file G4CascadeCoalescence.cc.

View newest version in sPHENIX GitHub at line 319 of file G4CascadeCoalescence.cc

References A(), G4InuclNuclei::clear(), clusterType(), G4InuclParticle::Coalescence, G4InuclNuclei::fill(), getClusterMomentum(), reportArgs(), reportResult(), thisLightIon, verboseLevel, and Z.

Referenced by createNuclei().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4CascadeCoalescence::maxDeltaP ( const ClusterCandidate aCluster) const
private

Definition at line 226 of file G4CascadeCoalescence.cc.

View newest version in sPHENIX GitHub at line 226 of file G4CascadeCoalescence.cc

References CLHEP::HepLorentzVector::boost(), CLHEP::HepLorentzVector::boostVector(), G4cout, G4endl, getClusterMomentum(), getHadron(), G4InuclParticle::getMomentum(), reportArgs(), CLHEP::HepLorentzVector::rho(), and verboseLevel.

Referenced by goodCluster().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

bool G4CascadeCoalescence::nucleonUsed ( size_t  idx) const
inlineprivate

Definition at line 96 of file G4CascadeCoalescence.hh.

View newest version in sPHENIX GitHub at line 96 of file G4CascadeCoalescence.hh

References usedNucleons.

Referenced by tryClusters().

+ Here is the caller graph for this function:

void G4CascadeCoalescence::removeNucleons ( )
private

Definition at line 199 of file G4CascadeCoalescence.cc.

View newest version in sPHENIX GitHub at line 199 of file G4CascadeCoalescence.cc

References G4cout, G4endl, G4CollisionOutput::removeOutgoingParticle(), thisFinalState, usedNucleons, and verboseLevel.

Referenced by FindClusters().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4CascadeCoalescence::reportArgs ( const G4String name,
const ClusterCandidate clus 
) const
private

Definition at line 348 of file G4CascadeCoalescence.cc.

View newest version in sPHENIX GitHub at line 348 of file G4CascadeCoalescence.cc

References field_utils::copy(), G4cout, G4endl, getHadron(), and verboseLevel.

Referenced by goodCluster(), makeLightIon(), maxDeltaP(), and tryClusters().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4CascadeCoalescence::reportResult ( const G4String name,
const G4InuclNuclei nucl 
) const
private

Definition at line 361 of file G4CascadeCoalescence.cc.

View newest version in sPHENIX GitHub at line 361 of file G4CascadeCoalescence.cc

References G4cout, and G4endl.

Referenced by makeLightIon().

+ Here is the caller graph for this function:

void G4CascadeCoalescence::selectCandidates ( )
private

Definition at line 96 of file G4CascadeCoalescence.cc.

View newest version in sPHENIX GitHub at line 96 of file G4CascadeCoalescence.cc

References allClusters, G4cout, G4endl, getHadron(), G4InuclParticleNames::nucleon(), thisHadrons, tryClusters(), usedNucleons, and verboseLevel.

Referenced by FindClusters().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4CascadeCoalescence::setVerboseLevel ( G4int  verbose)
inline

Definition at line 60 of file G4CascadeCoalescence.hh.

View newest version in sPHENIX GitHub at line 60 of file G4CascadeCoalescence.hh

References verboseLevel.

Referenced by G4IntraNucleiCascader::finishCascade(), and G4IntraNucleiCascader::setVerboseLevel().

+ Here is the caller graph for this function:

void G4CascadeCoalescence::tryClusters ( size_t  idx1,
size_t  idx2 
)
private

Definition at line 163 of file G4CascadeCoalescence.cc.

View newest version in sPHENIX GitHub at line 163 of file G4CascadeCoalescence.cc

References allClusters, fillCluster(), goodCluster(), nucleonUsed(), reportArgs(), thisCluster, usedNucleons, and verboseLevel.

Referenced by selectCandidates().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4CascadeCoalescence::tryClusters ( size_t  idx1,
size_t  idx2,
size_t  idx3 
)
private

Definition at line 148 of file G4CascadeCoalescence.cc.

View newest version in sPHENIX GitHub at line 148 of file G4CascadeCoalescence.cc

References allClusters, fillCluster(), goodCluster(), nucleonUsed(), reportArgs(), thisCluster, usedNucleons, and verboseLevel.

+ Here is the call graph for this function:

void G4CascadeCoalescence::tryClusters ( size_t  idx1,
size_t  idx2,
size_t  idx3,
size_t  idx4 
)
private

Definition at line 130 of file G4CascadeCoalescence.cc.

View newest version in sPHENIX GitHub at line 130 of file G4CascadeCoalescence.cc

References allClusters, fillCluster(), goodCluster(), nucleonUsed(), reportArgs(), thisCluster, usedNucleons, and verboseLevel.

+ Here is the call graph for this function:

Member Data Documentation

std::vector<ClusterCandidate> G4CascadeCoalescence::allClusters
private

Definition at line 67 of file G4CascadeCoalescence.hh.

View newest version in sPHENIX GitHub at line 67 of file G4CascadeCoalescence.hh

Referenced by createNuclei(), selectCandidates(), and tryClusters().

const G4double G4CascadeCoalescence::dpMaxAlpha
private

Definition at line 78 of file G4CascadeCoalescence.hh.

View newest version in sPHENIX GitHub at line 78 of file G4CascadeCoalescence.hh

Referenced by goodCluster().

const G4double G4CascadeCoalescence::dpMaxDoublet
private

Definition at line 76 of file G4CascadeCoalescence.hh.

View newest version in sPHENIX GitHub at line 76 of file G4CascadeCoalescence.hh

Referenced by goodCluster().

const G4double G4CascadeCoalescence::dpMaxTriplet
private

Definition at line 77 of file G4CascadeCoalescence.hh.

View newest version in sPHENIX GitHub at line 77 of file G4CascadeCoalescence.hh

Referenced by goodCluster().

G4LorentzVector G4CascadeCoalescence::pCluster
mutableprivate

Definition at line 115 of file G4CascadeCoalescence.hh.

View newest version in sPHENIX GitHub at line 115 of file G4CascadeCoalescence.hh

Referenced by getClusterMomentum().

ClusterCandidate G4CascadeCoalescence::thisCluster
private

Definition at line 73 of file G4CascadeCoalescence.hh.

View newest version in sPHENIX GitHub at line 73 of file G4CascadeCoalescence.hh

Referenced by fillCluster(), and tryClusters().

G4CollisionOutput* G4CascadeCoalescence::thisFinalState
private

Definition at line 70 of file G4CascadeCoalescence.hh.

View newest version in sPHENIX GitHub at line 70 of file G4CascadeCoalescence.hh

Referenced by createNuclei(), FindClusters(), and removeNucleons().

const std::vector<G4InuclElementaryParticle>* G4CascadeCoalescence::thisHadrons
private

Definition at line 71 of file G4CascadeCoalescence.hh.

View newest version in sPHENIX GitHub at line 71 of file G4CascadeCoalescence.hh

Referenced by FindClusters(), getHadron(), and selectCandidates().

G4InuclNuclei G4CascadeCoalescence::thisLightIon
private

Definition at line 74 of file G4CascadeCoalescence.hh.

View newest version in sPHENIX GitHub at line 74 of file G4CascadeCoalescence.hh

Referenced by createNuclei(), and makeLightIon().

std::set<size_t> G4CascadeCoalescence::usedNucleons
private

Definition at line 68 of file G4CascadeCoalescence.hh.

View newest version in sPHENIX GitHub at line 68 of file G4CascadeCoalescence.hh

Referenced by createNuclei(), nucleonUsed(), removeNucleons(), selectCandidates(), and tryClusters().

G4int G4CascadeCoalescence::verboseLevel
private

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