gibuu is hosted by Hepforge, IPPP Durham
GiBUU

TABLE OF CONTENTS


/potentialMain [ Modules ]

[ Top ] [ Modules ]

NAME

module potentialMain

PURPOSE

Does administration for the hadronic potentials in the code.


potentialMain/massDetermination [ Subroutines ]

[ Top ] [ potentialMain ] [ Subroutines ]

NAME

subroutine massDetermination(particleID,momentumLRF,med,baremass,verbose,success,pos)

subroutine massDetermination(teilchen,betaToCF,verbose,success)

PURPOSE

This subroutine determines the bare mass of a particle with a given 4-momentum considering a momentum-dependent scalar potential that is defined in the local rest frame.

NOTES

We keep p(0:3) constant! To solve p_0=sqrt(p**2+m**2)+V_LRF_0 (p(1:3)) in the LRF frame => solution for m!

Attention: Does not respect Coulomb potential !!!

INPUTS

  • integer :: ID -- ID of particle to consider
  • real, dimension(0:3) :: momentumLRF -- momentum of particle in LRF
  • type(medium) :: med -- medium information
  • logical, OPTIONAL :: verbose -- flag to print warnings (Default: .true.)

or:

  • type(particle) :: teilchen -- Particle whose energy should be calculated.
  • real,dimension(3), OPTIONAL :: betaToCF -- Velocity of "Calc Frame" in the frame where the particle's momentum is defined
  • logical, OPTIONAL :: verbose -- flag to print warnings (Default: .true.)

OUTPUT

  • real :: baremass
  • logical, OPTIONAL :: success

or:

  • type(particle) :: teilchen -- Particle whose energy should be calculated.
  • logical, OPTIONAL :: success


potentialMain/potential_LRF [ Functions ]

[ Top ] [ potentialMain ] [ Functions ]

NAME

real function potential_LRF(teilchen, addCoulomb)

real function potential_LRF(ID,IQ,mom,pos, addCoulomb)

real function potential_LRF(teilchen,density, addCoulomb)

real function potential_LRF(teilchen,rhoB, addCoulomb)

real function potential_LRF(teilchen,med, addCoulomb)

PURPOSE

Evaluates the hadronic potential of particles in the local rest frame (LRF). It's considered to be the 0th component of a vector potential. If 'addCoulomb' is given and true, it also adds the Coulomb potential.

INPUTS

  • type(particle) :: teilchen -- particle (already boosted to LRF)
  • logical, OPTIONAL :: addCoulomb -- flag, whether to add Coulomb (default: cf. addCoulombDefault)

or:

* integer :: ID -- Id of baryon * integer :: IQ -- Charge of baryon * real, dimension(0:3) :: mom -- momentum of baryon in LRF * real, dimension(1:3) :: pos -- position of baryon

If additional arguments are given, they reduce to define the medium:

  • med%density,med%densityProton,med%densityNeutron = rhoB,rhoB/2,rhoB/2
  • med%density,med%densityProton,med%densityNeutron = med

In these cases, the position of the particle is not set properly.

Calling the routine with an optional 'density' argument is as in the first case, but giving 'density' also as an optional argument to the internal routine 'mediumAt'.

OUTPUT

function value


potentialMain/scaPot [ Functions ]

[ Top ] [ potentialMain ] [ Functions ]

NAME

real function scapot(part,baremass_out,success, addCoulomb)

real function scapot(ID,IQ,mom,pos,baremass_out,success, addCoulomb)

PURPOSE

Returns the scalar potential of a particle. If 'addCoulomb' is given and true, it includes the Coulomb potential in the calculation.

INPUTS

  • type(particle) :: part
  • logical, OPTIONAL :: addCoulomb -- flag, whether to add Coulomb (default: cf. addCoulombDefault)

or:

* integer :: ID -- Id of baryon * integer :: IQ -- Charge of baryon * real, dimension(0:3) :: mom -- momentum of baryon in LRF * real, dimension(1:3) :: pos -- position of baryon

OUTPUT

  • real, optional :: bareMass_out
  • logical, optional :: success

NOTES

Does not respect coulomb potential !


potentialMain/trueEnergy [ Subroutines ]

[ Top ] [ potentialMain ] [ Subroutines ]

NAME

function trueEnergy(part, addCoulomb, partOut)

PURPOSE

  • (1) Boosts particle to "Local Rest Frame" (LRF).
  • (2) Evaluates energy-rearrangement terms.
  • (3) Boosts this back to calculation frame.

INPUTS

  • type(particle) :: part -- Particle whose energy is to be calculated

NOTES

  • The LRF is the frame in which the baryon current vanishes.
  • If the density is very small, then no boost takes place, and the free

energy is assumed. * For all particles besides the nucleon, the free 1-particle energy is equal to the true energy. But for the nucleon we need to substract the rearrangement terms due to the potential. * do not give the same variable both for part and partOut: You will get errors like 'ID=0' in this case.