#include <G4ResonanceNames.hh>
Public Member Functions | |
G4ResonanceNames () | |
~G4ResonanceNames () | |
G4bool | operator== (const G4ResonanceNames &right) const |
G4bool | operator!= (const G4ResonanceNames &right) const |
const std::vector< G4String > | NstarNames () const |
const std::vector< G4String > | DeltastarNames () const |
const std::vector< G4String > | DeltaNames () const |
const std::vector< G4String > | LambdaNames () const |
const std::vector< G4String > | SigmaNames () const |
const std::vector< G4String > | XiNames () const |
const G4String | ShortName (const G4String &name) |
G4double | MinMass (const G4String &name) |
Definition at line 50 of file G4ResonanceNames.hh.
G4ResonanceNames::G4ResonanceNames | ( | ) |
Definition at line 37 of file G4ResonanceNames.cc.
References G4ShortLivedConstructor::ConstructParticle(), G4ParticleTable::FindParticle(), and G4ParticleTable::GetParticleTable().
00038 { 00039 // Excited N resonances 00040 00041 nameNstar.push_back("N(1440)+"); 00042 nameNstar.push_back("N(1440)0"); 00043 nameNstar.push_back("N(1520)+"); 00044 nameNstar.push_back("N(1520)0"); 00045 nameNstar.push_back("N(1535)+"); 00046 nameNstar.push_back("N(1535)0"); 00047 nameNstar.push_back("N(1650)+"); 00048 nameNstar.push_back("N(1650)0"); 00049 nameNstar.push_back("N(1675)+"); 00050 nameNstar.push_back("N(1675)0"); 00051 nameNstar.push_back("N(1680)+"); 00052 nameNstar.push_back("N(1680)0"); 00053 nameNstar.push_back("N(1700)+"); 00054 nameNstar.push_back("N(1700)0"); 00055 nameNstar.push_back("N(1710)+"); 00056 nameNstar.push_back("N(1710)0"); 00057 nameNstar.push_back("N(1720)+"); 00058 nameNstar.push_back("N(1720)0"); 00059 nameNstar.push_back("N(1900)+"); 00060 nameNstar.push_back("N(1900)0"); 00061 nameNstar.push_back("N(1990)+"); 00062 nameNstar.push_back("N(1990)0"); 00063 nameNstar.push_back("N(2090)+"); 00064 nameNstar.push_back("N(2090)0"); 00065 nameNstar.push_back("N(2190)+"); 00066 nameNstar.push_back("N(2190)0"); 00067 nameNstar.push_back("N(2220)+"); 00068 nameNstar.push_back("N(2220)0"); 00069 nameNstar.push_back("N(2250)+"); 00070 nameNstar.push_back("N(2250)0"); 00071 00072 00073 // Delta 00074 00075 G4String d1232Minus("delta-"); 00076 G4String d1232Zero("delta0"); 00077 G4String d1232Plus("delta+"); 00078 G4String d1232PlusPlus("delta++"); 00079 nameDelta.push_back(d1232Minus); 00080 nameDelta.push_back(d1232Zero); 00081 nameDelta.push_back(d1232Plus); 00082 nameDelta.push_back(d1232PlusPlus); 00083 00084 00085 // Excited Delta resonances 00086 00087 nameDeltastar.push_back("delta(1600)+"); 00088 nameDeltastar.push_back("delta(1600)++"); 00089 nameDeltastar.push_back("delta(1600)-"); 00090 nameDeltastar.push_back("delta(1600)0"); 00091 nameDeltastar.push_back("delta(1620)+"); 00092 nameDeltastar.push_back("delta(1620)++"); 00093 nameDeltastar.push_back("delta(1620)-"); 00094 nameDeltastar.push_back("delta(1620)0"); 00095 nameDeltastar.push_back("delta(1700)+"); 00096 nameDeltastar.push_back("delta(1700)++"); 00097 nameDeltastar.push_back("delta(1700)-"); 00098 nameDeltastar.push_back("delta(1700)0"); 00099 nameDeltastar.push_back("delta(1900)+"); 00100 nameDeltastar.push_back("delta(1900)++"); 00101 nameDeltastar.push_back("delta(1900)-"); 00102 nameDeltastar.push_back("delta(1900)0"); 00103 nameDeltastar.push_back("delta(1905)+"); 00104 nameDeltastar.push_back("delta(1905)++"); 00105 nameDeltastar.push_back("delta(1905)-"); 00106 nameDeltastar.push_back("delta(1905)0"); 00107 nameDeltastar.push_back("delta(1910)+"); 00108 nameDeltastar.push_back("delta(1910)++"); 00109 nameDeltastar.push_back("delta(1910)-"); 00110 nameDeltastar.push_back("delta(1910)0"); 00111 nameDeltastar.push_back("delta(1920)+"); 00112 nameDeltastar.push_back("delta(1920)++"); 00113 nameDeltastar.push_back("delta(1920)-"); 00114 nameDeltastar.push_back("delta(1920)0"); 00115 nameDeltastar.push_back("delta(1930)+"); 00116 nameDeltastar.push_back("delta(1930)++"); 00117 nameDeltastar.push_back("delta(1930)-"); 00118 nameDeltastar.push_back("delta(1930)0"); 00119 nameDeltastar.push_back("delta(1950)+"); 00120 nameDeltastar.push_back("delta(1950)++"); 00121 nameDeltastar.push_back("delta(1950)-"); 00122 nameDeltastar.push_back("delta(1950)0"); 00123 00124 00125 // Lambda 00126 00127 nameLambda.push_back("lambda"); 00128 nameLambda.push_back("lambda(1405)"); 00129 nameLambda.push_back("lambda(1520)"); 00130 nameLambda.push_back("lambda(1600)"); 00131 nameLambda.push_back("lambda(1670)"); 00132 nameLambda.push_back("lambda(1690)"); 00133 nameLambda.push_back("lambda(1800)"); 00134 nameLambda.push_back("lambda(1810)"); 00135 nameLambda.push_back("lambda(1820)"); 00136 nameLambda.push_back("lambda(1830)"); 00137 nameLambda.push_back("lambda(1890)"); 00138 nameLambda.push_back("lambda(2100)"); 00139 nameLambda.push_back("lambda(2110)"); 00140 00141 00142 // Sigma 00143 00144 nameSigma.push_back("sigma(1385)+"); 00145 nameSigma.push_back("sigma(1385)-"); 00146 nameSigma.push_back("sigma(1385)0"); 00147 nameSigma.push_back("sigma(1660)+"); 00148 nameSigma.push_back("sigma(1660)-"); 00149 nameSigma.push_back("sigma(1660)0"); 00150 nameSigma.push_back("sigma(1670)+"); 00151 nameSigma.push_back("sigma(1670)-"); 00152 nameSigma.push_back("sigma(1670)0"); 00153 nameSigma.push_back("sigma(1750)+"); 00154 nameSigma.push_back("sigma(1750)-"); 00155 nameSigma.push_back("sigma(1750)0"); 00156 nameSigma.push_back("sigma(1775)+"); 00157 nameSigma.push_back("sigma(1775)-"); 00158 nameSigma.push_back("sigma(1775)0"); 00159 nameSigma.push_back("sigma(1915)+"); 00160 nameSigma.push_back("sigma(1915)-"); 00161 nameSigma.push_back("sigma(1915)0"); 00162 nameSigma.push_back("sigma(1940)+"); 00163 nameSigma.push_back("sigma(1940)-"); 00164 nameSigma.push_back("sigma(1940)0"); 00165 nameSigma.push_back("sigma(2030)+"); 00166 nameSigma.push_back("sigma(2030)-"); 00167 nameSigma.push_back("sigma(2030)0"); 00168 00169 00170 // Xi 00171 00172 nameXi.push_back("xi(1530)-"); 00173 nameXi.push_back("xi(1530)0"); 00174 nameXi.push_back("xi(1690)-"); 00175 nameXi.push_back("xi(1690)0"); 00176 nameXi.push_back("xi(1820)-"); 00177 nameXi.push_back("xi(1820)0"); 00178 nameXi.push_back("xi(1950)-"); 00179 nameXi.push_back("xi(1950)0"); 00180 nameXi.push_back("xi(2030)-"); 00181 nameXi.push_back("xi(2030)0"); 00182 00183 00184 G4ShortLivedConstructor ShortLived; 00185 ShortLived.ConstructParticle(); 00186 G4ParticleTable* particleTable = G4ParticleTable::GetParticleTable(); 00187 00188 size_t i; 00189 00190 // Fill a map with the lowest resonance for each category 00191 for (i=0; i<nameNstar.size(); i++) 00192 { 00193 lowResMap[nameNstar[i]] = particleTable->FindParticle("N(1440)0"); 00194 } 00195 00196 for (i=0; i<nameDeltastar.size(); i++) 00197 { 00198 lowResMap[nameDeltastar[i]] = particleTable->FindParticle("delta0"); 00199 } 00200 00201 for (i=0; i<nameDelta.size(); i++) 00202 { 00203 lowResMap[nameDelta[i]] = particleTable->FindParticle("delta0"); 00204 } 00205 00206 for (i=0; i<nameLambda.size(); i++) 00207 { 00208 lowResMap[nameLambda[i]] = particleTable->FindParticle("lambda"); 00209 } 00210 00211 for (i=0; i<nameSigma.size(); i++) 00212 { 00213 lowResMap[nameSigma[i]] = particleTable->FindParticle("sigma0"); 00214 } 00215 00216 shortMap["N(1440)0"] = "N(1440)"; 00217 shortMap["N(1440)+"] = "N(1440)"; 00218 00219 shortMap["N(1520)0"] = "N(1520)";; 00220 shortMap["N(1520)+"] = "N(1520)"; 00221 00222 shortMap["N(1535)0"] = "N(1535)"; 00223 shortMap["N(1535)+"] = "N(1535)"; 00224 00225 shortMap["N(1650)0"] = "N(1650)"; 00226 shortMap["N(1650)+"] = "N(1650)"; 00227 00228 shortMap["N(1675)0"] = "N(1675)"; 00229 shortMap["N(1675)+"] = "N(1675)"; 00230 00231 shortMap["N(1680)0"] = "N(1680)"; 00232 shortMap["N(1680)+"] = "N(1680)"; 00233 00234 shortMap["N(1700)0"] = "N(1700)"; 00235 shortMap["N(1700)+"] = "N(1700)"; 00236 00237 shortMap["N(1710)0"] = "N(1710)"; 00238 shortMap["N(1710)+"] = "N(1710)"; 00239 00240 shortMap["N(1720)0"] = "N(1720)"; 00241 shortMap["N(1720)+"] = "N(1720)"; 00242 00243 shortMap["N(1900)0"] = "N(1900)"; 00244 shortMap["N(1900)+"] = "N(1900)"; 00245 00246 shortMap["N(1990)0"] = "N(1990)"; 00247 shortMap["N(1990)+"] = "N(1990)"; 00248 00249 shortMap["N(2090)0"] = "N(2090)"; 00250 shortMap["N(2090)+"] = "N(2090)"; 00251 00252 shortMap["N(2190)0"] = "N(2190)"; 00253 shortMap["N(2190)+"] = "N(2190)"; 00254 00255 shortMap["N(2220)0"] = "N(2220)"; 00256 shortMap["N(2220)+"] = "N(2220)"; 00257 00258 shortMap["N(2250)0"] = "N(2250)"; 00259 shortMap["N(2250)+"] = "N(2250)"; 00260 00261 00262 // Excited Delta 00263 00264 shortMap["delta(1600)-"] = "delta(1600)"; 00265 shortMap["delta(1600)0"] = "delta(1600)"; 00266 shortMap["delta(1600)+"] = "delta(1600)"; 00267 shortMap["delta(1600)++"] = "delta(1600)"; 00268 00269 shortMap["delta(1620)-"] = "delta(1620)"; 00270 shortMap["delta(1620)0"] = "delta(1620)"; 00271 shortMap["delta(1620)+"] = "delta(1620)"; 00272 shortMap["delta(1620)++"] = "delta(1620)"; 00273 00274 shortMap["delta(1700)-"] = "delta(1700)"; 00275 shortMap["delta(1700)0"] = "delta(1700)"; 00276 shortMap["delta(1700)+"] = "delta(1700)"; 00277 shortMap["delta(1700)++"] = "delta(1700)"; 00278 00279 shortMap["delta(1900)-"] = "delta(1900)"; 00280 shortMap["delta(1900)0"] = "delta(1900)"; 00281 shortMap["delta(1900)+"] = "delta(1900)"; 00282 shortMap["delta(1900)++"] = "delta(1900)"; 00283 00284 shortMap["delta(1905)-"] = "delta(1905)"; 00285 shortMap["delta(1905)0"] = "delta(1905)"; 00286 shortMap["delta(1905)+"] = "delta(1905)"; 00287 shortMap["delta(1905)++"] = "delta(1905)"; 00288 00289 shortMap["delta(1910)-"] = "delta(1910)"; 00290 shortMap["delta(1910)0"] = "delta(1910)"; 00291 shortMap["delta(1910)+"] = "delta(1910)"; 00292 shortMap["delta(1910)++"] = "delta(1910)"; 00293 00294 shortMap["delta(1920)-"] = "delta(1920)"; 00295 shortMap["delta(1920)0"] = "delta(1920)"; 00296 shortMap["delta(1920)+"] = "delta(1920)"; 00297 shortMap["delta(1920)++"] = "delta(1920)"; 00298 00299 shortMap["delta(1930)-"] = "delta(1930)"; 00300 shortMap["delta(1930)0"] = "delta(1930)"; 00301 shortMap["delta(1930)+"] = "delta(1930)"; 00302 shortMap["delta(1930)++"] = "delta(1930)"; 00303 00304 shortMap["delta(1950)-"] = "delta(1950)"; 00305 shortMap["delta(1950)0"] = "delta(1950)"; 00306 shortMap["delta(1950)+"] = "delta(1950)"; 00307 shortMap["delta(1950)++"] = "delta(1950)"; 00308 00309 // Delta 00310 00311 shortMap["delta-"] = "delta"; 00312 shortMap["delta0"] = "delta"; 00313 shortMap["delta+"] = "delta"; 00314 shortMap["delta++"] = "delta"; 00315 00316 }
G4ResonanceNames::~G4ResonanceNames | ( | ) |
const std::vector<G4String> G4ResonanceNames::DeltaNames | ( | ) | const [inline] |
const std::vector<G4String> G4ResonanceNames::DeltastarNames | ( | ) | const [inline] |
const std::vector<G4String> G4ResonanceNames::LambdaNames | ( | ) | const [inline] |
Definition at line 335 of file G4ResonanceNames.cc.
References G4ParticleTable::FindParticle(), G4cout, G4endl, G4ParticleTable::GetParticleTable(), G4ParticleDefinition::GetPDGMass(), and G4PionPlus::PionPlusDefinition().
00336 { 00337 // Cut, from UrQMD (reference still to be detailed) 00338 const G4double coeff = 0.001; 00339 00340 G4double lowMass = 0.; 00341 00342 G4ParticleDefinition* def = 0; 00343 00344 if (lowResMap.find(name) != lowResMap.end()) 00345 { 00346 def = lowResMap[name]; 00347 } 00348 else 00349 { 00350 G4ParticleTable* particleTable = G4ParticleTable::GetParticleTable(); 00351 def = particleTable->FindParticle(name); 00352 } 00353 if (def != 0) 00354 { 00355 G4ParticleDefinition* pion = G4PionPlus::PionPlusDefinition(); 00356 lowMass = (1. + coeff) * def->GetPDGMass() + pion->GetPDGMass(); 00357 } 00358 else 00359 { 00360 G4cout << "G4ResonanceNames::MinMass - " << name << " not found" << G4endl; 00361 throw G4HadronicException(__FILE__, __LINE__, "G4ResonanceNames::MinMass - resonance name not found"); 00362 } 00363 return lowMass; 00364 }
const std::vector<G4String> G4ResonanceNames::NstarNames | ( | ) | const [inline] |
G4bool G4ResonanceNames::operator!= | ( | const G4ResonanceNames & | right | ) | const |
Definition at line 329 of file G4ResonanceNames.cc.
00330 { 00331 return (this != (G4ResonanceNames*) &right); 00332 }
G4bool G4ResonanceNames::operator== | ( | const G4ResonanceNames & | right | ) | const |
Definition at line 323 of file G4ResonanceNames.cc.
00324 { 00325 return(this == (G4ResonanceNames*) &right); 00326 }
Definition at line 367 of file G4ResonanceNames.cc.
Referenced by G4XAnnihilationChannel::G4XAnnihilationChannel().
00368 { 00369 G4String shortName = ""; 00370 if (shortMap.find(name) != shortMap.end()) 00371 { 00372 shortName = shortMap[name]; 00373 } 00374 return shortName; 00375 }
const std::vector<G4String> G4ResonanceNames::SigmaNames | ( | ) | const [inline] |
const std::vector<G4String> G4ResonanceNames::XiNames | ( | ) | const [inline] |