StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Public Member Functions | List of all members
StFastGlauberMcMaker Class Reference

Public Member Functions

 StFastGlauberMcMaker ()
 Current version. More...
 
 StFastGlauberMcMaker (const TString outputFileName, const TString system, const Double_t energy, const TString type, const Bool_t isDeformed=kFALSE)
 User friendly constructor.
 
 StFastGlauberMcMaker (const TString outputFileName, const UInt_t massNumber, const Double_t radius, const Double_t skinDepth, const Double_t beta2, const Double_t beta4, const Double_t inelasticCrossSection, const Double_t energy)
 Constructor for symmetric collisions. More...
 
 StFastGlauberMcMaker (const TString outputFileName, const UInt_t massNumberA, const Double_t radiusA, const Double_t skinDepthA, const Double_t beta2A, const Double_t beta4A, const UInt_t massNumberB, const Double_t radiusB, const Double_t skinDepthB, const Double_t beta2B, const Double_t beta4B, const Double_t inelasticCrossSection, const Double_t energy)
 Default constructor. More...
 
virtual ~StFastGlauberMcMaker ()
 Default constructor.
 
void SetRepulsionDistance (const Double_t repulsionDistance)
 Default destructor. More...
 
Int_t Make ()
 
Int_t Run (const UInt_t nevents)
 Make one event.
 
Int_t Finish ()
 Run Make() by nevents.
 
void DoHardCoreSmearing ()
 Finish maker. More...
 
void DoGaussianSmearing ()
 Default is OFF. More...
 
void DoHardCoreCollision ()
 Default is OFF. More...
 
void DoGaussianCollision ()
 Hard-core collision (default) More...
 
void Print (const TString option="") const
 Gaussion profile collision. More...
 
void DebugOn ()
 
UInt_t Version () const
 Debug Mode ON.
 

Detailed Description

Definition at line 56 of file StFastGlauberMcMaker.h.

Constructor & Destructor Documentation

StFastGlauberMcMaker::StFastGlauberMcMaker ( )

Current version.

Initialize Au+Au collisions at 200 GeV

Definition at line 48 of file StFastGlauberMcMaker.cxx.

StFastGlauberMcMaker::StFastGlauberMcMaker ( const TString  outputFileName,
const UInt_t  massNumber,
const Double_t  radius,
const Double_t  skinDepth,
const Double_t  beta2,
const Double_t  beta4,
const Double_t  inelasticCrossSection,
const Double_t  energy 
)

Constructor for symmetric collisions.

Initialize symmetric collisions

Definition at line 132 of file StFastGlauberMcMaker.cxx.

StFastGlauberMcMaker::StFastGlauberMcMaker ( const TString  outputFileName,
const UInt_t  massNumberA,
const Double_t  radiusA,
const Double_t  skinDepthA,
const Double_t  beta2A,
const Double_t  beta4A,
const UInt_t  massNumberB,
const Double_t  radiusB,
const Double_t  skinDepthB,
const Double_t  beta2B,
const Double_t  beta4B,
const Double_t  inelasticCrossSection,
const Double_t  energy 
)

Default constructor.

Constructor for asymmetric collisions

Initialize asymmetric collisions

Definition at line 160 of file StFastGlauberMcMaker.cxx.

Member Function Documentation

void StFastGlauberMcMaker::DoGaussianCollision ( )

Hard-core collision (default)

Gaussian profile collision

Definition at line 1277 of file StFastGlauberMcMaker.cxx.

void StFastGlauberMcMaker::DoGaussianSmearing ( )

Default is OFF.

Gaussian smearing by width = 0.79/sqrt(3) from CPC180, 69, 2009

Turn off Hard-core smearing

Definition at line 1253 of file StFastGlauberMcMaker.cxx.

void StFastGlauberMcMaker::DoHardCoreCollision ( )

Default is OFF.

Collision profiles

Hard-core collision

Definition at line 1267 of file StFastGlauberMcMaker.cxx.

void StFastGlauberMcMaker::DoHardCoreSmearing ( )

Finish maker.

Hard-core smearing by sigmaNN

Turn off Gaussian smearing

Definition at line 1239 of file StFastGlauberMcMaker.cxx.

Int_t StFastGlauberMcMaker::Make ( )

Clear all data members

Impact parameter

  1. Generate nucleon positions (r,theta,phi)
  2. Smearing nucleon positions if switch is ON (either DoHardCoreSmearing() or DoGaussianSmearing())
  3. Distribute (r,theta,phi) with repulsion distance ds if ds != 0

Determine impact parameter for each nucleus

No repulsion, just store (r,theta,phi)

Store first nucleon, and increment total

Check all the nucleons stored whether there are overlap each other defined by mRepulsionDistance. If any nucleons overlap, then discard current nucleon and try again

Determine Number of collisions by looping over all pair of nucleons

Need at least one Ncoll

Determine Npart Calculate <x>, <y>, <x^2>, <y^2>, <xy>, ecc_{RP} and ecc_{PP}

Definition at line 850 of file StFastGlauberMcMaker.cxx.

References StGlauberUtilities::GetImpactParameter(), StNegativeBinomial::GetMultiplicity(), Nucleon::GetNcoll(), StCentralityMaker::GetNegativeBinomial(), StGlauberUtilities::GetPhi(), StGlauberUtilities::GetTheta(), StNegativeBinomial::GetTwoComponentMultiplicity(), Nucleon::GetXYZ(), Nucleon::IncrementNcoll(), Nucleon::IncrementNpart(), StGlauberTree::SetB(), and Nucleon::SetMultiplicity().

Referenced by Run().

void StFastGlauberMcMaker::Print ( const TString  option = "") const

Gaussion profile collision.

Print info.

Definition at line 1472 of file StFastGlauberMcMaker.cxx.

Referenced by Version().

void StFastGlauberMcMaker::SetRepulsionDistance ( const Double_t  repulsionDistance)

Default destructor.

Set repulsion of nucleons (default is 0fm)

Definition at line 197 of file StFastGlauberMcMaker.cxx.


The documentation for this class was generated from the following files: