TABLE OF CONTENTS
- 1. /baryonPotentialMain
- 1.1. baryonPotentialMain/EQS_Type
- 1.2. baryonPotentialMain/symmetryPotFlag
- 1.3. baryonPotentialMain/symmetryPotFlag_Delta
- 1.4. baryonPotentialMain/dsymm
- 1.5. baryonPotentialMain/SurfacePotFlag
- 1.6. baryonPotentialMain/noPerturbativePotential
- 1.7. baryonPotentialMain/DeltaPot
- 1.8. baryonPotentialMain/HypPot
- 1.9. baryonPotentialMain/rho_0
- 1.10. baryonPotentialMain/p_0
- 1.11. baryonPotentialMain/U_0
- 1.12. baryonPotentialMain/bindingEnergy
- 1.13. baryonPotentialMain/compressibility
- 1.14. baryonPotentialMain/nLoopReAdjust
- 1.15. baryonPotentialMain/baryonPotential
- 1.16. baryonPotentialMain/symEn_nuc
- 1.17. baryonPotentialMain/symEn_Delta
- 1.18. baryonPotentialMain/BaryonPotential
- 1.19. baryonPotentialMain/variableSkyrme
- 1.20. baryonPotentialMain/momentumDependentPart
- 1.21. baryonPotentialMain/rhoLaplace
- 1.22. baryonPotentialMain/LDApotential(teilchen)
- 1.23. baryonPotentialMain/LDApotentialWelke(teilchen)
- 1.24. baryonPotentialMain/SurfacePart
- 1.25. baryonPotentialMain/rearrangementPotential
- 1.26. baryonPotentialMain/HandPotentialToDensityStatic
- 1.27. baryonPotentialMain/getNoPertPot_baryon
- 1.28. baryonPotentialMain/getsymmetryPotFlag_baryon
- 1.29. baryonPotentialMain/getPotentialEQSType
/baryonPotentialMain [ Modules ]
NAME
module baryonPotentialMain
PURPOSE
Includes all information about the baryonic potentials. Note: Only the non-relativistic case of Skyrme-like mean fields is treated here. For relativistic mean fields, see RMF.f90.
baryonPotentialMain/EQS_Type [ Global module-variables ]
[ Top ] [ baryonPotentialMain ] [ Global module-variables ]
PURPOSE
Switch for equation of state for nucleon resonances with spin 1/2.
Parameters for nucleon potentials:
- 0 = nucleon potential is set to zero
- 1 = soft, momentum dependent, lambda = 2.130 (Teis PhD, K = 215 MeV)
- 2 = hard, momentum dependent, lambda = 2.126 (Teis PhD, K = 380 MeV)
- 3 = soft, momentum independent (Teis PhD, K = 215 MeV)
- 4 = hard, momentum independent (Teis PhD, K = 380 MeV)
- 5 = medium, momentum dependent, lambda = 2.130 (Teis PhD, K = 290 MeV)
- 6 = LDA potential (Birger Steinmueller)
- 7 = Deuterium potential Argonne V18 (not usable for eventtypes 'heavyIon' and 'hadron')
- 8 = LDA Potential Welke
- 9 = Buss PhD, Set#1 (K = 220 MeV, momentum dependent)
- 10 = Buss PhD, Set#2 (K = 220 MeV, momentum dependent)
- 11 = Buss PhD, Set#3 (K = 220 MeV, momentum dependent)
- 12 = Shanghai meeting 2014 (soft, momentum independent, K = 240 MeV)
- 13 = slightly modified Cooper potential, central depth = - 67.5 MeV at p=0 (see #14)
- 14 = Potential fitted by Cooper et al, Fig. 6 in PRC 47 (1993) 297
- 98 = use pre-stored values
- 99 = variable Skyrme : E_bind, p_0, U_0, rho_0 must be defined!
NOTES
References:
- for 1-5, see the PhD thesis of S. Teis, chapter 3.3.2 / table 3.1
- for 9-11, see the PhD thesis of O. Buss, chapter 7.2.3 / table 7.1
SOURCE
integer, save :: EQS_Type = 5
baryonPotentialMain/symmetryPotFlag [ Global module-variables ]
[ Top ] [ baryonPotentialMain ] [ Global module-variables ]
PURPOSE
Switch for the asymmetry term in the nucleon potential.
SOURCE
integer, save :: symmetryPotFlag = 0
NOTES
Possible values:
- 0 = none (default)
- 1 = linear (strength given by 'dsymm')
- 2 = stiffer, Esym=Esym_rho_0*U^gamma=31.*U^gamma, gamma=2
- 3 = stiff, linear increasing Esym=Esym_rho_0*U=31.*U
- 4 = soft, U_c=3, can give negative Esym=Esym_rho_0*U*(U_c-U)/(U_c-1)
baryonPotentialMain/symmetryPotFlag_Delta [ Global module-variables ]
[ Top ] [ baryonPotentialMain ] [ Global module-variables ]
PURPOSE
Switch for the asymmetry term in the Delta potential.
SOURCE
logical, save :: symmetryPotFlag_Delta = .false.
NOTES
If .true., a symmetry potential will be used also for the Delta (but only if symmetryPotFlag>0). It is closely related to the symmetry potential of the nucleon.
baryonPotentialMain/dsymm [ Global module-variables ]
[ Top ] [ baryonPotentialMain ] [ Global module-variables ]
SOURCE
real, save :: dsymm = 0.03
PURPOSE
Parameter for symmetry potential in GeV.
NOTES
Value is only used for symmetryPotFlag = 1
baryonPotentialMain/SurfacePotFlag [ Global module-variables ]
[ Top ] [ baryonPotentialMain ] [ Global module-variables ]
PURPOSE
Switch for the surface term in the nucleon potential.
SOURCE
logical, save :: SurfacePotFlag = .false.
NOTES
- Do not use it together with yukawa!
baryonPotentialMain/noPerturbativePotential [ Global module-variables ]
[ Top ] [ baryonPotentialMain ] [ Global module-variables ]
PURPOSE
Switch for potential of perturbative particles. If .true. then perturbative baryons feel no potential.
SOURCE
logical,save :: noPerturbativePotential=.false.
baryonPotentialMain/DeltaPot [ Global module-variables ]
[ Top ] [ baryonPotentialMain ] [ Global module-variables ]
PURPOSE
Switch for potential of spin=3/2 resonances:
- 0 = no potential
- 1 = nucleon (spin=1/2) potential times 2/3 [according to Ericson/Weise book]
- 2 = 100 MeV * rho/rhoNull
- 3 = nucleon (spin=1/2) potential
SOURCE
integer, save :: DeltaPot = 1
baryonPotentialMain/HypPot [ Global module-variables ]
[ Top ] [ baryonPotentialMain ] [ Global module-variables ]
PURPOSE
Switch for potential of hyperons:
- 0 = no potential
- 1 = nucleon (spin=1/2) potential times (3+S)/3 (i.e. according to the share of the light quarks)
- 2 = nucleon (spin=1/2) potential
SOURCE
integer, save :: HypPot = 1
baryonPotentialMain/rho_0 [ Global module-variables ]
[ Top ] [ baryonPotentialMain ] [ Global module-variables ]
PURPOSE
Nuclear matter density for EQS_Type=99
SOURCE
real, save :: rho_0=0.16
NOTES
- Units : fm^{-3}
baryonPotentialMain/p_0 [ Global module-variables ]
[ Top ] [ baryonPotentialMain ] [ Global module-variables ]
PURPOSE
momentum for which U(p_0,rho=rho_0)=0 for EQS_Type=99
SOURCE
real, save :: p_0 =0.8
NOTES
- Units : GeV
baryonPotentialMain/U_0 [ Global module-variables ]
[ Top ] [ baryonPotentialMain ] [ Global module-variables ]
PURPOSE
U(p=0,rho=rho_0) for EQS_Type=99
SOURCE
real, save :: U_0 =0.075
NOTES
- Units : GeV
baryonPotentialMain/bindingEnergy [ Global module-variables ]
[ Top ] [ baryonPotentialMain ] [ Global module-variables ]
PURPOSE
Nuclear matter binding energy for EQS_Type=99
SOURCE
real, save :: bindingEnergy=0.016
NOTES
- Units : GeV
baryonPotentialMain/compressibility [ Global module-variables ]
[ Top ] [ baryonPotentialMain ] [ Global module-variables ]
PURPOSE
Nuclear matter compressibility for EQS_Type=99
SOURCE
real, save :: compressibility=0.290
NOTES
- Units : GeV
baryonPotentialMain/nLoopReAdjust [ Global module-variables ]
[ Top ] [ baryonPotentialMain ] [ Global module-variables ]
PURPOSE
number of iterations, if density is readjusted (cf. type(nucleus)%ReAdjustForConstBinding)
SOURCE
integer, save :: nLoopReAdjust = 10
NOTES
It is necessary to reiterate (at least for momentum dependent potentials), since we calculate the potential for a given pF and then calculate for the radjusting a new pF.
baryonPotentialMain/baryonPotential [ Namelists ]
[ Top ] [ baryonPotentialMain ] [ Namelists ]
NAME
NAMELIST /baryonPotential/
PURPOSE
Includes the following switches:
- EQS_Type
- DeltaPot
- HypPot
- symmetryPotFlag
- symmetryPotFlag_Delta
- noPerturbativePotential
- rho_0
- p_0
- U_0
- bindingEnergy
- compressibility
- SurfacePotFlag
- nLoopReAdjust
- dsymm
baryonPotentialMain/symEn_nuc [ Functions ]
[ Top ] [ baryonPotentialMain ] [ Functions ]
NAME
real function symEn_nuc(Q, med)
PURPOSE
Returns the symmetry energy for a nucleon of charge Q at the given density. Different parametrizations can be chosen via the switch 'symmetryPotFlag'.
INPUTS
OUTPUT
- return value: symmetry energy in GeV
baryonPotentialMain/symEn_Delta [ Functions ]
[ Top ] [ baryonPotentialMain ] [ Functions ]
NAME
real function symEn_Delta(Q, med)
PURPOSE
Returns the symmetry energy for a Delta of charge Q (related to symEn_nuc).
INPUTS
OUTPUT
- return value: symmetry energy in GeV
baryonPotentialMain/BaryonPotential [ Functions ]
[ Top ] [ baryonPotentialMain ] [ Functions ]
NAME
function BaryonPotential(teilchen, med, positionNotSet, EQS_in)
INPUTS
- type(particle) :: teilchen -- boosted to LRF
- type(medium) :: med -- medium information
- logical :: positionNotSet -- .true. : %pos of particle is not well defined
- integer, OPTIONAL :: EQS_in -- If present, then we use EQS_in as EQS type, if not present then EQS is chosen according to EQS_Type.
Some routines like Yukawa might need the position of the particle, and not only the densities. Therefore, the positionNotSet-flag is used to check whether the position is actually set. If e.g. Yukawa is used and the position is not set, then the code stops.
NOTES
Baryon potential is defined as 0th component of a vector potential in the LRF.
baryonPotentialMain/variableSkyrme [ Functions ]
[ Top ] [ baryonPotentialMain ] [ Functions ]
NAME
real function variableSkyrme(rho,p)
PURPOSE
- This function evaluates a variable Skyrme mean field potential
- It's variable in the sense, that the potential parameters are no longer fixed by the above tables "alpha", "beta",... They are evaluated based on the input values of rhoNull, p_0, u_0, bindingEnergy and compressibility!
INPUTS
- real :: rho -- Density in GeV**3
- real :: p -- Momentumin GeV
OUTPUT
- Single particle potential in GeV
NOTES
- This function is initializing the potential parameters when its called for the first time.
- See Oliver's Phd thesis appendix A.4
- Stops the code if there is no solution for the parameters.
baryonPotentialMain/momentumDependentPart [ Functions ]
[ Top ] [ baryonPotentialMain ] [ Functions ]
NAME
real function momentumDependentPart(pin,c,lambda,rho,pF_in)
PURPOSE
This function provides the analytical momdep. potential.
INPUTS
- real :: pIn -- absolute momentum in GeV in LRF
- real :: c -- parameter of potential
- real :: lambda -- parameter of potential
- real :: rho -- baryon density in LRF
- real, OPTIONAL :: pF_in -- value of fermi mom to use (in GeV)
NOTES
see effenberger, dr.-thesis, pages 14-16
baryonPotentialMain/rhoLaplace [ Functions ]
[ Top ] [ baryonPotentialMain ] [ Functions ]
NAME
function rhoLaplace(rvec,a)
PURPOSE
Calculates div(grad(rho))
baryonPotentialMain/LDApotential(teilchen) [ Functions ]
[ Top ] [ baryonPotentialMain ] [ Functions ]
NAME
function LDApotential(teilchen)
PURPOSE
Calculates the Potential for a nucleus initialised with the LDA approach
baryonPotentialMain/LDApotentialWelke(teilchen) [ Functions ]
[ Top ] [ baryonPotentialMain ] [ Functions ]
NAME
function LDApotentialWelke(teilchen)
PURPOSE
Calculates the Potential for a nucleus initialised with the LDA approach and additionally a momentum dependent part
baryonPotentialMain/SurfacePart [ Functions ]
[ Top ] [ baryonPotentialMain ] [ Functions ]
NAME
function SurfacePart(teilchen,spar)
PURPOSE
Determines the surface contribution to the total baryon potential
INPUTS
- type(particle) :: teilchen -- particle, in a position of which grad(\nabla\rho) has to be calculated.
- real :: spar -- Parameter of surface part of baryon potential
OUTPUT
real :: SurfacePart
baryonPotentialMain/rearrangementPotential [ Functions ]
[ Top ] [ baryonPotentialMain ] [ Functions ]
NAME
real function rearrangementPotential(teilchen, med)
PURPOSE
Returns the value of the rearrangement potential.
INPUTS
- type(particle) :: teilchen -- particle whose rearrangement potential should be calculated. It should be boosted to LRF. The position of the particle must be set!!!
- type(medium) :: med -- density information
OUTPUT
function value
NOTES
Notation according to Teis Dr.-thesis. Pages 76-78.
This is *not* the rearrangement potential, but the expression
-(1/2 U_b + U_r)
which is needed to calculate the binding energy correctly.
baryonPotentialMain/HandPotentialToDensityStatic [ Functions ]
[ Top ] [ baryonPotentialMain ] [ Functions ]
NAME
subroutine HandPotentialToDensityStatic(nuc)
PURPOSE
This routine tabulates the proton and neutron density as a function of the radius. It also tabulates the Coulomb potential and the baryon potentials for protons and neutrons *for the corresponding Fermi momentum*. With this, the routine which actually readjusts the density according constant Fermi energy is called. This is repeated several times, until some convergence is believed to happen. (This is necessary, since the local thomas fermi momentum depends on the density.) (Also Coulomb depends on the density, but this is of minor importance here.) If the potential is not momentum dependent, no iteration would be necessary.
Some complications are due to the calculation of the baryon potential in baryonPotentialMain/BaryonPotential and the used tabulations.
INPUTS
- type(tNucleus) :: nuc
OUTPUT
- The potential at input is frozen and stored in a r dependent grid
- EQS_Type is set to 98
- The static density is adjusted.
baryonPotentialMain/getNoPertPot_baryon [ Functions ]
[ Top ] [ baryonPotentialMain ] [ Functions ]
NAME
logical function getNoPertPot_baryon
PURPOSE
Returns the flag noPerturbativePotential
baryonPotentialMain/getsymmetryPotFlag_baryon [ Functions ]
[ Top ] [ baryonPotentialMain ] [ Functions ]
NAME
logical function getsymmetryPotFlag_baryon
PURPOSE
Returns the flag symmetryPotFlag
baryonPotentialMain/getPotentialEQSType [ Functions ]
[ Top ] [ baryonPotentialMain ] [ Functions ]
NAME
integer function getPotentialEQSType
PURPOSE
Returns the EQS type of the potential (0 = no potential)