| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

In This Package:

HepMC::HeavyIon Class Reference

HepMC::HeavyIon provides additional information storage for Heavy Ion generators in GenEvent. More...

#include <HeavyIon.h>

List of all members.


Public Member Functions

 HeavyIon ()
 default constructor
 HeavyIon (int nh, int np, int nt, int nc, int ns, int nsp, int nnw=0, int nwn=0, int nwnw=0, float im=0., float pl=0., float ec=0., float s=0.)
 Required members are the number of hard scatterings, the number of projectile participants.
 ~HeavyIon ()
 HeavyIon (HeavyIon const &orig)
 copy constructor
HeavyIonoperator= (HeavyIon const &rhs)
 make a copy
void swap (HeavyIon &other)
 swap two HeavyIon objects
bool operator== (const HeavyIon &) const
 check for equality
bool operator!= (const HeavyIon &) const
 check for inequality
int Ncoll_hard () const
 Number of hard scatterings.
int Npart_proj () const
 Number of projectile participants.
int Npart_targ () const
 Number of target participants.
int Ncoll () const
 Number of NN (nucleon-nucleon) collisions.
int spectator_neutrons () const
 Number of spectator neutrons.
int spectator_protons () const
 Number of spectator protons.
int N_Nwounded_collisions () const
 Number of N-Nwounded collisions.
int Nwounded_N_collisions () const
 Number of Nwounded-N collisons.
int Nwounded_Nwounded_collisions () const
 Number of Nwounded-Nwounded collisions.
float impact_parameter () const
 Impact Parameter(in fm) of collision.
float event_plane_angle () const
 Azimuthal angle of event plane.
float eccentricity () const
 eccentricity of participating nucleons in the transverse plane (as in phobos nucl-ex/0510031)
float sigma_inel_NN () const
 nucleon-nucleon inelastic (including diffractive) cross-section
void set_Ncoll_hard (const int &i)
 set number of hard scatterings
void set_Npart_proj (const int &i)
 set number of projectile participants
void set_Npart_targ (const int &i)
 set number of target participants
void set_Ncoll (const int &i)
 set number of NN (nucleon-nucleon) collisions
void set_spectator_neutrons (const int &i)
 set number of spectator neutrons
void set_spectator_protons (const int &i)
 set number of spectator protons
void set_N_Nwounded_collisions (const int &i)
 set number of N-Nwounded collisions
void set_Nwounded_N_collisions (const int &i)
 set number of Nwounded-N collisons
void set_Nwounded_Nwounded_collisions (const int &i)
 set number of Nwounded-Nwounded collisions
void set_impact_parameter (const float &f)
 set Impact Parameter in fm
void set_event_plane_angle (const float &f)
 set azimuthal angle of event plane
void set_eccentricity (const float &f)
 set eccentricity of participating nucleons in the transverse plane
void set_sigma_inel_NN (const float &f)
 set nucleon-nucleon inelastic cross-section

Private Attributes

int m_Ncoll_hard
int m_Npart_proj
int m_Npart_targ
int m_Ncoll
int m_spectator_neutrons
int m_spectator_protons
int m_N_Nwounded_collisions
int m_Nwounded_N_collisions
int m_Nwounded_Nwounded_collisions
float m_impact_parameter
float m_event_plane_angle
float m_eccentricity
float m_sigma_inel_NN

Detailed Description

HepMC::HeavyIon provides additional information storage for Heavy Ion generators in GenEvent.

Creation and use of this information is optional.

Definition at line 45 of file HeavyIon.h.


Constructor & Destructor Documentation

HepMC::HeavyIon::HeavyIon (  )  [inline]

default constructor

Definition at line 51 of file HeavyIon.h.

00052     : m_Ncoll_hard(0), 
00053       m_Npart_proj(0),
00054       m_Npart_targ(0),
00055       m_Ncoll(0),
00056       m_spectator_neutrons(0),
00057       m_spectator_protons(0),
00058       m_N_Nwounded_collisions(0),
00059       m_Nwounded_N_collisions(0),
00060       m_Nwounded_Nwounded_collisions(0),
00061       m_impact_parameter(0),
00062       m_event_plane_angle(0),
00063       m_eccentricity(0),
00064       m_sigma_inel_NN(0)
00065     {}

HepMC::HeavyIon::HeavyIon ( int  nh,
int  np,
int  nt,
int  nc,
int  ns,
int  nsp,
int  nnw = 0,
int  nwn = 0,
int  nwnw = 0,
float  im = 0.,
float  pl = 0.,
float  ec = 0.,
float  s = 0. 
) [inline]

Required members are the number of hard scatterings, the number of projectile participants.

the number of target participants. the number of nucleon-nucleon collisions, the number of spectator neutrons, and the number of spectator protons.

Definition at line 168 of file HeavyIon.h.

00171     : m_Ncoll_hard(nh), 
00172       m_Npart_proj(np),
00173       m_Npart_targ(nt),
00174       m_Ncoll(nc),
00175       m_spectator_neutrons(ns),
00176       m_spectator_protons(nsp),
00177       m_N_Nwounded_collisions(nnw),
00178       m_Nwounded_N_collisions(nwn),
00179       m_Nwounded_Nwounded_collisions(nwnw),
00180       m_impact_parameter(im),
00181       m_event_plane_angle(pl),
00182       m_eccentricity(ec),
00183       m_sigma_inel_NN(s)
00184    {}

HepMC::HeavyIon::~HeavyIon (  )  [inline]

Definition at line 72 of file HeavyIon.h.

00072 {}

HepMC::HeavyIon::HeavyIon ( HeavyIon const &  orig  )  [inline]

copy constructor

Definition at line 186 of file HeavyIon.h.

00187     : m_Ncoll_hard(orig.m_Ncoll_hard), 
00188       m_Npart_proj(orig.m_Npart_proj),
00189       m_Npart_targ(orig.m_Npart_targ),
00190       m_Ncoll(orig.m_Ncoll),
00191       m_spectator_neutrons(orig.m_spectator_neutrons),
00192       m_spectator_protons(orig.m_spectator_protons),
00193       m_N_Nwounded_collisions(orig.m_N_Nwounded_collisions),
00194       m_Nwounded_N_collisions(orig.m_Nwounded_N_collisions),
00195       m_Nwounded_Nwounded_collisions(orig.m_Nwounded_Nwounded_collisions),
00196       m_impact_parameter(orig.m_impact_parameter),
00197       m_event_plane_angle(orig.m_event_plane_angle),
00198       m_eccentricity(orig.m_eccentricity),
00199       m_sigma_inel_NN(orig.m_sigma_inel_NN)
00200    {}


Member Function Documentation

HeavyIon & HepMC::HeavyIon::operator= ( HeavyIon const &  rhs  )  [inline]

make a copy

Definition at line 202 of file HeavyIon.h.

00203 {
00204   HeavyIon temp( rhs );
00205   swap( temp );
00206   return *this;
00207 }

void HepMC::HeavyIon::swap ( HeavyIon other  )  [inline]

swap two HeavyIon objects

Definition at line 209 of file HeavyIon.h.

00210 {
00211   std::swap(m_Ncoll_hard, other.m_Ncoll_hard); 
00212   std::swap(m_Npart_proj, other.m_Npart_proj);
00213   std::swap(m_Npart_targ, other.m_Npart_targ);
00214   std::swap(m_Ncoll, other.m_Ncoll);
00215   std::swap(m_N_Nwounded_collisions, other.m_N_Nwounded_collisions);
00216   std::swap(m_Nwounded_N_collisions, other.m_Nwounded_N_collisions);
00217   std::swap(m_Nwounded_Nwounded_collisions, other.m_Nwounded_Nwounded_collisions);
00218   std::swap(m_spectator_neutrons, other.m_spectator_neutrons);
00219   std::swap(m_spectator_protons, other.m_spectator_protons);
00220   std::swap(m_impact_parameter, other.m_impact_parameter);
00221   std::swap(m_event_plane_angle, other.m_event_plane_angle);
00222   std::swap(m_eccentricity, other.m_eccentricity);
00223   std::swap(m_sigma_inel_NN, other.m_sigma_inel_NN);
00224 }

bool HepMC::HeavyIon::operator== ( const HeavyIon  )  const [inline]

check for equality

equality requires that each member match

Definition at line 226 of file HeavyIon.h.

00227 {
00229     return ( a.Ncoll_hard() == this->Ncoll_hard() 
00230              && a.Npart_proj() == this->Npart_proj() 
00231              && a.Npart_targ() == this->Npart_targ() 
00232              && a.Ncoll() == this->Ncoll() 
00233              && a.N_Nwounded_collisions() == this->N_Nwounded_collisions() 
00234              && a.Nwounded_N_collisions() == this->Nwounded_N_collisions() 
00235              && a.Nwounded_Nwounded_collisions() == this->Nwounded_Nwounded_collisions() 
00236              && a.spectator_neutrons() == this->spectator_neutrons() 
00237              && a.spectator_protons() == this->spectator_protons() 
00238              && a.impact_parameter() == this->impact_parameter() 
00239              && a.event_plane_angle() == this->event_plane_angle()
00240              && a.eccentricity() == this->eccentricity() 
00241              && a.sigma_inel_NN() == this->sigma_inel_NN() );
00242 }

bool HepMC::HeavyIon::operator!= ( const HeavyIon  )  const [inline]

check for inequality

any nonmatching member generates inequality

Definition at line 244 of file HeavyIon.h.

00245 {
00247     return !( a == *this );
00248 }

int HepMC::HeavyIon::Ncoll_hard (  )  const [inline]

Number of hard scatterings.

Definition at line 87 of file HeavyIon.h.

00087 { return m_Ncoll_hard; }

int HepMC::HeavyIon::Npart_proj (  )  const [inline]

Number of projectile participants.

Definition at line 89 of file HeavyIon.h.

00089 { return m_Npart_proj; }

int HepMC::HeavyIon::Npart_targ (  )  const [inline]

Number of target participants.

Definition at line 91 of file HeavyIon.h.

00091 { return m_Npart_targ; }

int HepMC::HeavyIon::Ncoll (  )  const [inline]

Number of NN (nucleon-nucleon) collisions.

Definition at line 93 of file HeavyIon.h.

00093 { return m_Ncoll; }

int HepMC::HeavyIon::spectator_neutrons (  )  const [inline]

Number of spectator neutrons.

Definition at line 95 of file HeavyIon.h.

00095 { return m_spectator_neutrons; }

int HepMC::HeavyIon::spectator_protons (  )  const [inline]

Number of spectator protons.

Definition at line 97 of file HeavyIon.h.

00097 { return m_spectator_protons; }

int HepMC::HeavyIon::N_Nwounded_collisions (  )  const [inline]

Number of N-Nwounded collisions.

Definition at line 99 of file HeavyIon.h.

00099 { return m_N_Nwounded_collisions; }

int HepMC::HeavyIon::Nwounded_N_collisions (  )  const [inline]

Number of Nwounded-N collisons.

Definition at line 101 of file HeavyIon.h.

00101 { return m_Nwounded_N_collisions; }

int HepMC::HeavyIon::Nwounded_Nwounded_collisions (  )  const [inline]

Number of Nwounded-Nwounded collisions.

Definition at line 103 of file HeavyIon.h.

float HepMC::HeavyIon::impact_parameter (  )  const [inline]

Impact Parameter(in fm) of collision.

Definition at line 105 of file HeavyIon.h.

00105 { return m_impact_parameter; }

float HepMC::HeavyIon::event_plane_angle (  )  const [inline]

Azimuthal angle of event plane.

Definition at line 107 of file HeavyIon.h.

00107 { return m_event_plane_angle; }

float HepMC::HeavyIon::eccentricity (  )  const [inline]

eccentricity of participating nucleons in the transverse plane (as in phobos nucl-ex/0510031)

Definition at line 110 of file HeavyIon.h.

00110 { return m_eccentricity;  }

float HepMC::HeavyIon::sigma_inel_NN (  )  const [inline]

nucleon-nucleon inelastic (including diffractive) cross-section

Definition at line 112 of file HeavyIon.h.

00112 { return m_sigma_inel_NN; }

void HepMC::HeavyIon::set_Ncoll_hard ( const int &  i  )  [inline]

set number of hard scatterings

Definition at line 116 of file HeavyIon.h.

00116 { m_Ncoll_hard=i; }

void HepMC::HeavyIon::set_Npart_proj ( const int &  i  )  [inline]

set number of projectile participants

Definition at line 118 of file HeavyIon.h.

00118 { m_Npart_proj=i; }

void HepMC::HeavyIon::set_Npart_targ ( const int &  i  )  [inline]

set number of target participants

Definition at line 120 of file HeavyIon.h.

00120 { m_Npart_targ=i; }

void HepMC::HeavyIon::set_Ncoll ( const int &  i  )  [inline]

set number of NN (nucleon-nucleon) collisions

Definition at line 122 of file HeavyIon.h.

00122 { m_Ncoll=i; }

void HepMC::HeavyIon::set_spectator_neutrons ( const int &  i  )  [inline]

set number of spectator neutrons

Definition at line 124 of file HeavyIon.h.

00124 { m_spectator_neutrons=i; }

void HepMC::HeavyIon::set_spectator_protons ( const int &  i  )  [inline]

set number of spectator protons

Definition at line 126 of file HeavyIon.h.

00126 { m_spectator_protons=i; }

void HepMC::HeavyIon::set_N_Nwounded_collisions ( const int &  i  )  [inline]

set number of N-Nwounded collisions

Definition at line 128 of file HeavyIon.h.

void HepMC::HeavyIon::set_Nwounded_N_collisions ( const int &  i  )  [inline]

set number of Nwounded-N collisons

Definition at line 130 of file HeavyIon.h.

void HepMC::HeavyIon::set_Nwounded_Nwounded_collisions ( const int &  i  )  [inline]

set number of Nwounded-Nwounded collisions

Definition at line 132 of file HeavyIon.h.

void HepMC::HeavyIon::set_impact_parameter ( const float &  f  )  [inline]

set Impact Parameter in fm

Definition at line 135 of file HeavyIon.h.

00135 { m_impact_parameter=f; }

void HepMC::HeavyIon::set_event_plane_angle ( const float &  f  )  [inline]

set azimuthal angle of event plane

Definition at line 137 of file HeavyIon.h.

00137 { m_event_plane_angle=f; }

void HepMC::HeavyIon::set_eccentricity ( const float &  f  )  [inline]

set eccentricity of participating nucleons in the transverse plane

Definition at line 139 of file HeavyIon.h.

00139 { m_eccentricity=f;  }

void HepMC::HeavyIon::set_sigma_inel_NN ( const float &  f  )  [inline]

set nucleon-nucleon inelastic cross-section

Definition at line 141 of file HeavyIon.h.

00141 { m_sigma_inel_NN=f; }


Member Data Documentation

int HepMC::HeavyIon::m_Ncoll_hard [private]

Definition at line 144 of file HeavyIon.h.

int HepMC::HeavyIon::m_Npart_proj [private]

Definition at line 145 of file HeavyIon.h.

int HepMC::HeavyIon::m_Npart_targ [private]

Definition at line 146 of file HeavyIon.h.

int HepMC::HeavyIon::m_Ncoll [private]

Definition at line 147 of file HeavyIon.h.

int HepMC::HeavyIon::m_spectator_neutrons [private]

Definition at line 148 of file HeavyIon.h.

int HepMC::HeavyIon::m_spectator_protons [private]

Definition at line 149 of file HeavyIon.h.

int HepMC::HeavyIon::m_N_Nwounded_collisions [private]

Definition at line 150 of file HeavyIon.h.

int HepMC::HeavyIon::m_Nwounded_N_collisions [private]

Definition at line 151 of file HeavyIon.h.

int HepMC::HeavyIon::m_Nwounded_Nwounded_collisions [private]

Definition at line 152 of file HeavyIon.h.

float HepMC::HeavyIon::m_impact_parameter [private]

Definition at line 153 of file HeavyIon.h.

float HepMC::HeavyIon::m_event_plane_angle [private]

Definition at line 154 of file HeavyIon.h.

float HepMC::HeavyIon::m_eccentricity [private]

Definition at line 155 of file HeavyIon.h.

float HepMC::HeavyIon::m_sigma_inel_NN [private]

Definition at line 156 of file HeavyIon.h.


The documentation for this class was generated from the following file:
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Mon Apr 11 19:56:44 2011 for HepMC by doxygen 1.4.7