CMS 3D CMS Logo

StrangeDensity.cc
Go to the documentation of this file.
1 
3 
5  fTemperature = 0.*GeV;
8  fNMax = 5;
9 }
10 // compute hadron system strangeness density
12  double meanStrangenessDensity = 0.;
13  for(int particleIndex = 0; particleIndex < database->GetNParticles(); particleIndex++) {
14  ParticlePDG *particle = database->GetPDGParticleByIndex(particleIndex);
15  double particleDensity = ParticleNumberDensity(particle);
16  meanStrangenessDensity += particleDensity*particle->GetStrangeness();
17  }
18  return meanStrangenessDensity;
19 }
20 
21 // compute hadron number density
23  double particleMass = pDef->GetMass();
24  int particleStrangeness = int(pDef->GetStrangeness());
25  double particleBaryon = pDef->GetBaryonNumber();
26  //compute chemical potential
27  double particleChemPotential = fBaryonPotential*particleBaryon +
28  fStrangePotential*particleStrangeness;
29  //compute degeneracy factor
30  double particleDegFactor = 2*pDef->GetSpin() + 1.; // IA: In ParticlePDG() GetSpin() returns spin not 2*spin !!
31  double d = 1.;//for fermions
32  if(int(2*pDef->GetSpin())%2 == 0)//it gives 0 for Spin = 0,2,4,.. and it gives 1 for Spin = 1,3,7,
33  d = -1; //for bosons
34 
35  double prefactor;
36  double postfactor;
37  prefactor = (particleDegFactor*particleMass*particleMass*
39  postfactor = 0.;
40 
41  for(int n = 1; n <= fNMax; n++) {
42  postfactor += pow(-d,n+1)/(n)*exp(n*particleChemPotential/fTemperature)*
43  HankelKn(2,n*particleMass/fTemperature);
44  }
45  return prefactor*postfactor;
46 }
47 
const double GeV
Definition: MathUtil.h:16
int GetNParticles(bool all=kFALSE)
Definition: DatabasePDG.cc:574
const double hbarc
Definition: MathUtil.h:18
double ParticleNumberDensity(ParticlePDG *particle)
double fStrangePotential
double HankelKn(int n, double x)
double GetSpin()
Definition: ParticlePDG.h:71
ParticlePDG * GetPDGParticleByIndex(int index)
Definition: DatabasePDG.cc:202
double GetBaryonNumber()
Definition: ParticlePDG.h:80
double StrangenessDensity(DatabasePDG *database)
double GetStrangeness()
Definition: ParticlePDG.h:82
double GetMass()
Definition: ParticlePDG.h:68
const double N_PI
Definition: MathUtil.h:19
Power< A, B >::type pow(const A &a, const B &b)
Definition: Power.h:40