#include <G4ParticleDefinition.hh>
Inherited by G4AdjointElectron, G4AdjointElectronFI, G4AdjointGamma, G4AdjointIons, G4AdjointPositron, G4AdjointProton, G4AntiBMesonZero, G4AntiBsMesonZero, G4AntiDMesonZero, G4AntiKaonZero, G4AntiLambda, G4AntiLambdab, G4AntiLambdacPlus, G4AntiNeutrinoE, G4AntiNeutrinoMu, G4AntiNeutrinoTau, G4AntiNeutron, G4AntiOmegabMinus, G4AntiOmegacZero, G4AntiOmegaMinus, G4AntiProton, G4AntiSigmabMinus, G4AntiSigmabPlus, G4AntiSigmabZero, G4AntiSigmacPlus, G4AntiSigmacPlusPlus, G4AntiSigmacZero, G4AntiSigmaMinus, G4AntiSigmaPlus, G4AntiSigmaZero, G4AntiXibMinus, G4AntiXibZero, G4AntiXicPlus, G4AntiXicZero, G4AntiXiMinus, G4AntiXiZero, G4BcMesonMinus, G4BcMesonPlus, G4BMesonMinus, G4BMesonPlus, G4BMesonZero, G4BsMesonZero, G4ChargedGeantino, G4DMesonMinus, G4DMesonPlus, G4DMesonZero, G4DNAIons, G4DsMesonMinus, G4DsMesonPlus, G4Electron, G4Eta, G4Etac, G4EtaPrime, G4Gamma, G4Geantino, G4Ions, G4JPsi, G4KaonMinus, G4KaonPlus, G4KaonZero, G4KaonZeroLong, G4KaonZeroShort, G4Lambda, G4Lambdab, G4LambdacPlus, G4MoleculeDefinition, G4MuonMinus, G4MuonPlus, G4NeutrinoE, G4NeutrinoMu, G4NeutrinoTau, G4OmegabMinus, G4OmegacZero, G4OmegaMinus, G4OpticalPhoton, G4PhononLong, G4PhononTransFast, G4PhononTransSlow, G4PionMinus, G4PionPlus, G4PionZero, G4Positron, G4SigmabMinus, G4SigmabPlus, G4SigmabZero, G4SigmacPlus, G4SigmacPlusPlus, G4SigmacZero, G4SigmaMinus, G4SigmaPlus, G4SigmaZero, G4TauMinus, G4TauPlus, G4UnknownParticle, G4Upsilon, G4VShortLivedParticle, G4XibMinus, G4XibZero, G4XicPlus, G4XicZero, G4XiMinus, and G4XiZero.
|
| G4ParticleDefinition (const G4String &aName, G4double mass, G4double width, G4double charge, G4int iSpin, G4int iParity, G4int iConjugation, G4int iIsospin, G4int iIsospinZ, G4int gParity, const G4String &pType, G4int lepton, G4int baryon, G4int encoding, G4bool stable, G4double lifetime, G4DecayTable *decaytable, G4bool shortlived=false, const G4String &subType="", G4int anti_encoding=0, G4double magneticMoment=0.0) |
|
virtual | ~G4ParticleDefinition () |
|
const G4String & | GetParticleName () const |
|
G4double | GetPDGMass () const |
|
G4double | GetPDGWidth () const |
|
G4double | GetPDGCharge () const |
|
G4double | GetPDGSpin () const |
|
G4int | GetPDGiSpin () const |
|
G4int | GetPDGiParity () const |
|
G4int | GetPDGiConjugation () const |
|
G4double | GetPDGIsospin () const |
|
G4double | GetPDGIsospin3 () const |
|
G4int | GetPDGiIsospin () const |
|
G4int | GetPDGiIsospin3 () const |
|
G4int | GetPDGiGParity () const |
|
G4double | GetPDGMagneticMoment () const |
|
void | SetPDGMagneticMoment (G4double mageticMoment) |
|
G4double | CalculateAnomaly () const |
|
const G4String & | GetParticleType () const |
|
const G4String & | GetParticleSubType () const |
|
G4int | GetLeptonNumber () const |
|
G4int | GetBaryonNumber () const |
|
G4int | GetPDGEncoding () const |
|
G4int | GetAntiPDGEncoding () const |
|
void | SetAntiPDGEncoding (G4int aEncoding) |
|
G4int | GetQuarkContent (G4int flavor) const |
|
G4int | GetAntiQuarkContent (G4int flavor) const |
|
G4bool | IsShortLived () const |
|
G4bool | GetPDGStable () const |
|
void | SetPDGStable (const G4bool aFlag) |
|
G4double | GetPDGLifeTime () const |
|
void | SetPDGLifeTime (G4double aLifeTime) |
|
G4double | GetIonLifeTime () const |
|
G4DecayTable * | GetDecayTable () const |
|
void | SetDecayTable (G4DecayTable *aDecayTable) |
|
G4ProcessManager * | GetProcessManager () const |
|
void | SetProcessManager (G4ProcessManager *aProcessManager) |
|
G4ParticleTable * | GetParticleTable () const |
|
G4int | GetAtomicNumber () const |
|
G4int | GetAtomicMass () const |
|
void | DumpTable () const |
|
void | SetVerboseLevel (G4int value) |
|
G4int | GetVerboseLevel () const |
|
void | SetApplyCutsFlag (G4bool) |
|
G4bool | GetApplyCutsFlag () const |
|
G4bool | IsGeneralIon () const |
|
G4int | operator== (const G4ParticleDefinition &right) const |
|
G4int | operator!= (const G4ParticleDefinition &right) const |
|
G4ProcessManager * | GetMasterProcessManager () const |
|
void | SetMasterProcessManager (G4ProcessManager *aNewPM) |
|
G4int | GetInstanceID () const |
|
void | SetParticleDefinitionID (G4int id=-1) |
|
G4int | GetParticleDefinitionID () const |
|
Definition at line 72 of file G4ParticleDefinition.hh.
G4ParticleDefinition::G4ParticleDefinition |
( |
const G4String & |
aName, |
|
|
G4double |
mass, |
|
|
G4double |
width, |
|
|
G4double |
charge, |
|
|
G4int |
iSpin, |
|
|
G4int |
iParity, |
|
|
G4int |
iConjugation, |
|
|
G4int |
iIsospin, |
|
|
G4int |
iIsospinZ, |
|
|
G4int |
gParity, |
|
|
const G4String & |
pType, |
|
|
G4int |
lepton, |
|
|
G4int |
baryon, |
|
|
G4int |
encoding, |
|
|
G4bool |
stable, |
|
|
G4double |
lifetime, |
|
|
G4DecayTable * |
decaytable, |
|
|
G4bool |
shortlived = false , |
|
|
const G4String & |
subType = "" , |
|
|
G4int |
anti_encoding = 0 , |
|
|
G4double |
magneticMoment = 0.0 |
|
) |
| |
Definition at line 80 of file G4ParticleDefinition.cc.
103 : theParticleName(aName),
106 thePDGCharge(charge),
108 thePDGSpin(iSpin*0.5),
109 thePDGiParity(iParity),
110 thePDGiConjugation(iConjugation),
111 thePDGiGParity(gParity),
112 thePDGiIsospin(iIsospin),
113 thePDGiIsospin3(iIsospin3),
114 thePDGIsospin(iIsospin*0.5),
115 thePDGIsospin3(iIsospin3*0.5),
116 thePDGMagneticMoment(magneticMoment),
117 theLeptonNumber(lepton),
119 theParticleType(pType),
120 theParticleSubType(subType),
123 fShortLivedFlag(shortlived),
124 thePDGStable(stable),
125 thePDGLifeTime(lifetime),
126 theDecayTable(decaytable),
130 fApplyCutsFlag(
false),
135 g4particleDefinitionInstanceID = -1;
136 theProcessManagerShadow = 0;
143 if (anti_encoding !=0) theAntiPDGEncoding = anti_encoding;
148 if (verboseLevel>0) {
150 G4cout <<
"Particle " << aName <<
" has a strange PDGEncoding " <<
G4endl;
153 G4Exception(
"G4ParticleDefintion::G4ParticleDefintion",
155 "Strange PDGEncoding ");
161 if ( !fShortLivedFlag && (theParticleType!=nucleus) && (currentState!=
G4State_PreInit)){
164 G4cout <<
"G4ParticleDefintion (other than ions and shortlived) should be created in Pre_Init state "
168 G4Exception(
"G4ParticleDefintion::G4ParticleDefintion",
170 "G4ParticleDefinition should be created in PreInit state");
185 theParticleTable->
Insert(
this);
void SetAtomicNumber(G4int)
G4int GetVerboseLevel() const
static G4bool IsIon(const G4ParticleDefinition *)
static G4bool IsAntiIon(const G4ParticleDefinition *)
static G4StateManager * GetStateManager()
G4ParticleDefinition * Insert(G4ParticleDefinition *particle)
G4IonTable * GetIonTable() const
G4GLOB_DLL std::ostream G4cout
static constexpr double eplus
G4int FillQuarkContents()
G4ApplicationState GetCurrentState() const
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
static G4ParticleTable * GetParticleTable()
G4double GetPDGCharge() const
G4int GetVerboseLevel() const
void SetAtomicMass(G4int)
G4int GetBaryonNumber() const
G4ParticleDefinition::~G4ParticleDefinition |
( |
| ) |
|
|
virtual |
Definition at line 204 of file G4ParticleDefinition.cc.
210 G4String msg =
"Request of deletion for ";
212 msg +=
" has No effects because readyToUse is true.";
213 G4Exception(
"G4ParticleDefinition::~G4ParticleDefinition()",
220 <<
" will be deleted " <<
G4endl;
226 if (theDecayTable!= 0)
delete theDecayTable;
const G4String & GetParticleName() const
static G4StateManager * GetStateManager()
G4GLOB_DLL std::ostream G4cout
G4ApplicationState GetCurrentState() const
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
static G4ParticleTable * GetParticleTable()
Definition at line 189 of file G4ParticleDefinition.cc.
191 G4Exception(
"G4ParticleDefinition::G4ParticleDefinition()",
193 "Illegal call of copy Constructor for G4ParticleDefinition ");
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
G4ParticleDefinition::G4ParticleDefinition |
( |
| ) |
|
|
protected |
Definition at line 196 of file G4ParticleDefinition.cc.
198 G4Exception(
"G4ParticleDefinition::G4ParticleDefinition()",
200 "Illegal call of default Constructor for G4ParticleDefinition ");
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
G4double G4ParticleDefinition::CalculateAnomaly |
( |
| ) |
const |
Definition at line 411 of file G4ParticleDefinition.cc.
413 G4Exception(
"G4ParticleDefintion::G4ParticleDefintion",
415 "CalculateAnomaly() method will be removed in next release");
418 if (thePDGiSpin==1) {
420 return 0.5*std::fabs(thePDGMagneticMoment/muB - 2.*thePDGCharge/
CLHEP::eplus);
static constexpr double eplus
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
static constexpr double c_squared
static constexpr double hbar_Planck
void G4ParticleDefinition::DumpTable |
( |
| ) |
const |
Definition at line 320 of file G4ParticleDefinition.cc.
324 G4cout <<
" Particle Name : " << theParticleName <<
G4endl;
325 G4cout <<
" PDG particle code : " << thePDGEncoding;
327 G4cout <<
" Mass [GeV/c2] : " << thePDGMass/
GeV ;
333 G4cout <<
" Charge conjugation : " << thePDGiConjugation <<
G4endl;
334 G4cout <<
" Isospin : (I,Iz): (" << thePDGiIsospin <<
"/2";
335 G4cout <<
" , " << thePDGiIsospin3 <<
"/2 ) " <<
G4endl;
337 if (thePDGMagneticMoment != 0.0) {
341 G4cout <<
", " << theQuarkContent[1];
342 G4cout <<
", " << theQuarkContent[2];
343 G4cout <<
", " << theQuarkContent[3];
344 G4cout <<
", " << theQuarkContent[4];
347 G4cout <<
", " << theAntiQuarkContent[1];
348 G4cout <<
", " << theAntiQuarkContent[2];
349 G4cout <<
", " << theAntiQuarkContent[3];
350 G4cout <<
", " << theAntiQuarkContent[4];
352 G4cout <<
" Lepton number : " << theLeptonNumber;
353 G4cout <<
" Baryon number : " << theBaryonNumber <<
G4endl;
354 G4cout <<
" Particle type : " << theParticleType ;
362 if ( fShortLivedFlag ){
369 {
G4cout <<
" Stable : No data found -- unknown" <<
G4endl; }
375 <<
"\n Decay table should be consulted to G4RadioactiveDecayProcess."
384 if( theDecayTable != 0 ){
static constexpr double tesla
static G4bool IsIon(const G4ParticleDefinition *)
static G4bool IsAntiIon(const G4ParticleDefinition *)
#define G4BestUnit(a, b)
#define G4_USE_G4BESTUNIT_FOR_VERBOSE 1
G4int GetAtomicNumber() const
G4bool IsGeneralIon() const
G4int GetAntiPDGEncoding() const
G4double GetIonLifeTime() const
G4IonTable * GetIonTable() const
G4GLOB_DLL std::ostream G4cout
static constexpr double eplus
G4int GetAtomicMass() const
G4int theAntiQuarkContent[NumberOfQuarkFlavor]
G4int theQuarkContent[NumberOfQuarkFlavor]
static constexpr double GeV
static constexpr double MeV
G4int G4ParticleDefinition::FillQuarkContents |
( |
| ) |
|
|
protected |
Definition at line 253 of file G4ParticleDefinition.cc.
275 if ((theParticleType ==
"meson")||(theParticleType ==
"baryon")) {
279 G4Exception(
"G4ParticleDefintion::G4ParticleDefintion",
281 "Inconsistent charge against PDG code ");
283 if (verboseLevel>0) {
284 G4cout <<
"G4ParticleDefinition::FillQuarkContents : "
285 <<
" illegal charge (" << thePDGCharge/
eplus
286 <<
" PDG code=" << thePDGEncoding <<
G4endl;
291 if (checker.
GetSpin() != thePDGiSpin) {
293 G4Exception(
"G4ParticleDefintion::G4ParticleDefintion",
295 "Inconsistent spin against PDG code ");
297 if (verboseLevel>0) {
298 G4cout <<
"G4ParticleDefinition::FillQuarkContents : "
299 <<
" illegal SPIN (" << thePDGiSpin <<
"/2"
300 <<
" PDG code=" << thePDGEncoding <<
G4endl;
G4bool CheckCharge(G4double charge) const
G4int GetQuarkContent(G4int flavor) const
G4int CheckPDGCode(G4int code, G4String type)
G4GLOB_DLL std::ostream G4cout
static constexpr double eplus
G4int GetAntiQuarkContent(G4int flavor) const
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
G4int theAntiQuarkContent[NumberOfQuarkFlavor]
void SetVerboseLevel(G4int verbose)
G4int theQuarkContent[NumberOfQuarkFlavor]
G4int G4ParticleDefinition::GetAntiPDGEncoding |
( |
| ) |
const |
|
inline |
G4int G4ParticleDefinition::GetAntiQuarkContent |
( |
G4int |
flavor | ) |
const |
G4bool G4ParticleDefinition::GetApplyCutsFlag |
( |
| ) |
const |
G4int G4ParticleDefinition::GetAtomicMass |
( |
| ) |
const |
G4int G4ParticleDefinition::GetAtomicNumber |
( |
| ) |
const |
G4int G4ParticleDefinition::GetBaryonNumber |
( |
| ) |
const |
|
inline |
G4int G4ParticleDefinition::GetInstanceID |
( |
| ) |
const |
|
inline |
G4double G4ParticleDefinition::GetIonLifeTime |
( |
| ) |
const |
G4int G4ParticleDefinition::GetLeptonNumber |
( |
| ) |
const |
|
inline |
G4int G4ParticleDefinition::GetParticleDefinitionID |
( |
| ) |
const |
const G4String& G4ParticleDefinition::GetParticleName |
( |
| ) |
const |
|
inline |
const G4String& G4ParticleDefinition::GetParticleSubType |
( |
| ) |
const |
|
inline |
const G4String& G4ParticleDefinition::GetParticleType |
( |
| ) |
const |
|
inline |
G4double G4ParticleDefinition::GetPDGCharge |
( |
| ) |
const |
|
inline |
G4int G4ParticleDefinition::GetPDGEncoding |
( |
| ) |
const |
|
inline |
G4int G4ParticleDefinition::GetPDGiConjugation |
( |
| ) |
const |
|
inline |
G4int G4ParticleDefinition::GetPDGiGParity |
( |
| ) |
const |
|
inline |
G4int G4ParticleDefinition::GetPDGiIsospin |
( |
| ) |
const |
|
inline |
G4int G4ParticleDefinition::GetPDGiIsospin3 |
( |
| ) |
const |
|
inline |
G4int G4ParticleDefinition::GetPDGiParity |
( |
| ) |
const |
|
inline |
G4double G4ParticleDefinition::GetPDGIsospin |
( |
| ) |
const |
|
inline |
G4double G4ParticleDefinition::GetPDGIsospin3 |
( |
| ) |
const |
|
inline |
G4int G4ParticleDefinition::GetPDGiSpin |
( |
| ) |
const |
|
inline |
G4double G4ParticleDefinition::GetPDGLifeTime |
( |
| ) |
const |
G4double G4ParticleDefinition::GetPDGMagneticMoment |
( |
| ) |
const |
|
inline |
G4double G4ParticleDefinition::GetPDGMass |
( |
| ) |
const |
|
inline |
G4double G4ParticleDefinition::GetPDGSpin |
( |
| ) |
const |
|
inline |
G4bool G4ParticleDefinition::GetPDGStable |
( |
| ) |
const |
G4double G4ParticleDefinition::GetPDGWidth |
( |
| ) |
const |
|
inline |
G4int G4ParticleDefinition::GetQuarkContent |
( |
G4int |
flavor | ) |
const |
const G4PDefManager & G4ParticleDefinition::GetSubInstanceManager |
( |
| ) |
|
|
static |
G4int G4ParticleDefinition::GetVerboseLevel |
( |
| ) |
const |
G4bool G4ParticleDefinition::IsGeneralIon |
( |
| ) |
const |
G4bool G4ParticleDefinition::IsShortLived |
( |
| ) |
const |
|
inline |
void G4ParticleDefinition::SetAntiPDGEncoding |
( |
G4int |
aEncoding | ) |
|
void G4ParticleDefinition::SetApplyCutsFlag |
( |
G4bool |
flg | ) |
|
Definition at line 393 of file G4ParticleDefinition.cc.
395 if(theParticleName==
"gamma"
396 || theParticleName==
"e-"
397 || theParticleName==
"e+"
398 || theParticleName==
"proton")
399 { fApplyCutsFlag = flg; }
403 <<
"G4ParticleDefinition::SetApplyCutsFlag() for " << theParticleName
406 <<
"becomes obsolete. Production threshold is applied only for "
407 <<
"gamma, e- ,e+ and proton." <<
G4endl;
G4GLOB_DLL std::ostream G4cout
void G4ParticleDefinition::SetAtomicMass |
( |
G4int |
| ) |
|
|
protected |
void G4ParticleDefinition::SetAtomicNumber |
( |
G4int |
| ) |
|
|
protected |
void G4ParticleDefinition::SetParticleDefinitionID |
( |
G4int |
id = -1 | ) |
|
Definition at line 426 of file G4ParticleDefinition.cc.
436 { g4particleDefinitionInstanceID = id; }
440 ed <<
"ParticleDefinitionID should not be set for the particles <"
441 << theParticleName <<
">.";
442 G4Exception(
"G4ParticleDefintion::SetParticleDefinitionID",
"PART10114",
std::ostringstream G4ExceptionDescription
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
G4int CreateSubInstance()
void G4ParticleDefinition::SetParticleSubType |
( |
const G4String & |
subtype | ) |
|
|
protected |
void G4ParticleDefinition::SetPDGLifeTime |
( |
G4double |
aLifeTime | ) |
|
|
inline |
void G4ParticleDefinition::SetPDGMagneticMoment |
( |
G4double |
mageticMoment | ) |
|
void G4ParticleDefinition::SetPDGStable |
( |
const G4bool |
aFlag | ) |
|
|
inline |
Definition at line 450 of file G4ParticleDefinition.cc.
457 ed <<
"ProcessManager is being set to " << theParticleName
458 <<
" without proper initialization of TLS pointer vector.\n"
459 <<
"This operation is thread-unsafe.";
460 G4Exception(
"G4ParticleDefintion::SetProcessManager",
"PART10116",
void SetParticleDefinitionID(G4int id=-1)
std::ostringstream G4ExceptionDescription
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
void G4ParticleDefinition::SetVerboseLevel |
( |
G4int |
value | ) |
|
G4bool G4ParticleDefinition::isGeneralIon |
|
protected |
The documentation for this class was generated from the following files: