/* * DO NOT MANUALLY UPDATE THIS FILE. * If needed: make cpp_headers * * fortran2c.py - automatic conversion * nucsft.inc -> nucsft.h */ #ifndef __NUCSFT__ #define __NUCSFT__ #include "types.h" #ifdef __cplusplus extern "C" { #endif // //=== nucsft ===========================================================* // //----------------------------------------------------------------------* // * // Copyright (C) 2003-2019: CERN & INFN * // All Rights Reserved. * // * // NUClear Symmetrized Fermi/woods-saxon density and potential * // tabulations * // * // Created on 29 July 1991 by Alfredo Ferrari & Paola Sala * // Infn - Milan * // * // Vparvp, cparvp, aparvp (bparvp auxiliary parameter * // for Cparvp calculations): * // * // V0 (r) = Vparvp * sinh (cparvp/aparvp) * // / ( cosh (cparvp/aparvp) + cosh (r/aparvp) ) * // expvca = exp ( -cparvp / aparvp ) * // expvra = exp ( rcursf / aparvp ) * // bnvpsf = "average" binding energy used when generating * // the potential tabulations * // v0cesf = well depth at r=0 for the "average" potential * // evsfmx = Max. Fermi energy for the ip nucleon potential * // evsfmx = |v0cesf| - bnvpsf * // pvsfmx = Max. Fermi momentum for proton/neutron * // pfsksf = Fermi momentum for proton/neutron computed at * // radiu1 defined ad the (mrsfbn-5)th bin limit * // vcoumx = maximum height of the Coulomb barrier * // (for Z=Zvpcou), modified during tracking to * // get the real barrier * // vcousv = maximum height of the Coulomb barrier * // (for Z=Zvpcou) * // v0ccou = Coulomb potential at R=Radtot * // zvpcou = Z for which the barrier has been computed * // zbourd = Z reduction factor to be used for bound nucleons* // when computing Coulomb effects * // ravpsf = radius at which the "average" nuclear potential * // stops * // ravcou = radius at which the Coulomb potential stops * // ravpot = radius at which the nuclear potential stops * // dradsf = radial increment used from radiu0 up to radtot * // dravsf = radial increment used from radtot up to ravpot * // ivsfmn = index of the innermost potential shell which * // can be reached by the current particle accord- * // ing to its angular momentum * // ivsfmx = index of the outermost potential shell which * // can be reached by the current particle accord- * // ing to its energy and angular momentum * // ivcomx = bin index of the maximum height of the Coulomb * // barrier * // isfint = current tabulation index * // ibsfmn = index of the radial bin of the the minimum * // approach point * // ibsfmx = index of the radial bin of the the maximum * // approach point * // * // The actual potential is given by (Preeqmvax version with no * // energy dependence of the potential): * // for r < radtot (note V_nuc < 0): * // neutral particles : * // V_true(r) = V_nuc(r,ip) + bnvpsf (ip) - bn_true (ip) * // charged particles : * // V_true(r) = V_nuc(r,ip) + bnvpsf (ip) - bn_true (ip) * // + Zproj * V_coul(r) * // for ravpsf > r > radtot (note V_nuc < 0): * // V_true(r) = V_nuc(r,ip) / bnvpsf (ip) x bn_true (ip) * // + Znow / Zvpcou x Zproj x V_coul(r) * // for r > ravpsf : * // V_true(r) = Znow / Zvpcou x Zproj x V_coul(r) * // Please note that Ekfcen(ip)=Evsfmx(ip), for ip=1,2 * // For the actual potential with the Preeqmvax version with the * // energy dependence of the potential, see the relevant routines * // * //----------------------------------------------------------------------* // // From this point quantities which does not distinguish between // projectile or target (or are used only at initialization or are // set run time), but ivcomx extern struct { double cparvp[2][2]; double aparvp[2][2]; double ravpsf[2][2]; double v0cesf[2][2]; double pvsfmx[2][2]; double evsfmx[2][2]; double bnvpsf[2][2]; double pfsksf[2][2]; double zbourd[2]; double ravpot[2]; double zvpcou[2]; double vcoumx[2]; double vcousv[2]; double dradsf[2]; double dravsf[2]; double v0ccou[2]; double vparvp[2]; double bparvp[2]; double expvca[2]; double expvra[2]; double vsfhlp[2]; double ravcou; double vpsfa0; double vpsfa1; double vpsfae; int ivcomx[2]; int ivsfmn; int ivsfmx; int ibsfmn; int ibsfmx; int isfint; } nucsft_; #ifdef __cplusplus } #endif #endif