HepPDT Reference Documentation

HepPDT

HepPDT::ParticleID Class Reference

#include <ParticleID.hh>

List of all members.

Public Member Functions

 ParticleID (int pid=0)
 create from an integer ID
 ParticleID (const ParticleID &orig)
ParticleIDoperator= (const ParticleID &)
void swap (ParticleID &other)
bool operator< (ParticleID const &other) const
bool operator== (ParticleID const &other) const
int pid () const
 get the integer ID
int abspid () const
 get the absolute value
bool isValid () const
 is this a valid ID?
bool isMeson () const
 is this a valid meson ID?
bool isBaryon () const
 is this a valid baryon ID?
bool isDiQuark () const
 is this a valid diquark ID?
bool isHadron () const
 is this a valid hadron ID?
bool isLepton () const
 is this a valid lepton ID?
bool isNucleus () const
 is this a valid ion ID?
bool isPentaquark () const
 is this a valid pentaquark ID?
bool isSUSY () const
 is this a valid SUSY ID?
bool isRhadron () const
 is this a valid R-hadron ID?
bool isDyon () const
 is this a valid Dyon (magnetic monopole) ID?
bool isQBall () const
 Ad-hoc numbering for such particles is 100xxxx0, where xxxx is the charge in tenths.
bool hasUp () const
 does this particle contain an up quark?
bool hasDown () const
 does this particle contain a down quark?
bool hasStrange () const
 does this particle contain a strange quark?
bool hasCharm () const
 does this particle contain a charm quark?
bool hasBottom () const
 does this particle contain a bottom quark?
bool hasTop () const
 does this particle contain a top quark?
int jSpin () const
 jSpin returns 2J+1, where J is the total spin
int sSpin () const
 sSpin returns 2S+1, where S is the spin
int lSpin () const
 lSpin returns 2L+1, where L is the orbital angular momentum
int fundamentalID () const
 return the first two digits if this is a "fundamental" particle
int extraBits () const
 (e.g. outside the standard numbering scheme)
Quarks quarks () const
 returns a list of 3 constituent quarks
int threeCharge () const
 figure out the charge from the PID
double charge () const
 get the actual charge, which might be fractional
int A () const
 if this is a nucleus (ion), get A
int Z () const
 if this is a nucleus (ion), get Z
int lambda () const
 if this is a nucleus (ion), get nLambda
unsigned short digit (location) const
 return the digit at a named location in the PID
const std::string PDTname () const
 standard particle name


Detailed Description

Author:
Lynn Garren
Examples:

examMyPDT.cc.

Definition at line 64 of file ParticleID.hh.


Constructor & Destructor Documentation

HepPDT::ParticleID::ParticleID ( int  pid = 0  ) 

create from an integer ID

Definition at line 17 of file ParticleID.cc.

HepPDT::ParticleID::ParticleID ( const ParticleID orig  ) 

Definition at line 21 of file ParticleID.cc.


Member Function Documentation

int HepPDT::ParticleID::A (  )  const

if this is a nucleus (ion), get A

Examples:
testPID.cc.

Definition at line 247 of file ParticleID.cc.

References abspid(), digit(), HepPDT::n10, and HepPDT::n9.

Referenced by isNucleus(), and testNucleus().

int HepPDT::ParticleID::abspid (  )  const

get the absolute value

return a value greater than or equal to zero

Examples:
testPID.cc.

Definition at line 47 of file ParticleID.cc.

Referenced by A(), digit(), extraBits(), fundamentalID(), isBaryon(), isDiQuark(), isMeson(), isNucleus(), isQBall(), jSpin(), lambda(), lSpin(), HepPDT::ParticleDataTableComparison::operator()(), quarks(), sSpin(), testUnknown(), threeCharge(), and Z().

double HepPDT::ParticleID::charge (  )  const

get the actual charge, which might be fractional

Examples:
testPID.cc.

Definition at line 501 of file ParticleID.cc.

References isQBall(), and threeCharge().

Referenced by testValid(), and threeCharge().

unsigned short HepPDT::ParticleID::digit ( location   )  const

return the digit at a named location in the PID

Examples:
testPID.cc.

Definition at line 54 of file ParticleID.cc.

References abspid().

Referenced by A(), fundamentalID(), isBaryon(), isDiQuark(), isDyon(), isMeson(), isNucleus(), isPentaquark(), isQBall(), isRhadron(), isSUSY(), lambda(), quarks(), testDiQuark(), testHadron(), testLepton(), testNucleus(), testUnknown(), threeCharge(), and Z().

int HepPDT::ParticleID::extraBits (  )  const

(e.g. outside the standard numbering scheme)

Examples:
testPID.cc.

Definition at line 63 of file ParticleID.cc.

References abspid().

Referenced by isBaryon(), isDiQuark(), isDyon(), isHadron(), isLepton(), isMeson(), isPentaquark(), isQBall(), isRhadron(), isSUSY(), isValid(), jSpin(), quarks(), testDiQuark(), testHadron(), testLepton(), testNucleus(), testUnknown(), and threeCharge().

int HepPDT::ParticleID::fundamentalID (  )  const

return the first two digits if this is a "fundamental" particle

Examples:
testPID.cc.

Definition at line 71 of file ParticleID.cc.

References abspid(), digit(), HepPDT::n10, HepPDT::n9, HepPDT::nq1, and HepPDT::nq2.

Referenced by isBaryon(), HepPDT::Constituent::isBottom(), HepPDT::Constituent::isCharm(), isDiQuark(), HepPDT::Constituent::isDown(), isLepton(), isMeson(), HepPDT::Constituent::isStrange(), isSUSY(), HepPDT::Constituent::isTop(), HepPDT::Constituent::isUp(), isValid(), jSpin(), quarks(), testDiQuark(), testHadron(), testLepton(), testNucleus(), testUnknown(), and threeCharge().

bool HepPDT::ParticleID::hasBottom (  )  const

does this particle contain a bottom quark?

Examples:
testPID.cc.

Definition at line 103 of file ParticleID.cc.

References HepPID::hasBottom().

Referenced by testHasMethods().

bool HepPDT::ParticleID::hasCharm (  )  const

does this particle contain a charm quark?

Examples:
testPID.cc.

Definition at line 98 of file ParticleID.cc.

References HepPID::hasCharm().

Referenced by testHasMethods().

bool HepPDT::ParticleID::hasDown (  )  const

does this particle contain a down quark?

Examples:
testPID.cc.

Definition at line 88 of file ParticleID.cc.

References HepPID::hasDown().

Referenced by testHasMethods().

bool HepPDT::ParticleID::hasStrange (  )  const

does this particle contain a strange quark?

Examples:
testPID.cc.

Definition at line 93 of file ParticleID.cc.

References HepPID::hasStrange().

Referenced by testHasMethods().

bool HepPDT::ParticleID::hasTop (  )  const

does this particle contain a top quark?

Examples:
testPID.cc.

Definition at line 108 of file ParticleID.cc.

References HepPID::hasTop().

Referenced by testHasMethods().

bool HepPDT::ParticleID::hasUp (  )  const

does this particle contain an up quark?

Examples:
testPID.cc.

Definition at line 83 of file ParticleID.cc.

References HepPID::hasUp().

Referenced by testHasMethods().

bool HepPDT::ParticleID::isBaryon (  )  const

is this a valid baryon ID?

Examples:
testPID.cc.

Definition at line 334 of file ParticleID.cc.

References abspid(), digit(), extraBits(), fundamentalID(), HepPDT::nj, HepPDT::nq1, HepPDT::nq2, and HepPDT::nq3.

Referenced by HepPDT::ParticleData::isBaryon(), isHadron(), isValid(), testHadron(), and threeCharge().

bool HepPDT::ParticleID::isDiQuark (  )  const

is this a valid diquark ID?

Examples:
testPID.cc.

Definition at line 316 of file ParticleID.cc.

References abspid(), digit(), extraBits(), fundamentalID(), HepPDT::nj, HepPDT::nq1, HepPDT::nq2, and HepPDT::nq3.

Referenced by HepPDT::ParticleData::isDiQuark(), isValid(), testDiQuark(), and testUnknown().

bool HepPDT::ParticleID::isDyon (  )  const

is this a valid Dyon (magnetic monopole) ID?

Magnetic monopoles and Dyons are assumed to have one unit of

Dirac monopole charge and a variable integer number xyz units

of electric charge.

Codes 411xyz0 are then used when the magnetic and electrical

charge sign agree and 412xyz0 when they disagree,

with the overall sign of the particle set by the magnetic charge.

For now no spin information is provided.

Examples:
testPID.cc.

Definition at line 179 of file ParticleID.cc.

References digit(), extraBits(), HepPDT::n, HepPDT::nj, HepPDT::nl, HepPDT::nq3, and HepPDT::nr.

Referenced by HepPDT::ParticleData::isDyon(), isValid(), quarks(), testUnknown(), and threeCharge().

bool HepPDT::ParticleID::isHadron (  )  const

is this a valid hadron ID?

Examples:
testPID.cc.

Definition at line 306 of file ParticleID.cc.

References extraBits(), isBaryon(), isMeson(), and isPentaquark().

Referenced by HepPDT::ParticleData::isHadron(), testHadron(), and testUnknown().

bool HepPDT::ParticleID::isLepton (  )  const

is this a valid lepton ID?

Examples:
testPID.cc.

Definition at line 298 of file ParticleID.cc.

References extraBits(), and fundamentalID().

Referenced by HepPDT::ParticleData::isLepton(), testLepton(), and testUnknown().

bool HepPDT::ParticleID::isMeson (  )  const

is this a valid meson ID?

Examples:
testPID.cc.

Definition at line 274 of file ParticleID.cc.

References abspid(), digit(), extraBits(), fundamentalID(), HepPDT::nj, HepPDT::nq1, HepPDT::nq2, HepPDT::nq3, and pid().

Referenced by isHadron(), HepPDT::ParticleData::isMeson(), isValid(), lSpin(), sSpin(), and testHadron().

bool HepPDT::ParticleID::isNucleus (  )  const

is this a valid ion ID?

Examples:
testPID.cc.

Definition at line 234 of file ParticleID.cc.

References A(), abspid(), digit(), HepPDT::n10, HepPDT::n9, and Z().

Referenced by HepPDT::ParticleData::isNucleus(), isValid(), lambda(), HepPDT::TestNuclearFragment::processUnknownID(), HepPDT::HeavyIonUnknownID::processUnknownID(), testNucleus(), testUnknown(), and threeCharge().

bool HepPDT::ParticleID::isPentaquark (  )  const

is this a valid pentaquark ID?

Definition at line 142 of file ParticleID.cc.

References digit(), extraBits(), HepPDT::n, HepPDT::nj, HepPDT::nl, HepPDT::nq1, HepPDT::nq2, HepPDT::nq3, and HepPDT::nr.

Referenced by isHadron(), HepPDT::ParticleData::isPentaquark(), and isValid().

bool HepPDT::ParticleID::isQBall (  )  const

Ad-hoc numbering for such particles is 100xxxx0, where xxxx is the charge in tenths.

Definition at line 202 of file ParticleID.cc.

References abspid(), digit(), extraBits(), HepPDT::n, HepPDT::nj, and HepPDT::nr.

Referenced by charge(), HepPDT::ParticleData::isQBall(), isValid(), HepPDT::detail::parseParticleLine(), and threeCharge().

bool HepPDT::ParticleID::isRhadron (  )  const

is this a valid R-hadron ID?

Examples:
testPID.cc.

Definition at line 162 of file ParticleID.cc.

References digit(), extraBits(), isSUSY(), HepPDT::n, HepPDT::nj, HepPDT::nq2, HepPDT::nq3, and HepPDT::nr.

Referenced by HepPDT::ParticleData::isRhadron(), isValid(), testHadron(), and threeCharge().

bool HepPDT::ParticleID::isSUSY (  )  const

is this a valid SUSY ID?

Examples:
testPID.cc.

Definition at line 217 of file ParticleID.cc.

References digit(), extraBits(), fundamentalID(), HepPDT::n, and HepPDT::nr.

Referenced by isRhadron(), HepPDT::ParticleData::isSUSY(), isValid(), and testUnknown().

bool HepPDT::ParticleID::isValid (  )  const

is this a valid ID?

Examples:
testPID.cc.

Definition at line 114 of file ParticleID.cc.

References extraBits(), fundamentalID(), isBaryon(), isDiQuark(), isDyon(), isMeson(), isNucleus(), isPentaquark(), isQBall(), isRhadron(), and isSUSY().

Referenced by testValid(), and HepPDT::ParticleData::write().

int HepPDT::ParticleID::jSpin (  )  const

jSpin returns 2J+1, where J is the total spin

Examples:
testPID.cc.

Definition at line 345 of file ParticleID.cc.

References abspid(), extraBits(), and fundamentalID().

Referenced by HepPDT::TempParticleData::processPID(), testDiQuark(), testHadron(), testLepton(), testNucleus(), testUnknown(), and testValid().

int HepPDT::ParticleID::lambda (  )  const

if this is a nucleus (ion), get nLambda

Examples:
testPID.cc.

Definition at line 265 of file ParticleID.cc.

References abspid(), digit(), isNucleus(), and HepPDT::n8.

Referenced by testNucleus().

int HepPDT::ParticleID::lSpin (  )  const

lSpin returns 2L+1, where L is the orbital angular momentum

Examples:
testPID.cc.

Definition at line 362 of file ParticleID.cc.

References abspid(), isMeson(), and HepPDT::nl.

Referenced by HepPDT::TempParticleData::processPID(), testDiQuark(), testHadron(), testLepton(), testUnknown(), and testValid().

bool HepPDT::ParticleID::operator< ( ParticleID const &  other  )  const

Definition at line 37 of file ParticleID.cc.

References itsPID.

ParticleID & HepPDT::ParticleID::operator= ( const ParticleID  ) 

Definition at line 25 of file ParticleID.cc.

References swap().

bool HepPDT::ParticleID::operator== ( ParticleID const &  other  )  const

Definition at line 42 of file ParticleID.cc.

References itsPID.

const std::string HepPDT::ParticleID::PDTname (  )  const [inline]

standard particle name

Examples:
testPID.cc.

Definition at line 157 of file ParticleID.hh.

References HepPID::particleName().

Referenced by HepPDT::ParticleData::PDTname(), and testHasMethods().

int HepPDT::ParticleID::pid (  )  const [inline]

get the integer ID

Examples:
testPID.cc.

Definition at line 85 of file ParticleID.hh.

Referenced by HepPDT::TempParticleData::antiparticle(), isMeson(), HepPDT::ParticleDataTableComparison::operator()(), HepPDT::parseEvtGenDecayLine(), HepPDT::parseEvtGenLine(), HepPDT::detail::parseIsajetLine(), HepPDT::detail::parseParticleLine(), HepPDT::detail::parsePythiaDecayLine(), HepPDT::detail::parsePythiaLine(), HepPDT::parseQQParticle(), HepPDT::ParticleData::pid(), HepPDT::TempParticleData::processPID(), testHadron(), testHasMethods(), threeCharge(), and HepPDT::ParticleData::write().

Quarks HepPDT::ParticleID::quarks (  )  const

returns a list of 3 constituent quarks

Examples:
testPID.cc.

Definition at line 14 of file quarks.cc.

References abspid(), digit(), extraBits(), fundamentalID(), isDyon(), HepPDT::nq1, HepPDT::Quarks::nq1, HepPDT::nq2, HepPDT::Quarks::nq2, HepPDT::nq3, and HepPDT::Quarks::nq3.

Referenced by HepPDT::TempParticleData::processPID(), testDiQuark(), testHadron(), testLepton(), testUnknown(), and testValid().

int HepPDT::ParticleID::sSpin (  )  const

sSpin returns 2S+1, where S is the spin

Examples:
testPID.cc.

Definition at line 412 of file ParticleID.cc.

References abspid(), isMeson(), and HepPDT::nl.

Referenced by HepPDT::TempParticleData::processPID(), and testValid().

void HepPDT::ParticleID::swap ( ParticleID other  ) 

Definition at line 32 of file ParticleID.cc.

References itsPID, and HepPDT::swap().

Referenced by operator=(), and HepPDT::swap().

int HepPDT::ParticleID::threeCharge (  )  const

figure out the charge from the PID

Examples:
testPID.cc.

Definition at line 437 of file ParticleID.cc.

References abspid(), charge(), digit(), extraBits(), fundamentalID(), isBaryon(), isDyon(), isNucleus(), isQBall(), isRhadron(), HepPDT::nj, HepPDT::nl, HepPDT::nq1, HepPDT::nq2, HepPDT::nq3, pid(), and Z().

Referenced by charge(), HepPDT::TempParticleData::processPID(), testDiQuark(), testHadron(), testLepton(), testNucleus(), testUnknown(), and testValid().

int HepPDT::ParticleID::Z (  )  const

if this is a nucleus (ion), get Z

Examples:
testPID.cc.

Definition at line 256 of file ParticleID.cc.

References abspid(), digit(), HepPDT::n10, and HepPDT::n9.

Referenced by isNucleus(), testNucleus(), and threeCharge().


The documentation for this class was generated from the following files:
Generated on Fri Dec 4 14:05:25 2009 for HepPDT by  doxygen 1.4.7