gibuu is hosted by Hepforge, IPPP Durham
GiBUU

TABLE OF CONTENTS


/winkelVerteilung [ Modules ]

[ Top ] [ Modules ]

NAME

module winkelVerteilung

PURPOSE

Incorporates the functions used for angular distributions.


winkelVerteilung/deltaPWave [ Global module-variables ]

[ Top ] [ winkelVerteilung ] [ Global module-variables ]

SOURCE

  logical, save :: deltaPWave=.true.

PURPOSE

Switch for P-Wave decay of delta in pion nucleon Only relevant for deltas which are produced in pion-nucleon collisions. -> see also master_2body Values:

  • .false.= isotropic in CM-Frame
  • .true. = 1+3*cos(theta)**2 in CM Frame (theta is angle of producing pion to outgoing pion)


winkelVerteilung/rho_pipi_nonIsotropic [ Global module-variables ]

[ Top ] [ winkelVerteilung ] [ Global module-variables ]

SOURCE

  logical, save :: rho_pipi_nonIsotropic=.true.

PURPOSE

Switch for non-isotropic rho -> pi pi decay:

  • .false.= isotropic in CM-Frame
  • .true. = non-isotropic


winkelVerteilung/pionNucleon_backward [ Global module-variables ]

[ Top ] [ winkelVerteilung ] [ Global module-variables ]

SOURCE

  logical, save :: pionNucleon_backward=.true.

PURPOSE

Switch for backward peaked pion nucleon cross section:

  • .true.= use backward peaked distribution
  • .false.= isotropic


winkelVerteilung/pionNucleon_backward_exponent [ Global module-variables ]

[ Top ] [ winkelVerteilung ] [ Global module-variables ]

SOURCE

  real, save :: pionNucleon_backward_exponent=26.5

PURPOSE

Exponent for backward peaked pion nucleon cross section. Distribution=(coeff-cos(theta))**exponent*(pole-sqrt(s)/pole) Only used if pionNucleon_backward=.true. .


winkelVerteilung/pionNucleon_backward_coeff [ Global module-variables ]

[ Top ] [ winkelVerteilung ] [ Global module-variables ]

SOURCE

  real, save :: pionNucleon_backward_coeff=1.9

PURPOSE

Exponent for backward peaked pion nucleon cross section. Distribution=(coeff-cos(theta))**exponent*(pole-sqrt(s)/pole) Only used if pionNucleon_backward=.true. .


winkelVerteilung/NNisotropic [ Global module-variables ]

[ Top ] [ winkelVerteilung ] [ Global module-variables ]

SOURCE

  logical, save :: NNisotropic=.false.

PURPOSE

if .true.: set isotropic nucleon-nucleon elastic cross section


winkelVerteilung/iParam_gammaNVN [ Global module-variables ]

[ Top ] [ winkelVerteilung ] [ Global module-variables ]

SOURCE

  integer, save :: iParam_gammaNVN = 3

PURPOSE

for gamma N -> V N events, this parameter is given to the routine vecmesa and selects there, how dsigma/dt is calculated. Only if iParam_gammaNVN >= 0 the default value of that routine is overwritten.

Possible values:

  • 0: 'old' parametrisation for gammaN->VN (cf. Effenberger PhD): dsigma/dt ~ exp(Bt). Slope paremeter B according ABBHHM collab, PR 175, 1669 (1968).
  • 1: Pythia parametrisation: Slope parameter B=2*b_p+2*b_V+4*s**eps-4.2
  • 2: 'Donnachie, Landshoff' Select t according dsig/dt as given by VecMesWinkel/dsigdt, not by a given slope parameter
  • 3: as 1, but for rho and W<~6GeV slope parameter adjusted according CLAS experimental data [Morrow et al, EPJ A39, 5 (2009)]
  • 4: Muehlich PhD, Appendix E
  • 5: Rho0 Toy Init
  • 6: Rho0 Toy Init: Fit to PYTHIA-VMD
  • 7: Flat (not exp.)

cf. VecMesWinkel/vecmesa for a detailed description.


winkelVerteilung/NN_NR_noniso [ Global module-variables ]

[ Top ] [ winkelVerteilung ] [ Global module-variables ]

SOURCE

  logical, save :: NN_NR_noniso = .false.

PURPOSE

If .true., use non-isotropic angular distr. for NN -> NR, according to dsigma/dt = b/t**a.


winkelVerteilung/debug [ Global module-variables ]

[ Top ] [ winkelVerteilung ] [ Global module-variables ]

SOURCE

  logical, parameter:: debug=.false.

PURPOSE

Switch for debug information


winkelVerteilung/readInput [ Subroutines ]

[ Top ] [ winkelVerteilung ] [ Subroutines ]

NAME

subroutine readInput

PURPOSE

Reads input in jobcard from namelist "angular_distribution"


winkelVerteilung/angular_distribution [ Namelists ]

[ Top ] [ winkelVerteilung ] [ Namelists ]

NAME

NAMELIST angular_distribution

PURPOSE

Includes the switches:


winkelVerteilung/winkel [ Functions ]

[ Top ] [ winkelVerteilung ] [ Functions ]

NAME

function winkel (teilchenIn, teilchenOut, srts, betaToCM, mediumAtCollision, successflag) result (pscatt)

PURPOSE

This subroutine determines the scattering angle for two particles in the final state. For 2->2 and 1->2 processes.

INPUTS

  • type(particle) :: teilchenIn(1:2) -- Initial state particles, If teilchenIn(2)%ID=0 then it's just a decay of teilchenIn(1)
  • type(particle) :: teilchenOut(1:2) -- Final state particles (only their Id's,antiflags,charges and masses are needed here)
  • real :: srts -- SQRT(s) in vacuum
  • real, dimension(1:3) :: betaToCM -- Center of mass velocity in calc. frame
  • type(medium) :: MediumAtCollision -- medium information

OUTPUT

  • real, dimension(1:3):: pscatt -- unit vector in the direction of the outgoing particle teilchenOut(1) in the CM frame
  • logical :: successflag -- .true. is routine was successful


winkelVerteilung/pscatt_Delta_PWave [ Functions ]

[ Top ] [ winkelVerteilung ] [ Functions ]

NAME

function pscatt_Delta_PWave (teilchen, srts) result (pScatt)

PURPOSE

This routine determines the outgoing unit vector in the cm-frame for a meson out of p-wave Delta resonance decay. The angle should be distributed according to f(theta)=(3*cos^2(theta)+1)*(pionNucleon_Backward_coeff-cost)**(pionNucleon_Backward_exponent*(pole-srts)/pole)

INPUTS

  • real :: srts
  • type(particle) :: teilchen --- The Delta Particle

OUTPUT

  • real, dimension(1:3) :: pScatt --- Scattering vector in cm-frame


winkelVerteilung/pscatt_VN_VX [ Functions ]

[ Top ] [ winkelVerteilung ] [ Functions ]

NAME

function pscatt_VN_VX (teilchenIn, id3, id4, mass3, mass4, srts, mediumAtCollision, successflag) result (pscatt)

PURPOSE

This routine determines a random unit vector for an outgoing vector meson in a V N-> V X colllision. (X stands for N or Delta)

INPUTS

  • type(particle) :: teilchenIn(1:2) --- incoming particles
  • real, :: srts --- sqrt(s)
  • integer :: id3, id4 --- ID of outgoing particles
  • real :: mass3, mass4 --- mass of outgoing particle

OUTPUT

  • real, dimension(1:3) :: pscatt --- unit vector in outgoing baryon direction in CM frame

NOTES

The given vector is the vector of particle given by id3, mass3. This is normally a baryon (we are normally treating B+M -> B+M collisions).


winkelVerteilung/pscatt_gammaN_VN [ Functions ]

[ Top ] [ winkelVerteilung ] [ Functions ]

NAME

function pscatt_gammaN_VN (teilchenIn, id3, id4, mass3, mass4, srts, mediumAtCollision) result (pscatt)

PURPOSE

This routine determines a random unit vector for an outgoing vector meson in a gamma N -> V N colllision. (V is a vector meson: rho, omega, phi, J/psi)

INPUTS

  • type(particle) :: teilchenIn(1:2) --- incoming photon and nucleon
  • real, :: srts --- sqrt(s)
  • integer :: id3, id4 --- ID of outgoing particles
  • real :: mass3, mass4 --- mass of outgoing particle

OUTPUT

  • real, dimension(1:3) :: pscatt --- unit vector in outgoing baryon direction in CM frame

NOTES

The given vector is the vector of particle given by id3, mass3.


winkelVerteilung/pscatt_piN_piN_backward [ Functions ]

[ Top ] [ winkelVerteilung ] [ Functions ]

NAME

function pscatt_piN_piN_backward (teilchenIn, srts) result (pscatt)

PURPOSE

Determines a random unit vector for an outgoing pion in a piN->piN colllision.

Backward peaked pion nucleon cross section (e.g. nucl-ex 0403040), valid for sqrt(s)<1.35 GeV

INPUTS

  • type(particle) :: teilchenIn(1:2) --- incoming pion and nucleon
  • real :: srts --- sqrt(s)

OUTPUT

  • real, dimension(1:3) :: pscatt --- unit vector in outgoing pion

direction in CM frame


winkelVerteilung/pscatt_BarBar [ Functions ]

[ Top ] [ winkelVerteilung ] [ Functions ]

NAME

function pscatt_BarBar (teilchenIn, teilchenOut, srts, betaToCM, successflag) result(pscatt)

PURPOSE

This subroutine determines the scattering angle for baryon-baryon scattering processes. Especially for NN<-> NN, NN<->NDelta, Nbar N -> LambdaBar Lambda ...

INPUTS

  • type(particle) :: teilchenIn(1:2) --- Initial state particles
  • type(particle) :: teilchenOut(1:2) --- Final state particles (only their Id's,antiflags,charges and masses are needed here)
  • real :: srts --- SQRT(s) in vacuum
  • real, dimension(1:3) :: betaToCM --- Center of mass velocity in calc. frame

OUTPUT

  • real, dimension(1:3) :: pscatt --- unit vector pscatt in the direction of the outgoing teilchen3 in the CM frame


winkelVerteilung/dsigdt_NRes [ Functions ]

[ Top ] [ winkelVerteilung ] [ Functions ]

NAME

function dsigdt_NRes (srts, mRes) result (cost)

PURPOSE

This routine implements a non-isotropic angular distribution for resonance production (N N -> N R), according to dsigma/dt = b/t**a.

Here b is a normalization constant, and the parameter a is taken from a fit to HADES data by A. Dybczak (private communication).

Reference: G. Agakishiev et al., Eur.Phys.J. A50 (2014) 82,

            http://inspirehep.net/record/1285514

INPUTS

  • real, intent(in) :: srts --- energy in CM frame, sqrt(s)
  • real, intent(in) :: mRes --- mass of outgoing resonance

OUTPUT

  • real :: cost --- cos(theta_cm), cosine of polar angle in CM frame


winkelVerteilung/pscatt_Rho_pipi_Distribution [ Functions ]

[ Top ] [ winkelVerteilung ] [ Functions ]

NAME

function pscatt_Rho_pipi_Distribution (Part) result (pscatt)

PURPOSE

This routine determines the outgoing unit vector in the cm-frame for the pi pi final-state out of decay of a diffractive rho0.

The angle should be distributed according to:

   sin(theta)**2+2*eps*R*cos(theta)**2

in the rest frame of ther rho0, where the z-axis is defined by the negative recoil momentum of the nucleon (helicity frame).

INPUTS

  • type(particle) :: Part --- incoming rho meson

OUTPUT

  • real, dimension(1:3) :: pscatt --- Scattering vector in cm-frame

NOTES

If initialized via HiLepton:

  • the momentum of Part (=rho0) is given in the system, where the photon was going in z-direction and the target was moving according fermi motion.
  • betaToCM = Part%momentum/Part%momentum(0)