Geant4 9.6.0
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4QCandidate Class Reference

#include <G4QCandidate.hh>

+ Inheritance diagram for G4QCandidate:

Public Member Functions

 G4QCandidate ()
 
 G4QCandidate (G4int PDGcode)
 
 G4QCandidate (const G4QCandidate &right)
 
 G4QCandidate (G4QCandidate *right)
 
 ~G4QCandidate ()
 
const G4QCandidateoperator= (const G4QCandidate &right)
 
G4bool operator== (const G4QCandidate &right) const
 
G4bool operator!= (const G4QCandidate &right) const
 
G4QParentClusterTakeParClust (G4int nPC)
 
G4int GetPClustEntries () const
 
G4bool GetPossibility () const
 
G4bool GetParPossibility () const
 
G4double GetKMin () const
 
G4double GetEBMass () const
 
G4double GetNBMass () const
 
G4double GetDenseProbability () const
 
G4double GetPreProbability () const
 
G4double GetRelProbability () const
 
G4double GetIntegProbability () const
 
G4double GetSecondRelProb () const
 
G4double GetSecondIntProb () const
 
void ClearParClustVector ()
 
void FillPClustVec (G4QParentCluster *pCl)
 
void SetPossibility (G4bool choice)
 
void SetParPossibility (G4bool choice)
 
void SetKMin (G4double kmin)
 
void SetDenseProbability (G4double prep)
 
void SetPreProbability (G4double prep)
 
void SetRelProbability (G4double relP)
 
void SetIntegProbability (G4double intP)
 
void SetSecondRelProb (G4double relP)
 
void SetSecondIntProb (G4double intP)
 
void SetEBMass (G4double newMass)
 
void SetNBMass (G4double newMass)
 
- Public Member Functions inherited from G4QHadron
 G4QHadron ()
 
 G4QHadron (G4LorentzVector p)
 
 G4QHadron (G4int PDGcode, G4LorentzVector p=G4LorentzVector(0., 0., 0., 0.))
 
 G4QHadron (G4QPDGCode QPDG, G4LorentzVector p=G4LorentzVector(0., 0., 0., 0.))
 
 G4QHadron (G4QContent QC, G4LorentzVector p=G4LorentzVector(0., 0., 0., 0.))
 
 G4QHadron (G4int PDG, G4double m, G4QContent QC)
 
 G4QHadron (G4QPDGCode QPDG, G4double m, G4QContent QC)
 
 G4QHadron (G4int PDG, G4LorentzVector p, G4QContent QC)
 
 G4QHadron (G4QPDGCode QPDG, G4LorentzVector p, G4QContent QC)
 
 G4QHadron (G4QParticle *pPart, G4double maxM)
 
 G4QHadron (const G4QHadron &right)
 
 G4QHadron (const G4QHadron *right)
 
 G4QHadron (const G4QHadron *right, G4int ColC, G4ThreeVector Pos, G4LorentzVector Mom)
 
virtual ~G4QHadron ()
 
const G4QHadronoperator= (const G4QHadron &right)
 
G4bool operator== (const G4QHadron &right) const
 
G4bool operator!= (const G4QHadron &right) const
 
G4int GetPDGCode () const
 
G4int GetQCode () const
 
G4QPDGCode GetQPDG () const
 
G4double GetSpin () const
 
G4LorentzVector Get4Momentum () const
 
G4ThreeVector Get3Momentum () const
 
G4double GetEnergy () const
 
G4QContent GetQC () const
 
G4double GetMass () const
 
G4double GetMass2 () const
 
G4double GetWidth () const
 
G4int GetNFragments () const
 
G4int GetCharge () const
 
G4int GetStrangeness () const
 
G4int GetBaryonNumber () const
 
const G4ThreeVectorGetPosition () const
 
G4double GetBindingEnergy ()
 
G4double GetFormationTime ()
 
std::list< G4QParton * > GetColor ()
 
std::list< G4QParton * > GetAntiColor ()
 
void SetQPDG (const G4QPDGCode &QPDG)
 
void SetPDGCode (const G4QPDGCode &PDG)
 
void Set4Momentum (const G4LorentzVector &aMom)
 
void SetQC (const G4QContent &newQC)
 
void SetNFragments (const G4int &nf)
 
void NegPDGCode ()
 
void MakeAntiHadron ()
 
void SetPosition (const G4ThreeVector &aPosition)
 
void IncrementCollisionCount (G4int aCount)
 
void SplitUp ()
 
G4QPartonPairSplitInTwoPartons ()
 
G4QPartonGetNextParton ()
 
G4QPartonGetNextAntiParton ()
 
void SetBindingEnergy (G4double aBindE)
 
void Boost (const G4LorentzVector &theBoost)
 
void Boost (const G4ThreeVector &B)
 
void LorentzRotate (const G4LorentzRotation &rotation)
 
void SetFormationTime (G4double fT)
 
G4double RandomizeMass (G4QParticle *pPart, G4double maxM)
 
G4bool TestRealNeutral ()
 
G4bool DecayIn2 (G4LorentzVector &f4Mom, G4LorentzVector &s4Mom)
 
G4bool CorMDecayIn2 (G4double corM, G4LorentzVector &fr4Mom)
 
G4bool CorEDecayIn2 (G4double corE, G4LorentzVector &fr4Mom)
 
G4bool RelDecayIn2 (G4LorentzVector &f4Mom, G4LorentzVector &s4Mom, G4LorentzVector &dir, G4double maxCost=1., G4double minCost=-1.)
 
G4bool CopDecayIn2 (G4LorentzVector &f4Mom, G4LorentzVector &s4Mom, G4LorentzVector &dir, G4double cop)
 
G4bool DecayIn3 (G4LorentzVector &f4Mom, G4LorentzVector &s4Mom, G4LorentzVector &t4Mom)
 
G4bool RelDecayIn3 (G4LorentzVector &fh4M, G4LorentzVector &sh4M, G4LorentzVector &th4Mom, G4LorentzVector &dir, G4double maxCost=1., G4double minCost=-1.)
 
G4bool CopDecayIn3 (G4LorentzVector &fh4M, G4LorentzVector &sh4M, G4LorentzVector &th4Mom, G4LorentzVector &dir, G4double cosp)
 
void Init3D ()
 

Additional Inherited Members

- Protected Attributes inherited from G4QHadron
G4LorentzVector theMomentum
 

Detailed Description

Definition at line 45 of file G4QCandidate.hh.

Constructor & Destructor Documentation

◆ G4QCandidate() [1/4]

G4QCandidate::G4QCandidate ( )

Definition at line 43 of file G4QCandidate.cc.

43 :
44 G4QHadron(),possible(false),parPossible(false),kMin(0),denseProbability(0.),
45 preProbability(0.),relativeProbability(0.),integralProbability(0.),
46 secondRelProbability(0.),secondIntProbability(0.),EBMass(0.),NBMass(0.)
47
48{
49}

◆ G4QCandidate() [2/4]

G4QCandidate::G4QCandidate ( G4int  PDGcode)

Definition at line 51 of file G4QCandidate.cc.

51 :
52 G4QHadron(PDGcode),possible(false),parPossible(false),kMin(0),denseProbability(0.),
53 preProbability(0.),relativeProbability(0.),integralProbability(0.),
54 secondRelProbability(0.),secondIntProbability(0.),EBMass(0.),NBMass(0.)
55{
56#ifdef debug
57 G4cout<<"G4QCandidate::Constructor: PDG="<<PDGcode<<G4endl;
58#endif
59 G4LorentzVector cur4Mom(0.,0.,0.,0.);
60 G4QPDGCode QPDG(PDGcode);
61#ifdef debug
62 G4cout<<"G4QCandidate::Constructor: QPDG="<<QPDG<<G4endl;
63#endif
64 SetQPDG(QPDG);
65 G4double vacMass=QPDG.GetMass();
66#ifdef debug
67 G4cout<<"G4QCandidate::Constructor: M="<<vacMass<<G4endl;
68#endif
69 cur4Mom.setE(vacMass);
70 Set4Momentum(cur4Mom);
71 SetQC(QPDG.GetQuarkContent());
72}
double G4double
Definition: G4Types.hh:64
#define G4endl
Definition: G4ios.hh:52
G4DLLIMPORT std::ostream G4cout
void SetQC(const G4QContent &newQC)
Definition: G4QHadron.hh:186
void SetQPDG(const G4QPDGCode &QPDG)
Definition: G4QHadron.cc:275
void Set4Momentum(const G4LorentzVector &aMom)
Definition: G4QHadron.hh:187

◆ G4QCandidate() [3/4]

G4QCandidate::G4QCandidate ( const G4QCandidate right)

Definition at line 74 of file G4QCandidate.cc.

74 :
75 G4QHadron(&right)
76{
77 Set4Momentum (right.Get4Momentum());
78 SetQPDG (right.GetQPDG());
79 SetQC (right.GetQC());
81 possible = right.possible;
82 parPossible = right.parPossible;
83 kMin = right.kMin;
84 denseProbability = right.denseProbability;
85 preProbability = right.preProbability;
86 relativeProbability = right.relativeProbability;
87 integralProbability = right.integralProbability;
88 secondRelProbability= right.secondRelProbability;
89 secondIntProbability= right.secondIntProbability;
90 EBMass = right.EBMass;
91 NBMass = right.NBMass;
92 // thePClusters
93 G4int nParCl = right.thePClusters.size();
94 if(nParCl) for(G4int ip=0; ip<nParCl; ip++)
95 {
96 G4QParentCluster* curPC = new G4QParentCluster(right.thePClusters[ip]);
97 thePClusters.push_back(curPC);
98 }
99}
int G4int
Definition: G4Types.hh:66
G4LorentzVector Get4Momentum() const
Definition: G4QHadron.hh:79
void SetNFragments(const G4int &nf)
Definition: G4QHadron.hh:188
G4int GetNFragments() const
Definition: G4QHadron.hh:174
G4QContent GetQC() const
Definition: G4QHadron.hh:173
G4QPDGCode GetQPDG() const
Definition: G4QHadron.hh:172

◆ G4QCandidate() [4/4]

G4QCandidate::G4QCandidate ( G4QCandidate right)

Definition at line 101 of file G4QCandidate.cc.

102{
103 Set4Momentum (right->Get4Momentum());
104 SetQPDG (right->GetQPDG());
105 SetQC (right->GetQC());
106 SetNFragments (right->GetNFragments());
107 possible = right->possible;
108 parPossible = right->parPossible;
109 kMin = right->kMin;
110 denseProbability = right->denseProbability;
111 preProbability = right->preProbability;
112 relativeProbability = right->relativeProbability;
113 integralProbability = right->integralProbability;
114 secondRelProbability= right->secondRelProbability;
115 secondIntProbability= right->secondIntProbability;
116 EBMass = right->EBMass;
117 NBMass = right->NBMass;
118 // thePClusters
119 G4int nParCl = right->thePClusters.size();
120 if(nParCl) for(G4int ip=0; ip<nParCl; ip++)
121 {
122 G4QParentCluster* curPC = new G4QParentCluster(right->thePClusters[ip]);
123 thePClusters.push_back(curPC);
124 }
125}

◆ ~G4QCandidate()

G4QCandidate::~G4QCandidate ( )

Definition at line 127 of file G4QCandidate.cc.

128{
129#ifdef debug
130 G4cout<<"~G4QCandidate: before thePClusters nC="<<thePClusters.size()<<G4endl;
131#endif
132 std::for_each(thePClusters.begin(), thePClusters.end(), DeleteQParentCluster());
133#ifdef debug
134 G4cout<<"~G4QCandidate: === DONE ==="<<G4endl;
135#endif
136}

Member Function Documentation

◆ ClearParClustVector()

void G4QCandidate::ClearParClustVector ( )
inline

Definition at line 119 of file G4QCandidate.hh.

120{
121 std::for_each(thePClusters.begin(), thePClusters.end(), DeleteQParentCluster());
122 thePClusters.clear();
123}

◆ FillPClustVec()

void G4QCandidate::FillPClustVec ( G4QParentCluster pCl)
inline

Definition at line 125 of file G4QCandidate.hh.

126{
127 thePClusters.push_back(pCl); // Fill new instance of PCl
128}

◆ GetDenseProbability()

G4double G4QCandidate::GetDenseProbability ( ) const
inline

Definition at line 112 of file G4QCandidate.hh.

112{return denseProbability;}

◆ GetEBMass()

G4double G4QCandidate::GetEBMass ( ) const
inline

Definition at line 110 of file G4QCandidate.hh.

110{return EBMass;}

◆ GetIntegProbability()

G4double G4QCandidate::GetIntegProbability ( ) const
inline

Definition at line 115 of file G4QCandidate.hh.

115{return integralProbability;}

◆ GetKMin()

G4double G4QCandidate::GetKMin ( ) const
inline

Definition at line 109 of file G4QCandidate.hh.

109{return kMin;}

◆ GetNBMass()

G4double G4QCandidate::GetNBMass ( ) const
inline

Definition at line 111 of file G4QCandidate.hh.

111{return NBMass;}

◆ GetParPossibility()

G4bool G4QCandidate::GetParPossibility ( ) const
inline

Definition at line 108 of file G4QCandidate.hh.

108{return parPossible;}

◆ GetPClustEntries()

G4int G4QCandidate::GetPClustEntries ( ) const
inline

Definition at line 106 of file G4QCandidate.hh.

106{return thePClusters.size();}

◆ GetPossibility()

G4bool G4QCandidate::GetPossibility ( ) const
inline

Definition at line 107 of file G4QCandidate.hh.

107{return possible;}

◆ GetPreProbability()

G4double G4QCandidate::GetPreProbability ( ) const
inline

Definition at line 113 of file G4QCandidate.hh.

113{return preProbability;}

◆ GetRelProbability()

G4double G4QCandidate::GetRelProbability ( ) const
inline

Definition at line 114 of file G4QCandidate.hh.

114{return relativeProbability;}

◆ GetSecondIntProb()

G4double G4QCandidate::GetSecondIntProb ( ) const
inline

Definition at line 117 of file G4QCandidate.hh.

117{return secondIntProbability;}

◆ GetSecondRelProb()

G4double G4QCandidate::GetSecondRelProb ( ) const
inline

Definition at line 116 of file G4QCandidate.hh.

116{return secondRelProbability;}

◆ operator!=()

G4bool G4QCandidate::operator!= ( const G4QCandidate right) const
inline

Definition at line 103 of file G4QCandidate.hh.

103{return this!=&rhs;}

◆ operator=()

const G4QCandidate & G4QCandidate::operator= ( const G4QCandidate right)

Definition at line 139 of file G4QCandidate.cc.

140{
141 if(this != &right) // Beware of self assignment
142 {
143 Set4Momentum (right.Get4Momentum());
144 SetQPDG (right.GetQPDG());
145 SetQC (right.GetQC());
147 possible = right.possible;
148 parPossible = right.parPossible;
149 kMin = right.kMin;
150 denseProbability = right.denseProbability;
151 preProbability = right.preProbability;
152 relativeProbability = right.relativeProbability;
153 integralProbability = right.integralProbability;
154 secondRelProbability= right.secondRelProbability;
155 secondIntProbability= right.secondIntProbability;
156 EBMass = right.EBMass;
157 NBMass = right.NBMass;
158 // thePClusters (Vector)
159 G4int nParCl = right.thePClusters.size();
160 if(nParCl) for(G4int ip=0; ip<nParCl; ip++)
161 {
162 G4QParentCluster* curPC = new G4QParentCluster(right.thePClusters[ip]);
163 thePClusters.push_back(curPC);
164 }
165 }
166 return *this;
167}

◆ operator==()

G4bool G4QCandidate::operator== ( const G4QCandidate right) const
inline

Definition at line 102 of file G4QCandidate.hh.

102{return this==&rhs;}

◆ SetDenseProbability()

void G4QCandidate::SetDenseProbability ( G4double  prep)
inline

Definition at line 132 of file G4QCandidate.hh.

132{denseProbability=prep;}

Referenced by G4QNucleus::PrepareCandidates().

◆ SetEBMass()

void G4QCandidate::SetEBMass ( G4double  newMass)
inline

Definition at line 138 of file G4QCandidate.hh.

138{EBMass=newM;}

◆ SetIntegProbability()

void G4QCandidate::SetIntegProbability ( G4double  intP)
inline

Definition at line 135 of file G4QCandidate.hh.

135{integralProbability=intP;}

◆ SetKMin()

void G4QCandidate::SetKMin ( G4double  kmin)
inline

Definition at line 131 of file G4QCandidate.hh.

131{kMin=kmin;}

◆ SetNBMass()

void G4QCandidate::SetNBMass ( G4double  newMass)
inline

Definition at line 139 of file G4QCandidate.hh.

139{NBMass=newM;}

◆ SetParPossibility()

void G4QCandidate::SetParPossibility ( G4bool  choice)
inline

Definition at line 130 of file G4QCandidate.hh.

130{parPossible=choice;}

◆ SetPossibility()

void G4QCandidate::SetPossibility ( G4bool  choice)
inline

Definition at line 129 of file G4QCandidate.hh.

129{possible=choice;}

Referenced by G4QNucleus::PrepareCandidates().

◆ SetPreProbability()

void G4QCandidate::SetPreProbability ( G4double  prep)
inline

Definition at line 133 of file G4QCandidate.hh.

133{preProbability=prep;}

Referenced by G4QNucleus::PrepareCandidates().

◆ SetRelProbability()

void G4QCandidate::SetRelProbability ( G4double  relP)
inline

Definition at line 134 of file G4QCandidate.hh.

134{relativeProbability=relP;}

◆ SetSecondIntProb()

void G4QCandidate::SetSecondIntProb ( G4double  intP)
inline

Definition at line 137 of file G4QCandidate.hh.

137{secondIntProbability=intP;}

◆ SetSecondRelProb()

void G4QCandidate::SetSecondRelProb ( G4double  relP)
inline

Definition at line 136 of file G4QCandidate.hh.

136{secondRelProbability=relP;}

◆ TakeParClust()

G4QParentCluster * G4QCandidate::TakeParClust ( G4int  nPC)
inline

Definition at line 105 of file G4QCandidate.hh.

105{return thePClusters[nPC];}

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