#include <ParticleData.h>
Public Member Functions | |
ParticleData (std::string name, int id, double charge, double mass=0, double cLifetime=-1, double spin=0) | |
constructor requiring name, ID, and charge | |
ParticleData (const char *name, int id, double charge, double mass=0, double cLifetime=-1, double spin=0) | |
constructor requiring name, ID, and charge | |
virtual | ~ParticleData () |
bool | operator== (const ParticleData &) const |
equality | |
bool | operator!= (const ParticleData &) const |
inequality | |
void | print (std::ostream &ostr=std::cout) const |
write particle data information to ostr | |
bool | is_lepton () const |
true if charged lepton /neutrino | |
bool | is_charged_lepton () const |
true if a charged lepton | |
bool | is_em () const |
true if an electron or photon | |
bool | is_neutrino () const |
true if a neutrino | |
bool | is_hadron () const |
true if a hadron | |
bool | is_boson () const |
true if a gauge or higgs boson | |
std::string | name () const |
description of the particle according to PDG, i.e. "Delta(1900) S_31" | |
int | pdg_id () const |
PDG ID number. | |
double | charge () const |
charge | |
double | mass () const |
nominal mass | |
double | width () const |
width as calculated from clifetime | |
double | clifetime () const |
lifetime in mm | |
double | spin () const |
J spin. | |
void | set_charge (double) |
set charge | |
void | set_mass (double) |
set nominal mass | |
void | set_width (double) |
set width | |
void | set_clifetime (double) |
set lifetime in mm | |
void | set_spin (double) |
set J spin | |
Protected Member Functions | |
int | model_independent_pdg_id_ () const |
omits susy/excited/technicolor digit from returned ID | |
Static Protected Member Functions | |
static unsigned int | counter () |
num ParticleData objects in memory | |
Private Attributes | |
std::string | m_name |
int | m_pdg_id |
int | m_3charge |
double | m_mass |
double | m_clifetime |
unsigned char | m_2spin |
Static Private Attributes | |
static unsigned int | s_counter |
Friends | |
std::ostream & | operator<< (std::ostream &, const ParticleData &) |
Definition at line 69 of file ParticleData.h.
HepMC::ParticleData::ParticleData | ( | std::string | name, | |
int | id, | |||
double | charge, | |||
double | mass = 0 , |
|||
double | cLifetime = -1 , |
|||
double | spin = 0 | |||
) |
constructor requiring name, ID, and charge
HepMC::ParticleData::ParticleData | ( | const char * | name, | |
int | id, | |||
double | charge, | |||
double | mass = 0 , |
|||
double | cLifetime = -1 , |
|||
double | spin = 0 | |||
) |
constructor requiring name, ID, and charge
virtual HepMC::ParticleData::~ParticleData | ( | ) | [virtual] |
bool HepMC::ParticleData::operator== | ( | const ParticleData & | ) | const [inline] |
equality
Definition at line 213 of file ParticleData.h.
00213 { 00214 // compares everything except the particle's name 00215 return ( a.m_pdg_id != m_pdg_id || 00216 a.m_mass != m_mass || 00217 a.m_clifetime != m_clifetime || 00218 a.m_3charge != m_3charge || 00219 a.m_2spin != m_2spin ) ? 0 : 1; 00220 }
bool HepMC::ParticleData::operator!= | ( | const ParticleData & | ) | const [inline] |
inequality
Definition at line 222 of file ParticleData.h.
00222 { 00223 // compares everything except the particle's name 00224 return ( a.pdg_id() != this->pdg_id() ); 00225 }
void HepMC::ParticleData::print | ( | std::ostream & | ostr = std::cout |
) | const |
write particle data information to ostr
bool HepMC::ParticleData::is_lepton | ( | ) | const [inline] |
true if charged lepton /neutrino
true if a charged lepton or neutrino --> | 11,13,15,12,14,16,17,18 |
Definition at line 142 of file ParticleData.h.
bool HepMC::ParticleData::is_charged_lepton | ( | ) | const [inline] |
true if a charged lepton
true if a charged lepton --> | 11,13,15 |
Definition at line 146 of file ParticleData.h.
bool HepMC::ParticleData::is_em | ( | ) | const [inline] |
true if an electron or photon
true if an electron or photon --> | 11, 22 |
Definition at line 154 of file ParticleData.h.
bool HepMC::ParticleData::is_neutrino | ( | ) | const [inline] |
true if a neutrino
true if a neutrino --> | 12,14,16 |
Definition at line 150 of file ParticleData.h.
bool HepMC::ParticleData::is_hadron | ( | ) | const [inline] |
true if a hadron
true if a hadron --> q,g,meson,baryon
Definition at line 158 of file ParticleData.h.
00158 { 00160 return ( abs(pdg_id()) <= 9 || abs(pdg_id()) == 21 00161 || abs(pdg_id()) >100 ); 00162 }
bool HepMC::ParticleData::is_boson | ( | ) | const [inline] |
true if a gauge or higgs boson
true if a gauge or higgs boson --> | 9, 21-39 |
Definition at line 163 of file ParticleData.h.
00163 { 00165 return ( ( abs(pdg_id()) >20 && abs(pdg_id()) <=40 ) 00166 || abs(pdg_id()) == 9 ); 00167 }
std::string HepMC::ParticleData::name | ( | ) | const [inline] |
description of the particle according to PDG, i.e. "Delta(1900) S_31"
Definition at line 173 of file ParticleData.h.
00173 { return m_name; }
int HepMC::ParticleData::pdg_id | ( | ) | const [inline] |
double HepMC::ParticleData::charge | ( | ) | const [inline] |
charge
Definition at line 175 of file ParticleData.h.
00175 { 00176 return ( (double)m_3charge )/3.; 00177 }
double HepMC::ParticleData::mass | ( | ) | const [inline] |
double HepMC::ParticleData::width | ( | ) | const |
width as calculated from clifetime
double HepMC::ParticleData::clifetime | ( | ) | const [inline] |
double HepMC::ParticleData::spin | ( | ) | const [inline] |
void HepMC::ParticleData::set_charge | ( | double | ) | [inline] |
void HepMC::ParticleData::set_mass | ( | double | ) | [inline] |
set nominal mass
Definition at line 190 of file ParticleData.h.
00190 { 00191 m_mass = its_mass; 00192 }
void HepMC::ParticleData::set_width | ( | double | ) | [inline] |
set width
Definition at line 193 of file ParticleData.h.
00193 { 00194 if ( width > 0 ) { 00195 m_clifetime = HepMC_hbarc/width; 00196 } else if ( width == 0. ) { 00197 m_clifetime = -1.; 00198 } else { 00199 m_clifetime = 0.; 00200 } 00201 }
void HepMC::ParticleData::set_clifetime | ( | double | ) | [inline] |
set lifetime in mm
Definition at line 202 of file ParticleData.h.
00202 { 00203 m_clifetime = its_clifetime; 00204 }
void HepMC::ParticleData::set_spin | ( | double | ) | [inline] |
static unsigned int HepMC::ParticleData::counter | ( | ) | [static, protected] |
num ParticleData objects in memory
int HepMC::ParticleData::model_independent_pdg_id_ | ( | ) | const [protected] |
omits susy/excited/technicolor digit from returned ID
std::ostream& operator<< | ( | std::ostream & | , | |
const ParticleData & | ||||
) | [friend] |
std::string HepMC::ParticleData::m_name [private] |
Definition at line 127 of file ParticleData.h.
int HepMC::ParticleData::m_pdg_id [private] |
Definition at line 129 of file ParticleData.h.
int HepMC::ParticleData::m_3charge [private] |
Definition at line 130 of file ParticleData.h.
double HepMC::ParticleData::m_mass [private] |
Definition at line 131 of file ParticleData.h.
double HepMC::ParticleData::m_clifetime [private] |
Definition at line 132 of file ParticleData.h.
unsigned char HepMC::ParticleData::m_2spin [private] |
Definition at line 133 of file ParticleData.h.
unsigned int HepMC::ParticleData::s_counter [static, private] |
Definition at line 135 of file ParticleData.h.