gibuu is hosted by Hepforge, IPPP Durham
GiBUU

TABLE OF CONTENTS


/HeavyIonAnalysis [ Modules ]

[ Top ] [ Modules ]

NAME

module HeavyIonAnalysis

PURPOSE

Contains output routines for heavy ion collisions.


HeavyIonAnalysis/flag_outputReal [ Global module-variables ]

[ Top ] [ HeavyIonAnalysis ] [ Global module-variables ]

PURPOSE

If .true., then the output of the real particle vector will be written to the file 'DoHIA.dat'.

SOURCE

  logical, save :: flag_outputReal = .false.

HeavyIonAnalysis/flag_outputPert [ Global module-variables ]

[ Top ] [ HeavyIonAnalysis ] [ Global module-variables ]

PURPOSE

If .false., then the output of the perturbative particle vector will be written to the file 'DoHIA_pert.dat'.

SOURCE

  logical, save :: flag_outputPert = .false.

HeavyIonAnalysis/flag_outputDetailed [ Global module-variables ]

[ Top ] [ HeavyIonAnalysis ] [ Global module-variables ]

PURPOSE

Print out more detailed information at each time step from subroutine HeavyIon_evol:

  • rhorad_*.dat
  • rhoz_*.dat
  • rhozx_*.dat
  • Fields_*.dat
  • pauli_*.dat
  • dens_max.dat

SOURCE

  logical, save :: flag_outputDetailed = .false.

HeavyIonAnalysis/pionAnalysis [ Global module-variables ]

[ Top ] [ HeavyIonAnalysis ] [ Global module-variables ]

PURPOSE

This flag generates various pion spectra (p_T, m_T, y, etc). The analysis operates under the assumption of a fixed target, and expects the collision to be performed in the CMS system (cf. cmsFlag in namelist /heavyIon/). The analysis matches the one applied to the HADES data in Agakishiev et al., Eur.Phys.J. A40 (2009) 45-49.

SOURCE

  logical, save :: pionAnalysis = .false.

HeavyIonAnalysis/etaAnalysis [ Global module-variables ]

[ Top ] [ HeavyIonAnalysis ] [ Global module-variables ]

PURPOSE

This flag generates various eta spectra and eta-related analyses.

SOURCE

  logical, save :: etaAnalysis = .false.

HeavyIonAnalysis/rapBinningMode [ Global module-variables ]

[ Top ] [ HeavyIonAnalysis ] [ Global module-variables ]

PURPOSE

Select the variable the 'rapBinning' is given for:

SOURCE

  integer, save :: rapBinningMode = 1

HeavyIonAnalysis/rapBinning [ Global module-variables ]

[ Top ] [ HeavyIonAnalysis ] [ Global module-variables ]

PURPOSE

Rapidity binning for the pion and eta analysis (only used if pionAnalysis = .true. or etaAnalysis = .true. ). The numbers represent the binning borders in y (or y0, see rapBinningMode). For each of the bins, a separate pT and/or mT spectrum will be generated.

Only bins, where the upper bound is larger than the lower one are considered

SOURCE

  real, dimension(0:13), save :: rapBinning = (/ -0.75, -0.45, -0.15, 0.15, 0.45, 0.75, 1.05, 1.35, -99.9, -99.9, -99.9, -99.9, -99.9, -99.9 /)

NOTES

  • for the Hades AuAu analysis, you should set the bins to -0.65,-0.55,...0.75


HeavyIonAnalysis/KaonAnalysis [ Global module-variables ]

[ Top ] [ HeavyIonAnalysis ] [ Global module-variables ]

PURPOSE

This flag generates various Kaon spectra and Kaon-related analyses.

SOURCE

  logical, save :: KaonAnalysis = .false.

HeavyIonAnalysis/nPartAnalysis [ Global module-variables ]

[ Top ] [ HeavyIonAnalysis ] [ Global module-variables ]

PURPOSE

This flag generates output about impact parameter and N_part

SOURCE

  logical, save :: nPartAnalysis = .false.

HeavyIonAnalysis/DensityPlot [ Global module-variables ]

[ Top ] [ HeavyIonAnalysis ] [ Global module-variables ]

PURPOSE

This flag select printing the density for several time steps

SOURCE

  logical, save :: DensityPlot = .false.

HeavyIonAnalysis/NucleonMassPlot [ Global module-variables ]

[ Top ] [ HeavyIonAnalysis ] [ Global module-variables ]

PURPOSE

This flag select printing the (invariant) mass of the nucleons for several time steps

SOURCE

  logical, save :: NucleonMassPlot = .false.

HeavyIonAnalysis/do_Tmunu [ Global module-variables ]

[ Top ] [ HeavyIonAnalysis ] [ Global module-variables ]

SOURCE

  logical,save :: do_Tmunu=.false.

PURPOSE

Switch for Tmunu output.


HeavyIonAnalysis/do_Spectra [ Global module-variables ]

[ Top ] [ HeavyIonAnalysis ] [ Global module-variables ]

SOURCE

  logical,save :: do_Spectra=.false.

PURPOSE

Switch for general spectra output.


HeavyIonAnalysis/do_QRvector [ Global module-variables ]

[ Top ] [ HeavyIonAnalysis ] [ Global module-variables ]

SOURCE

  logical,save :: do_QRvector=.false.

PURPOSE

Switch for QRvector output.


HeavyIonAnalysis/do_Glauber [ Global module-variables ]

[ Top ] [ HeavyIonAnalysis ] [ Global module-variables ]

SOURCE

  logical,save :: do_Glauber=.false.

PURPOSE

Switch for Glauber-MC analysis at timestep 0


HeavyIonAnalysis/BarMes_Tmunu [ Global module-variables ]

[ Top ] [ HeavyIonAnalysis ] [ Global module-variables ]

SOURCE

  logical,save :: BarMes_Tmunu=.false.

PURPOSE

If .true., then Tmunu is calculated for baryons and mesons separately.


HeavyIonAnalysis/rotateZ_Tmunu [ Global module-variables ]

[ Top ] [ HeavyIonAnalysis ] [ Global module-variables ]

SOURCE

  logical,save :: rotateZ_Tmunu=.false.

PURPOSE

select, whether the particles are first rotated to be aligned to the z-axis


HeavyIonAnalysis/correctPot_Tmunu [ Global module-variables ]

[ Top ] [ HeavyIonAnalysis ] [ Global module-variables ]

SOURCE

  integer,save :: correctPot_Tmunu = 0

PURPOSE

select, whether the energy is corrected for the potential or not:

  • 0: no correction
  • 1: full potential added to p0
  • 2: only U_b/2+U_r added to p0
  • 3: U_b/2+U_r added to p0 in the LRF


HeavyIonAnalysis/selectTmunuFormat [ Global module-variables ]

[ Top ] [ HeavyIonAnalysis ] [ Global module-variables ]

SOURCE

  integer,save :: selectTmunuFormat = 2

PURPOSE

select output format of Tmunu (binary encoded):

  • 1: ASCII
  • 2: Binary
  • 3: ASCII + Binary


HeavyIonAnalysis/useSet [ Global module-variables ]

[ Top ] [ HeavyIonAnalysis ] [ Global module-variables ]

SOURCE

  logical, dimension(nSet), save :: useSet = (/ .false., .true., .false., .true., .true. /)

PURPOSE

Array to indicate, which particle set will be used for output


HeavyIonAnalysis/init [ Subroutines ]

[ Top ] [ HeavyIonAnalysis ] [ Subroutines ]

NAME

subroutine init

PURPOSE

Reads in the namelist "HICanalysis_Input"

INPUTS

  • (none)

OUTPUT

  • Initializes global module variables


HeavyIonAnalysis/HICanalysis_Input [ Namelists ]

[ Top ] [ HeavyIonAnalysis ] [ Namelists ]

NAME

NAMELIST /HICanalysis_Input/

PURPOSE

Includes the switches:


HeavyIonAnalysis/DoHeavyIonAnalysis [ Subroutines ]

[ Top ] [ HeavyIonAnalysis ] [ Subroutines ]

NAME

subroutine DoHeavyIonAnalysis(realParts,pertParts,finalFlag)

PURPOSE

Does some analysis at the end of the run.

INPUTS

  • type(particle), dimension(:,:), :: realParts -- real particle vector
  • type(particle), dimension(:,:), :: pertParts -- perturb. particle vector
  • logical, intent(in) :: finalFlag -- if .true., it is the last run for one specific energy, therefore final output must be done.

RESULT

some files written to disk


HeavyIonAnalysis/DoHIA.dat [ Output files ]

[ Top ] [ HeavyIonAnalysis ] [ Output files ]

NAME

file DoHIA.dat

PURPOSE

Contains the full dump of the real particle vector at the end of the simulation, including particle ID, charge, position, momentum, etc.


HeavyIonAnalysis/DoHIA_pert.dat [ Output files ]

[ Top ] [ HeavyIonAnalysis ] [ Output files ]

NAME

file DoHIA_pert.dat

PURPOSE

Contains the full dump of the perturbative particle vector at the end of the simulation, including particle ID, charge, position, momentum, etc.


HeavyIonAnalysis/DoHeavyIonAnalysisTime [ Subroutines ]

[ Top ] [ HeavyIonAnalysis ] [ Subroutines ]

NAME

subroutine DoHeavyIonAnalysisTime(realParts, time)

PURPOSE

Do some analysis for every time step

INPUTS


DoHeavyIonAnalysisTime/writeParticleVectorHI [ Subroutines ]

[ Top ] [ DoHeavyIonAnalysisTime ] [ Subroutines ]

NAME

subroutine writeParticleVectorHI()

PURPOSE

write out the particle vectors in the format used for HI analysis


HeavyIonAnalysis/DoHIATime___.dat [ Output files ]

[ Top ] [ HeavyIonAnalysis ] [ Output files ]

NAME

file DoHIATime___.dat

PURPOSE

Contains the full dump of the real particle vector at a certain time step. The time is given in the file name and in the first line of the file. The columns have the following meaning:

  • 1 = particle ID
  • 2 = charge
  • 3 = vac. mass in GeV
  • 4 = (eff. mass)**2 in GeV^2
  • 5 = isFree (particle is bound or free?)
  • 6-8 = position (x,y,z) in fm
  • 9-11 = momentum (px,py,pz) in GeV
  • 12 = ensemble no.
  • 13 = run no.
  • 14 = impact parameter in fm


DoHeavyIonAnalysisTime/RapiditySpectra [ Subroutines ]

[ Top ] [ DoHeavyIonAnalysisTime ] [ Subroutines ]

NAME

subroutine RapiditySpectra()

PURPOSE

generate and write out some rapidity spectra


DoHeavyIonAnalysisTime/InvariantMassSpectra [ Subroutines ]

[ Top ] [ DoHeavyIonAnalysisTime ] [ Subroutines ]

NAME

subroutine InvariantMassSpectra()

PURPOSE

generate and write out invariant mass spectra of some particles


HeavyIonAnalysis/HeavyIon_evol [ Subroutines ]

[ Top ] [ HeavyIonAnalysis ] [ Subroutines ]

NAME

subroutine HeavyIon_evol(realParts, time, timestep)

PURPOSE

time evolution of some global observables

INPUTS

  • type(particle), dimension(:,:) :: realParts --- real particle vector
  • real :: time --- actual time
  • integer :: timestep --- number of time step


HeavyIonAnalysis/IsFree [ Functions ]

[ Top ] [ HeavyIonAnalysis ] [ Functions ]

NAME

logical function IsFree(realParts,i,j,teilchen)

PURPOSE

Determine whether j-th particle of i-th parallel ensemble is free or not


HeavyIonAnalysis/countParts [ Subroutines ]

[ Top ] [ HeavyIonAnalysis ] [ Subroutines ]

NAME

subroutine countParts(Parts,time,prefix)

PURPOSE

This counts and prints the number of particles at a specific time step or at the end (final).

NOTES

This routine does not work with multiple events per energy, but only prints the results of the latest run. So you may average (at least for the final output) over all lines of the file.


HeavyIonAnalysis/Mult_SetX.dat [ Output files ]

[ Top ] [ HeavyIonAnalysis ] [ Output files ]

NAME

file Mult_SetX.dat, X = 1 - 5

PURPOSE

This file reports the multiplicity or the inclusive cross section (depending of initialization type) for different particle sets as function of time.

The value X is the particle set (cf. histMP.f90):

  • 1: pi, K, N
  • 2: pi, rho, (div. mes.), K, N, Delta
  • 3: pi, eta, omega, phi, J/psi, K, D
  • 4: "all mesons"
  • 5: "all stable hadrons": pi,K,N,Lambda,Sigma,Xi,Omega

Entries:

  • Column #1: dummy
  • Column #2-...: Final state particles.
  • Last Column: sum of all particles

NOTES

The selection, which sets are printed is done by setting the corresponding flag in HeavyIonAnalysis/useSet

See also Final_Mult_SetX.dat


HeavyIonAnalysis/Final_Mult_SetX.dat [ Output files ]

[ Top ] [ HeavyIonAnalysis ] [ Output files ]

NAME

file Final_Mult_SetX.dat, X = 1 - 5

PURPOSE

This file reports the multiplicity or the inclusive cross section (depending of initialization type) for different particle sets at the end of the run.

The value X is the particle set (cf. histMP.f90):

  • 1: pi, K, N
  • 2: pi, rho, (div. mes.), K, N, Delta
  • 3: pi, eta, omega, phi, J/psi, K, D
  • 4: "all mesons"
  • 5: "all stable hadrons": pi,K,N,Lambda,Sigma,Xi,Omega

Entries:

  • Column #1: time step (fm)
  • Column #2-...: Final state particles.
  • Last Column: sum of all particles

NOTES

The selection, which sets are printed is done by setting the corresponding flag in HeavyIonAnalysis/useSet

See also Mult_SetX.dat


HeavyIonAnalysis/doTmunu [ Subroutines ]

[ Top ] [ HeavyIonAnalysis ] [ Subroutines ]

NAME

subroutine doTmunu(realParts,timestep)

PURPOSE

do the Tmunu analysis


HeavyIonAnalysis/doQRvector [ Subroutines ]

[ Top ] [ HeavyIonAnalysis ] [ Subroutines ]

NAME

subroutine doQRvector

PURPOSE

calculate the Q- and R-vectors


HeavyIonAnalysis/getRapBinning [ Subroutines ]

[ Top ] [ HeavyIonAnalysis ] [ Subroutines ]

NAME

subroutine getRapBinning(nBins, Bins)

PURPOSE

return the array RapBinning and its size


HeavyIonAnalysis/calcGlauber [ Subroutines ]

[ Top ] [ HeavyIonAnalysis ] [ Subroutines ]

NAME

subroutine calcGlauber(realParts)

PURPOSE

This routine uses the initialized particles to do a Glauber-MC calculation of nPart.

This routine should be called directly after the initialization in timestep 0

NOTES

We are doing a very bad trick in abusing the flag %anti of the particles in order to indicate, whether the particle is wounded. After the calculation, all flags are reset to .false.