35 #ifndef G4CASCADE_COALESCENCE_HH
36 #define G4CASCADE_COALESCENCE_HH
84 void tryClusters(
size_t idx1,
size_t idx2,
size_t idx3);
85 void tryClusters(
size_t idx1,
size_t idx2,
size_t idx3,
size_t idx4);
89 void fillCluster(
size_t idx1,
size_t idx2,
size_t idx3);
90 void fillCluster(
size_t idx1,
size_t idx2,
size_t idx3,
size_t idx4);
93 size_t clusterHash(
const ClusterCandidate& clus)
const;
97 return triedClusters.find(
clusterHash(clus)) != triedClusters.end();
102 return usedNucleons.find(idx) != usedNucleons.end();
106 bool allNucleons(
const ClusterCandidate& clus)
const;
107 bool goodCluster(
const ClusterCandidate& clus)
const;
112 return (*thisHadrons)[idx];
static const G4double dpMaxTriplet
bool allNucleons(const ClusterCandidate &clus) const
void setVerboseLevel(G4int verbose)
size_t clusterHash(const ClusterCandidate &clus) const
std::vector< size_t > ClusterCandidate
std::set< size_t > triedClusters
G4double maxDeltaP(const ClusterCandidate &aCluster) const
bool makeLightIon(const ClusterCandidate &aCluster)
std::set< size_t > usedNucleons
void reportArgs(const G4String &name, const ClusterCandidate &clus) const
bool goodCluster(const ClusterCandidate &clus) const
std::vector< ClusterCandidate > allClusters
const std::vector< G4InuclElementaryParticle > * thisHadrons
G4CollisionOutput * thisFinalState
const G4InuclElementaryParticle & getHadron(size_t idx) const
bool nucleonUsed(size_t idx) const
G4int clusterType(const ClusterCandidate &aCluster) const
G4InuclNuclei thisLightIon
void reportResult(const G4String &name, const G4InuclNuclei &nucl) const
bool clusterTried(const ClusterCandidate &clus) const
static const G4double dpMaxAlpha
G4CascadeCoalescence(G4int verbose=0)
void tryClusters(size_t idx1, size_t idx2)
ClusterCandidate thisCluster
void FindClusters(G4CollisionOutput &finalState)
static const G4double dpMaxDoublet
virtual ~G4CascadeCoalescence()
G4LorentzVector getClusterMomentum(const ClusterCandidate &aCluster) const
CLHEP::HepLorentzVector G4LorentzVector
void fillCluster(size_t idx1, size_t idx2)