TABLE OF CONTENTS
- 1. /particleProperties
- 1.1. particleProperties/hadronProperties
- 1.2. particleProperties/hadron
- 1.3. particleProperties/propagationSwitch
- 1.4. particleProperties/usageForXsectionSwitch
- 1.5. particleProperties/rho_dilep
- 1.6. particleProperties/FileNameDecayChannels
- 1.7. particleProperties/PartName
- 1.8. particleProperties/TeXName
- 1.9. particleProperties/InitParticleProperties
- 1.9.1. InitParticleProperties/setParameters
- 1.9.2. InitParticleProperties/decideOnPropagationUsage
- 1.9.3. InitParticleProperties/setThresholds
- 1.9.4. InitParticleProperties/setDecays
- 1.9.5. InitParticleProperties/updateMinmassesAndThresholds
- 1.9.6. InitParticleProperties/initBaryon
- 1.9.7. InitParticleProperties/initMeson
- 1.10. particleProperties/PrintBaryonProperties
- 1.11. particleProperties/GiBUU_database_Baryons.tex
- 1.12. particleProperties/PrintMesonProperties
- 1.13. particleProperties/GiBUU_database_Mesons.tex
- 1.14. particleProperties/init
- 1.15. particleProperties/initDatabase
- 1.16. particleProperties/ReadInitModify
- 1.16.1. ReadInitModify/Mass
- 1.16.2. ReadInitModify/Width
- 1.16.3. ReadInitModify/stabilityFlag
- 1.17. particleProperties/ModifyParticles
- 1.18. particleProperties/isStrange
- 1.19. particleProperties/isCharmed
- 1.20. particleProperties/isNonExotic
- 1.21. particleProperties/validCharge
- 1.22. particleProperties/validCharge_ID
/particleProperties [ Modules ]
NAME
module particleProperties
PURPOSE
Defines database structure for baryons and mesons.
particleProperties/hadronProperties [ Types ]
[ Top ] [ particleProperties ] [ Types ]
NAME
type hadronProperties
SOURCE
type, public :: hadronProperties integer, dimension(nDecays) :: decaysID = 0 ! the channel id real, dimension(nDecays) :: decays = 0. ! the branching ratio character(15) :: name = 'Invalid' character(15) :: nameTeX = 'Invalid' real :: mass = 0. real :: width = 0. real :: spin = 0. ! J integer :: AngularMomentum = 0 ! Angular Momentum of Nucleon-Pion or Lambda-Kaon final state. integer :: isoSpinTimes2 = 0 ! I integer :: strangeness = 0 integer :: charm = 0 integer :: rating = 0 logical :: propagated = .false. logical :: usedForXsections = .false. integer :: stability = 0 real :: minmass = 0. end type hadronProperties
NOTES
Width of different decay channels for 2 Body Decays in the vacuum at the pole mass: The width are supposed to be the same within an isospin multiplet.
The additional flag 'stability' encodes on a bitwise level, how the particle may decay (cf. also master_1Body):
- 1: particle may decay during run, if gammaMed > gammaCutOff
- 2: particle may decay at the end of the run, if gammaMed > 1e-10
- 4: particle may decay at the end via Jetset, if there the parameters allow for a decay.
The default values are 0 or 3. You can change this in your jobcard via the flag StabilityFlag in the namelist "InitStability".
The decay channel IDs are positive for 2-body decays and negative for 3-body decays. Whether it is a meson decay or a baryon decay has to be decided by the property of the parent particle.
particleProperties/hadron [ Global module-variables ]
[ Top ] [ particleProperties ] [ Global module-variables ]
SOURCE
type(hadronProperties), dimension(1:pion+nMes-1), save, public :: hadron
PURPOSE
Database of hadron properties.
USAGE
- To get e.g. the mass of the nucleon type "hadron(nucleon)%mass". The ID's are chosen according to IdTable.
NOTES
- Since the baryons cover the range 1:61 and the mesons 101:122, there is a 'hole' for 62:100.
particleProperties/propagationSwitch [ Global module-variables ]
[ Top ] [ particleProperties ] [ Global module-variables ]
SOURCE
integer, save :: propagationSwitch = 3
PURPOSE
- 0=propagate every resonance with more than 1 stars in its rating (irrespar=0 in old code)
- 1=propagate just the delta (irrespar=2 in old code)
- 2=propagate no resonance (irrespar=3 in old code)
- 3=propagate everybody (default)
particleProperties/usageForXsectionSwitch [ Global module-variables ]
[ Top ] [ particleProperties ] [ Global module-variables ]
SOURCE
integer, save :: usageForXsectionSwitch = 2
PURPOSE
- 0=use every resonance with more than 1 stars in its rating for Xsections
- 1=use really every resonance for Xsections
- 2=All resonances besides the 1* star I=1/2 resonances (default)
particleProperties/rho_dilep [ Global module-variables ]
[ Top ] [ particleProperties ] [ Global module-variables ]
SOURCE
logical, save :: rho_dilep = .false.
PURPOSE
If .false. (default), the rho meson width will be exclusively given by the 2pi decay and its minmass will be 2m_pi. If .true., the dilepton width will be included in the width and spectral function of the rho, and the minmass will be 2m_e. This is important for dilepton spectra, in order to get contributions from the rho below the 2pi threshold.
particleProperties/FileNameDecayChannels [ Global module-variables ]
[ Top ] [ particleProperties ] [ Global module-variables ]
PURPOSE
The absolute filename of the file containing decay channel infos.
if not set, defaults to '[path_To_Input]/DecayChannels.dat'
SOURCE
character(300), save :: FileNameDecayChannels = ''
particleProperties/PartName [ Functions ]
[ Top ] [ particleProperties ] [ Functions ]
NAME
function PartName(ID,IQ,isAnti) function PartName(ID) function PartName(Part)
PURPOSE
return a String containing name, charge etc. of the particle
INPUTS
- integer, intent(in) :: ID,IQ -- ID and charge of particle
- logical, intent(in) :: isAnti -- true if antiparticle, false if particle
or :
USAGE
- character*() = PartName(ID,IQ,isAnti)
- character*() = PartName(Part)
NOTES
if only ID is given, the retruned name only contains the particle name, i.e. it is in a short version
particleProperties/TeXName [ Functions ]
[ Top ] [ particleProperties ] [ Functions ]
NAME
function TeXName(ID,IQ,isAnti) function TeXName(ID) function TeXName(Part)
PURPOSE
return a String containing name, charge etc. of the particle. Fomramtting according TeX rules
INPUTS
- integer, intent(in) :: ID,IQ -- ID and charge of particle
- logical, intent(in) :: isAnti -- true if antiparticle, false if particle
or :
NOTES
if only ID is given, the retruned name only contains the particle name, i.e. it is in a short version
particleProperties/InitParticleProperties [ Subroutines ]
[ Top ] [ particleProperties ] [ Subroutines ]
NAME
subroutine InitParticleProperties
PURPOSE
Define the variables baryon and meson with the Parameter Sets out of Manley and PDG
InitParticleProperties/setParameters [ Subroutines ]
[ Top ] [ InitParticleProperties ] [ Subroutines ]
NAME
subroutine setParameters
PURPOSE
Define the variables baryon and meson. Here all the parameters besides the decay channels are set.
InitParticleProperties/decideOnPropagationUsage [ Subroutines ]
[ Top ] [ InitParticleProperties ] [ Subroutines ]
NAME
subroutine decideOnPropagationUsage
PURPOSE
Decides which baryons shall be explicitly propagated and used for the cross sections.
InitParticleProperties/setThresholds [ Subroutines ]
[ Top ] [ InitParticleProperties ] [ Subroutines ]
NAME
subroutine setThresholds
PURPOSE
Set the thresholds of the decay channels, i.e. the lightest mass at which a resonance can decay into this channel (= sum of the daughter masses).
InitParticleProperties/setDecays [ Subroutines ]
[ Top ] [ InitParticleProperties ] [ Subroutines ]
NAME
subroutine setDecays
PURPOSE
The decay ratios out of Manley & PDG are initialized. The numbering of the decay channels is according to the module decayChannels.
Here only the file "buuinput/DecayChannels.dat" is read in (or, if given explicitely via FileNameDecayChannels, its variant)
InitParticleProperties/updateMinmassesAndThresholds [ Subroutines ]
[ Top ] [ InitParticleProperties ] [ Subroutines ]
NAME
subroutine updateMinmassesAndThresholds
PURPOSE
This routine updates the minmasses of all particles according to their decay channels (important e.g. when using rho_dilep). Then it updates the decay thresholds according to the updated minmasses.
InitParticleProperties/initBaryon [ Functions ]
[ Top ] [ InitParticleProperties ] [ Functions ]
NAME
type(baryonProperties) function initBaryon(name,nameTeX,mass,width,spin,rating,isospinTimes2,strangeness,charm,angMom)
PURPOSE
Constructor routine to simplify the initialization of a baryon. Sets also the flag %stability to a default value.
InitParticleProperties/initMeson [ Functions ]
[ Top ] [ InitParticleProperties ] [ Functions ]
NAME
type(mesonProperties) function initMeson(name, nameTeX, mass, width, spin, isospinTimes2, strangeness, charm, minmass)
PURPOSE
Constructor routine to simplify the initialization of a meson. Sets also the flag %stability to a default value.
particleProperties/PrintBaryonProperties [ Subroutines ]
[ Top ] [ particleProperties ] [ Subroutines ]
NAME
subroutine PrintBaryonProperties
PURPOSE
Prints all baryon properties and decay channels as latex tables.
OUTPUT
written to "GiBUU_database_Baryons.tex"
particleProperties/GiBUU_database_Baryons.tex [ Output files ]
[ Top ] [ particleProperties ] [ Output files ]
NAME
GiBUU_database_Baryons.tex
PURPOSE
Lists the properties of the implemented baryons.
particleProperties/PrintMesonProperties [ Subroutines ]
[ Top ] [ particleProperties ] [ Subroutines ]
NAME
subroutine PrintMesonProperties
PURPOSE
Prints all meson properties and decay channels as latex tables.
OUTPUT
written to "GiBUU_database_Mesons.tex"
particleProperties/GiBUU_database_Mesons.tex [ Output files ]
[ Top ] [ particleProperties ] [ Output files ]
NAME
GiBUU_database_Mesons.tex
PURPOSE
Lists the properties of the implemented mesons in TEX format.
particleProperties/init [ Subroutines ]
[ Top ] [ particleProperties ] [ Subroutines ]
NAME
subroutine init
PURPOSE
Read out job card to initialize module parameters.
particleProperties/initDatabase [ Namelists ]
[ Top ] [ particleProperties ] [ Namelists ]
NAME
NAMELIST initDatabase
PURPOSE
Includes the switches:
particleProperties/ReadInitModify [ Subroutines ]
[ Top ] [ particleProperties ] [ Subroutines ]
NAME
subroutine ReadInitModify
PURPOSE
Read in namelist "ModifyParticles" to initialize module parameters.
ReadInitModify/Mass [ Global module-variables ]
[ Top ] [ ReadInitModify ] [ Global module-variables ]
SOURCE
real, dimension(1:pion+nMes-1) :: Mass = -1.0
PURPOSE
Input-Array for modifications on the particle mass
NOTES
This array is intended to "input" values for the mass of the particles, which are different from the default. Therefore only entries, which are >-1 after reading the file are stored in the internal database.
ReadInitModify/Width [ Global module-variables ]
[ Top ] [ ReadInitModify ] [ Global module-variables ]
SOURCE
real, dimension(1:pion+nMes-1) :: Width = -1.0
PURPOSE
Input-Array for modifications on the particle width
NOTES
This array is intended to "input" values for the width of the particles, which are different from the default. Therefore only entries, which are >-1 after reading the file are stored in the internal database.
ReadInitModify/stabilityFlag [ Global module-variables ]
[ Top ] [ ReadInitModify ] [ Global module-variables ]
SOURCE
integer, dimension(1:pion+nMes-1) :: stabilityFlag = -1
PURPOSE
Input-Array for modifications on the particle stability
NOTES
This array is intended to "input" values for the stability of the particles, which are different from the default. Therefore only entries, which are >-1 after reading the file are stored in the internal database.
The index of the array is the particle ID The value encodes on a bitwise level, how the particle may decay (cf. also master_1Body):
- 1: particle may decay during run, if gammaMed > gammaCutOff
- 2: particle may decay at the end of the run, if gammaMed > 1e-10
- 4: particle may decay at the end via Jetset, if there the parameters allow for a decay.
The default values are 0 or 3.
particleProperties/ModifyParticles [ Namelists ]
[ Top ] [ particleProperties ] [ Namelists ]
NAME
NAMELIST ModifyParticles
PURPOSE
Includes the switches:
particleProperties/isStrange [ Functions ]
[ Top ] [ particleProperties ] [ Functions ]
NAME
logical function isStrange(ID)
INPUTS
- integer :: ID
RESULT
particleProperties/isCharmed [ Functions ]
[ Top ] [ particleProperties ] [ Functions ]
NAME
logical function isCharmed(ID)
INPUTS
- integer :: ID
RESULT
particleProperties/isNonExotic [ Functions ]
[ Top ] [ particleProperties ] [ Functions ]
NAME
logical function isNonExotic(ID)
INPUTS
- integer :: ID
RESULT
particleProperties/validCharge [ Functions ]
[ Top ] [ particleProperties ] [ Functions ]
NAME
logical function validCharge(teilchen)
PURPOSE
...
NOTES
This routine returns .true. if the charge is valid for the particle, and .false if not. This is done by checking the z-component of its isospin.
Q=I_Z+(B+S+C+B+T)/2. => I_Z=Q-(B+S+C+B+T)/2. => I_Z=Q-(B+S+C)/2. if no bottom and top quarks are considered
INPUTS
type(particle), intent(in) :: teilchen !Regarded particle
particleProperties/validCharge_ID [ Functions ]
[ Top ] [ particleProperties ] [ Functions ]
NAME
logical function validCharge_ID(ID,Q)
PURPOSE
...
NOTES
This routine returns .true. if the charge is valid for the particle, and .false if not. This is done by checking the z-component of its isospin.
Q=I_Z+(B+S+C+B+T)/2. => I_Z=Q-(B+S+C+B+T)/2. => I_Z=Q-(B+S+C)/2. if no bottom and top quarks are considered
NOTES
We assume that Q is the charge of the particle, not the antiparticle.
INPUTS