#include <G4FragmentingString.hh>
Definition at line 49 of file G4FragmentingString.hh.
G4FragmentingString::G4FragmentingString | ( | const G4FragmentingString & | right | ) |
Definition at line 46 of file G4FragmentingString.cc.
References decaying, LeftParton, Pminus, Pplus, Ptleft, Ptright, RightParton, theDecayParton, and theStableParton.
00047 { 00048 LeftParton=old.LeftParton; 00049 RightParton=old.RightParton; 00050 Ptleft=old.Ptleft; 00051 Ptright=old.Ptright; 00052 Pplus=old.Pplus; 00053 Pminus=old.Pminus; 00054 theStableParton=old.theStableParton; 00055 theDecayParton=old.theDecayParton; 00056 decaying=old.decaying; 00057 }
G4FragmentingString::G4FragmentingString | ( | const G4ExcitedString & | excited | ) |
Definition at line 78 of file G4FragmentingString.cc.
References G4ExcitedString::Get4Momentum(), G4Parton::Get4Momentum(), G4Parton::GetDefinition(), G4ExcitedString::GetLeftParton(), and G4ExcitedString::GetRightParton().
00079 { 00080 LeftParton=excited.GetLeftParton()->GetDefinition(); 00081 RightParton=excited.GetRightParton()->GetDefinition(); 00082 Ptleft=excited.GetLeftParton()->Get4Momentum().vect(); 00083 Ptleft.setZ(0.); 00084 Ptright=excited.GetRightParton()->Get4Momentum().vect(); 00085 Ptright.setZ(0.); 00086 G4LorentzVector P=excited.Get4Momentum(); 00087 Pplus =P.e() + P.pz(); 00088 Pminus=P.e() - P.pz(); 00089 theStableParton=0; 00090 theDecayParton=0; 00091 decaying=None; 00092 }
G4FragmentingString::G4FragmentingString | ( | const G4FragmentingString & | old, | |
G4ParticleDefinition * | newdecay, | |||
const G4LorentzVector * | momentum | |||
) |
Definition at line 96 of file G4FragmentingString.cc.
References decaying, GetLeftParton(), GetRightParton(), LeftParton, Pminus, Pplus, Ptleft, Ptright, and RightParton.
00099 { 00100 decaying=None; 00101 if ( old.decaying == Left ) 00102 { 00103 RightParton= old.RightParton; 00104 Ptright = old.Ptright; 00105 LeftParton = newdecay; 00106 Ptleft = old.Ptleft - momentum->vect(); 00107 Ptleft.setZ(0.); 00108 theDecayParton=GetLeftParton(); 00109 theStableParton=GetRightParton(); 00110 } else if ( old.decaying == Right ) 00111 { 00112 RightParton = newdecay; 00113 Ptright = old.Ptright - momentum->vect(); 00114 Ptright.setZ(0.); 00115 LeftParton = old.LeftParton; 00116 Ptleft = old.Ptleft; 00117 theDecayParton=GetRightParton(); 00118 theStableParton=GetLeftParton(); 00119 } else 00120 { 00121 throw G4HadronicException(__FILE__, __LINE__, "G4FragmentingString::G4FragmentingString: no decay Direction defined"); 00122 } 00123 Pplus = old.Pplus - (momentum->e() + momentum->pz()); 00124 Pminus = old.Pminus - (momentum->e() - momentum->pz()); 00125 00126 //G4double Eold=0.5 * (old.Pplus + old.Pminus); 00127 //G4double Enew=0.5 * (Pplus + Pminus); 00128 }
G4FragmentingString::G4FragmentingString | ( | const G4FragmentingString & | old, | |
G4ParticleDefinition * | newdecay | |||
) |
Definition at line 133 of file G4FragmentingString.cc.
References decaying, LeftParton, and RightParton.
00135 { 00136 decaying=None; 00137 00138 Ptleft.setX(0.); Ptleft.setY(0.); Ptleft.setZ(0.); // Uzhi 25.02.2011 00139 Ptright.setX(0.); Ptright.setY(0.); Ptright.setZ(0.); // Uzhi 25.02.2011 00140 Pplus=0.; Pminus=0.; // Uzhi 25.02.2011 00141 theStableParton=0; theDecayParton=0; // Uzhi 25.02.2011 00142 00143 if ( old.decaying == Left ) 00144 { 00145 RightParton= old.RightParton; 00146 LeftParton = newdecay; 00147 } else if ( old.decaying == Right ) 00148 { 00149 RightParton = newdecay; 00150 LeftParton = old.LeftParton; 00151 } else 00152 { 00153 throw G4HadronicException(__FILE__, __LINE__, "G4FragmentingString::G4FragmentingString: no decay Direction defined"); 00154 } 00155 }
G4FragmentingString::~G4FragmentingString | ( | ) |
G4bool G4FragmentingString::DecayIsQuark | ( | ) |
Definition at line 202 of file G4FragmentingString.cc.
References G4ParticleDefinition::GetParticleSubType().
Referenced by G4VLongitudinalStringDecay::Splitup().
00203 { 00204 return theDecayParton->GetParticleSubType()== "quark"; 00205 }
G4ThreeVector G4FragmentingString::DecayPt | ( | ) |
Definition at line 222 of file G4FragmentingString.cc.
00223 { 00224 if (decaying == Left ) return Ptleft; 00225 else if (decaying == Right ) return Ptright; 00226 else throw G4HadronicException(__FILE__, __LINE__, "G4FragmentingString::DecayPt: decay side UNdefined!"); 00227 return G4ThreeVector(); 00228 }
G4bool G4FragmentingString::FourQuarkString | ( | void | ) | const |
Definition at line 194 of file G4FragmentingString.cc.
References G4ParticleDefinition::GetParticleSubType().
Referenced by G4VLongitudinalStringDecay::FragmentationMass().
00195 { 00196 return LeftParton->GetParticleSubType()== "di_quark" 00197 && RightParton->GetParticleSubType()== "di_quark"; 00198 }
G4LorentzVector G4FragmentingString::Get4Momentum | ( | ) | const |
Definition at line 252 of file G4FragmentingString.cc.
00253 { 00254 G4LorentzVector momentum(Ptleft+Ptright,0); 00255 momentum.setPz(0.5*(Pplus-Pminus)); 00256 momentum.setE(0.5*(Pplus+Pminus)); 00257 return momentum; 00258 }
G4int G4FragmentingString::GetDecayDirection | ( | ) | const |
Definition at line 184 of file G4FragmentingString.cc.
Referenced by G4QGSMFragmentation::FragmentString().
00185 { 00186 if (decaying == Left ) return +1; 00187 else if (decaying == Right) return -1; 00188 else throw G4HadronicException(__FILE__, __LINE__, "G4FragmentingString::GetDecayDirection: decay side UNdefined!"); 00189 return 0; 00190 }
G4ParticleDefinition * G4FragmentingString::GetDecayParton | ( | ) | const [inline] |
Definition at line 131 of file G4FragmentingString.hh.
Referenced by G4VLongitudinalStringDecay::Splitup().
G4ParticleDefinition * G4FragmentingString::GetLeftParton | ( | void | ) | const [inline] |
Definition at line 137 of file G4FragmentingString.hh.
Referenced by G4VLongitudinalStringDecay::FragmentationMass(), G4FragmentingString(), SetLeftPartonStable(), and SetRightPartonStable().
G4ParticleDefinition * G4FragmentingString::GetRightParton | ( | void | ) | const [inline] |
Definition at line 143 of file G4FragmentingString.hh.
Referenced by G4VLongitudinalStringDecay::FragmentationMass(), G4FragmentingString(), SetLeftPartonStable(), and SetRightPartonStable().
G4ParticleDefinition * G4FragmentingString::GetStableParton | ( | ) | const [inline] |
G4double G4FragmentingString::LightConeDecay | ( | ) |
Definition at line 242 of file G4FragmentingString.cc.
00243 { 00244 if (decaying == Left ) return Pplus; 00245 else if (decaying == Right ) return Pminus; 00246 else throw G4HadronicException(__FILE__, __LINE__, "G4FragmentingString::DecayPt: decay side UNdefined!"); 00247 return 0; 00248 }
G4double G4FragmentingString::LightConeMinus | ( | ) |
G4double G4FragmentingString::LightConePlus | ( | ) |
G4double G4FragmentingString::Mass | ( | ) | const |
G4double G4FragmentingString::Mass2 | ( | ) | const |
Definition at line 260 of file G4FragmentingString.cc.
Referenced by G4VLongitudinalStringDecay::LightFragmentationTest().
G4double G4FragmentingString::MassT2 | ( | ) | const |
int G4FragmentingString::operator!= | ( | const G4FragmentingString & | right | ) | const [inline] |
G4FragmentingString & G4FragmentingString::operator= | ( | const G4FragmentingString & | ) |
Definition at line 59 of file G4FragmentingString.cc.
References decaying, LeftParton, Pminus, Pplus, Ptleft, Ptright, RightParton, theDecayParton, and theStableParton.
00060 { 00061 if (this != &old) 00062 { 00063 LeftParton=old.LeftParton; 00064 RightParton=old.RightParton; 00065 Ptleft=old.Ptleft; 00066 Ptright=old.Ptright; 00067 Pplus=old.Pplus; 00068 Pminus=old.Pminus; 00069 theStableParton=old.theStableParton; 00070 theDecayParton=old.theDecayParton; 00071 decaying=old.decaying; 00072 } 00073 return *this; 00074 }
int G4FragmentingString::operator== | ( | const G4FragmentingString & | right | ) | const [inline] |
void G4FragmentingString::SetLeftPartonStable | ( | ) |
Definition at line 166 of file G4FragmentingString.cc.
References GetLeftParton(), and GetRightParton().
Referenced by G4VLongitudinalStringDecay::Splitup().
00167 { 00168 theStableParton=GetLeftParton(); 00169 theDecayParton=GetRightParton(); 00170 decaying=Right; 00171 }
void G4FragmentingString::SetRightPartonStable | ( | ) |
Definition at line 175 of file G4FragmentingString.cc.
References GetLeftParton(), and GetRightParton().
Referenced by G4VLongitudinalStringDecay::Splitup().
00176 { 00177 theStableParton=GetRightParton(); 00178 theDecayParton=GetLeftParton(); 00179 decaying=Left; 00180 }
G4bool G4FragmentingString::StableIsQuark | ( | ) |
Definition at line 207 of file G4FragmentingString.cc.
References G4ParticleDefinition::GetParticleSubType().
00208 { 00209 return theStableParton->GetParticleSubType()== "quark"; 00210 }
G4ThreeVector G4FragmentingString::StablePt | ( | ) |
Definition at line 214 of file G4FragmentingString.cc.
00215 { 00216 if (decaying == Left ) return Ptright; 00217 else if (decaying == Right ) return Ptleft; 00218 else throw G4HadronicException(__FILE__, __LINE__, "G4FragmentingString::DecayPt: decay side UNdefined!"); 00219 return G4ThreeVector(); 00220 }