*$ CREATE LWNPWX.ADD *COPY LWNPWX * *=== Lwnpwx ===========================================================* * *----------------------------------------------------------------------* * * * Copyright (C) 1997-2021 by Alberto Fasso`, Alfredo Ferrari, * * All Rights Reserved. & Paola Sala * * * * * * LoW energy Neutron Point-Wise Xsec common: * * (Extensively re-written by A.Fasso`, P.Sala Oct-17/Jul-20, * * starting from the old work for the unfinished Pwxs code of * * mid '90's (INFN+Fasso`). Further extended Sep-20/Feb-21 by * * Alfredo Ferrari, and Paola Sala) * * * * Created on 27 May 1997 by Alfredo Ferrari, Paola Sala * * Infn - Milan * * * * Last change on 06-Feb-21 by Alfredo Ferrari, Paola Sala * * Private Infn - Milan * * * * Description of variables: * * * * Emnpwx(i) = minimum usable energy (GeV) for the i_th * * pointwise cross section data set * * Emxpwx(i) = maximum usable energy (GeV) for the i_th * * pointwise cross section data set * * Tmppwx(i) = temperature (K) for the i_th pointwise cross * * section data set * * Epwxls(i) = last energy (GeV) for which the index in the * * total cross section tabulation has been * * computed for the i_th pointwise cross section * * section data set * * Ipwxls(i) = energy index in total cross section tabulation* * immediately below Epwxls(i) (Epwxls(i) >= of * * the energy corresponding to Ipwxls(i)) * * Emnsab = minimum energy for pointwise treatment in * * presence of (group) S(a,b) treatment * * Emnfrg = minimum energy for pointwise free gas * * treatment * * Kscpwx(j,i) = id. of the j_th particle produced in the i_th * * reaction channel (gammas not included!) * * Kbgpwx(i) = starting location in blank common (i*4, 0 * * address) for the i_th pointwise cross section * * data set * * K0 = Kbgpwx(i) * * Nstor(k0+1) = isomer code * * Nstor(k0+2) = temperature (K, integer) * * Nstor(k0+3) = number of reactions (it must * * be the same as Nrcpwx(i) * * For each reaction j: * * Kj = k0 + 3 + 3*(j-1) * * Nstor(kj+1) = id of the j_th reaction * * (1=total, 2=elastic, ....) * * Nstor(kj+2) = n. of energy points for the * * j_th reaction * * Nstor(kj+3) = cumulative n. of points for * * the 1-j_th reactions * * (counting 1 for each energy * * - sigma point) * * For Lpwxun(i)=False or j=1: * * Siggtt(kj+3+2*Nstor(kj+2)) = couples * * E(k),Sigma_j(k), k=1,Nstor(kj+2) * * For Lpwxun(i)=True and j>1: * * Siggtt(kj+3+Nstor(kj+2)) = Sigma_j(k), * * k=1,Nstor(kj+2) * * Kelpwx(i) = starting location in blank common (i*4, 0 * * address) for the elastic scattering angular * * distribution data of the i_th pointwise cross * * section data set * * Iazpwx(i) = isomer code for the i_th pointwise cross * * section data set * * Kbnpwx(i) = bound material index associated with the i_th * * pointwise cross section data set * * Kmdpwx(i) = low energy neutron material index associated * * with the i_th pointwise cross section data set* * Nrcpwx(i) = number of reactions for the i_th pointwise * * cross section data set * * Nthpwx(i) = number of thermal (run-time Doppler broadened * * or S(a,b)) reactions for the i_th pointwise * * cross section data set * * Ithpwx(k,i) = id. of the k_th thermal (run-time Doppler bro-* * adened or S(a,b)) reaction. The 1st one must * * be total over the whole thermal energy range * * Thmxpw(k,i) = maximum energy (GeV) for cross section data * * of the k_th thermal (run-time Doppler broad- * * ened or S(a,b)) reaction * * Thmnpw(k,i) = minimum energy (GeV) for cross section data * * of the k_th thermal (run-time Doppler broad- * * ened or S(a,b)) reaction * * Dlthpw(k,i) = if > 0 is the logarithmic width of the tabula-* * tion grid for cross section data of the k_th * * thermal (run-time Doppler broadened or S(a,b))* * reaction. If >= 0 the grid is unequal * * Mthpwx(k,i) = number of tabulated logarithmic energy * * points between Thmnpw(k,i) and Thmxpw(k,i) * * for cross section data of the k_th thermal * * (run-time Doppler broadened or S(a,b)) * * reaction * * Kthpwx(k,i) = starting location in blank common (r*8, 0 * * address) for cross section data of the k_th * * thermal (run-time Doppler broadened or S(a,b))* * reaction. The data are Mthpwx(k,i) Log(Ej) * * values, followed by Mthpwx(k,i) Log(Xsj) * * values * * Nellcf(i) = number of Legendre coefficients for the i_th * * pointwise cross section data set * * Nelsen(i) = number of energy points for elastic scattering* * angular distributions for the i_th pointwise * * cross section data set * * Nnpenr(i) = number of energy points for (n,np) scattering * * for the i_th pointwise cross section data set * * Nnpden(i) = number of data points per energy point for * * (n,np) scattering for the i_th pointwise cross* * section data set * * Knnpdt(i) = kind of data description for (n,np) scattering* * for the i_th pointwise cross section data set * * Knppwx(i) = starting location in blank common (i*4, 0 * * address) for (n,np) scattering data of the * * i_th pointwise cross section data set. The * * data consist of Nnpenr(i) x Nnpden(i) real * * numbers. Their meaning is depending on * * Knnpdt(i) * * Nnaenr(i) = number of energy points for (n,na) scattering * * for the i_th pointwise cross section data set * * Nnaden(i) = number of data points per energy point for * * (n,na) scattering for the i_th pointwise cross* * section data set * * Knnadt(i) = kind of data description for (n,na) scattering* * for the i_th pointwise cross section data set * * Knapwx(i) = starting location in blank common (i*4, 0 * * address) for (n,na) scattering data of the * * i_th pointwise cross section data set. The * * data consist of Nnaenr(i) x Nnaden(i) real * * numbers. Their meaning is depending on * * Knnadt(i) * * Nndenr(i) = number of energy points for (n,nd) scattering * * for the i_th pointwise cross section data set * * Nndden(i) = number of data points per energy point for * * (n,nd) scattering for the i_th pointwise cross* * section data set * * Knnddt(i) = kind of data description for (n,na) scattering* * for the i_th pointwise cross section data set * * Kndpwx(i) = starting location in blank common (i*4, 0 * * address) for (n,nd) scattering data of the * * i_th pointwise cross section data set. The * * data consist of Nndenr(i) x Nndden(i) real * * numbers. Their meaning is depending on * * Knnddt(i) * * Nn3enr(i) = number of energy points for (n,n3-He) scatt. * * for the i_th pointwise cross section data set * * Nn3den(i) = number of data points per energy point for * * (n,n3-He) scatt. for the i_th pointwise cross * * section data set * * Knn3dt(i) = kind of data description for (n,n3-He) scatt. * * for the i_th pointwise cross section data set * * Kn3pwx(i) = starting location in blank common (i*4, 0 * * address) for (n,n3-He) scatt. data of the * * i_th pointwise cross section data set. The * * data consist of Nn3enr(i) x Nn3den(i) real * * numbers. Their meaning is depending on * * Knn3dt(i) * * Nntenr(i) = number of energy points for (n,nt) scattering * * for the i_th pointwise cross section data set * * Nntden(i) = number of data points per energy point for * * (n,nt) scattering for the i_th pointwise cross* * section data set * * Knntdt(i) = kind of data description for (n,nt) scattering* * for the i_th pointwise cross section data set * * Kntpwx(i) = starting location in blank common (i*4, 0 * * address) for (n,nt) scattering data of the * * i_th pointwise cross section data set. The * * data consist of Nntenr(i) x Nntden(i) real * * numbers. Their meaning is depending on * * Knntdt(i) * * N2nenr(i) = number of energy points for (n,2n) scattering * * for the i_th pointwise cross section data set * * N2nden(i) = number of data points per energy point for * * (n,2n) scattering for the i_th pointwise cross* * section data set * * Kn2ndt(i) = kind of data description for (n,2n) scattering* * for the i_th pointwise cross section data set * * K2npwx(i) = starting location in blank common (i*4, 0 * * address) for (n,2n) scattering data of the * * i_th pointwise cross section data set. The * * data consist of N2nenr(i) x N2nden(i) real * * numbers. Their meaning is depending on * * Kn2ndt(i) * * N3nenr(i) = number of energy points for (n,3n) scattering * * for the i_th pointwise cross section data set * * N3nden(i) = number of data points per energy point for * * (n,3n) scattering for the i_th pointwise cross* * section data set * * Kn3ndt(i) = kind of data description for (n,3n) scattering* * for the i_th pointwise cross section data set * * K3npwx(i) = starting location in blank common (i*4, 0 * * address) for (n,3n) scattering data of the * * i_th pointwise cross section data set. The * * data consist of N3nenr(i) x N3nden(i) real * * numbers. Their meaning is depending on * * Kn3ndt(i) * * Npfenr(i) = number of energy points for (n,fiss_prompt) * * for the i_th pointwise cross section data set * * Npfden(i) = number of data points per energy point for * * (n,fiss_prompt) for the i_th pointwise cross * * section data set * * Knpfdt(i) = kind of data description for (n,fiss_prompt) * * for the i_th pointwise cross section data set * * Kpfpwx(i) = starting location in blank common (i*4, 0 * * address) for (n,fiss_prompt) data of the * * i_th pointwise cross section data set. The * * data consist of Npfenr(i) x Npfden(i) real * * numbers. Their meaning is depending on * * Knpfdt(i) * * Ndfenr(i) = number of energy points for (n,fiss_delay) * * for the i_th pointwise cross section data set * * Ndfden(i) = number of data points per energy point for * * (n,fiss_delay) for the i_th pointwise cross * * section data set * * Kndfdt(i) = kind of data description for (n,fiss_delay) * * for the i_th pointwise cross section data set * * Kdfpwx(i) = starting location in blank common (i*4, 0 * * address) for (n,fiss_delay) data of the * * i_th pointwise cross section data set. The * * data consist of Ndfenr(i) x Ndfden(i) real * * numbers. Their meaning is depending on * * Kndfdt(i) * * Ixs4pw(i) = flag Xs4flu format for the i_th pointwise * * cross section data set * * Lpwxun(i) = logical flag for uniform energy grids (same * * for all reactions) for the i_th pointwise * * cross section data set * * Nispwx(j) = number of isotopes/pwxs cross section data * * sets for the j_th material whose isotopic com-* * position is described with Abupwx, Isopwx * * Abupwx(k,j) = relative abundance of the k_th isotope of the * * j_th material whose isotopic composition is * * described with Abupwx, Isopwx * * Isopwx(k,j) = index of the pwxs cross section data set cor- * * responding to the k_th isotope of the j_th * * material whose isotopic composition is descri-* * bed with Abupwx, Isopwx * * Nmpwxs = number of defined pointwise cross section * * data sets * * Nabpwx = number of elemental pointwise cross section * * described inside Abupwx, Isopwx * * Irpwxs = run time pointwise reaction index * * Jrpwxs = run time pointwise sub-reaction index * * Lrpwxs = run time pointwise break-up reaction index * * Lpwxsp = logical flag for printing pointwise cross * * section data * * * *----------------------------------------------------------------------* * * Total number of reactions types: PARAMETER ( MXRPWX = 413 ) * Maximum number of reactions to be considered for building the cross * section (excluding Kpwx1s-Kpwxco): PARAMETER ( MXSPWX = 130 ) * Total cross section index: PARAMETER ( KPWXTT = 1 ) * Elastic cross section index PARAMETER ( KPWXEL = 2 ) * (Total) inelastic cross section index PARAMETER ( KPWXIN = 3 ) * (n,2n) cross section index PARAMETER ( KPWX2N = 4 ) * Fission cross section index PARAMETER ( KPWXFS = 5 ) * Capture (n,gamma) cross section index PARAMETER ( KPWXCP = 6 ) * 1st excited level inelastic cross section index PARAMETER ( KPWX1S = 7 ) * Continuum inelastic cross section index PARAMETER ( KPWXCO = 47 ) * (n,3n) cross section index PARAMETER ( KPWX3N = 48 ) * (n,n alpha) cross section index PARAMETER ( KPWXNA = 49 ) * (n,n 3alpha) cross section index PARAMETER ( KPWN3A = 50 ) * (n,2n alpha) cross section index PARAMETER ( KPW2NA = 51 ) * (n,3n alpha) cross section index PARAMETER ( KPW3NA = 52 ) * (n,n p) cross section index PARAMETER ( KPWXNP = 53 ) * (n,n 2alpha) cross section index PARAMETER ( KPWN2A = 54 ) * (n,2n 2alpha) cross section index PARAMETER ( KW2N2A = 55 ) * (n,n d) cross section index PARAMETER ( KPWXND = 56 ) * (n,n t) cross section index PARAMETER ( KPWXNT = 57 ) * (n,n 3-He) cross section index PARAMETER ( KPWXN3 = 58 ) * (n,n d 2alpha) cross section index PARAMETER ( KWND2A = 59 ) * (n,n t 2alpha) cross section index PARAMETER ( KWNT2A = 60 ) * (n,4n) cross section index PARAMETER ( KPWX4N = 61 ) * (n,2n p) cross section index PARAMETER ( KPW2NP = 62 ) * (n,3n p) cross section index PARAMETER ( KPW3NP = 63 ) * (n,p) cross section index PARAMETER ( KPWXPR = 64 ) * (n,d) cross section index PARAMETER ( KPWXDE = 65 ) * (n,t) cross section index PARAMETER ( KPWXTR = 66 ) * (n,3-He) cross section index PARAMETER ( KPW3HE = 67 ) * (n,alpha) cross section index PARAMETER ( KPWXAL = 68 ) * (n,2alpha) cross section index PARAMETER ( KPWX2A = 69 ) * (n,3alpha) cross section index PARAMETER ( KPWX3A = 70 ) * (n,2p) cross section index PARAMETER ( KPWX2P = 71 ) * (n,p alpha) cross section index PARAMETER ( KPWXPA = 72 ) * (n,t 2alpha) cross section index PARAMETER ( KPWT2A = 73 ) * (n,d 2alpha) cross section index PARAMETER ( KPWD2A = 74 ) * (n,p d) cross section index PARAMETER ( KPWXPD = 75 ) * (n,p t) cross section index PARAMETER ( KPWXPT = 76 ) * (n,n 2p) cross section index PARAMETER ( KPWN2P = 77 ) * (n,n p alpha) cross section index PARAMETER ( KPWNPA = 78 ) * (n,d alpha) cross section index PARAMETER ( KPWXDA = 79 ) * (n,5n) cross section index PARAMETER ( KPWX5N = 80 ) * (n,6n) cross section index PARAMETER ( KPWX6N = 81 ) * (n,2n t) cross section index PARAMETER ( KPW2NT = 82 ) * (n,t alpha) cross section index PARAMETER ( KPWXTA = 83 ) * (n,4n p) cross section index PARAMETER ( KPW4NP = 84 ) * (n,3n d) cross section index PARAMETER ( KPW3ND = 85 ) * (n,n d alpha) cross section index PARAMETER ( KPWNDA = 86 ) * (n,2n p alpha) cross section index PARAMETER ( KW2NPA = 87 ) * (n,7n) cross section index PARAMETER ( KPWX7N = 88 ) * (n,8n) cross section index PARAMETER ( KPWX8N = 89 ) * (n,5n p) cross section index PARAMETER ( KPW5NP = 90 ) * (n,6n p) cross section index PARAMETER ( KPW6NP = 91 ) * (n,7n p) cross section index PARAMETER ( KPW7NP = 92 ) * (n,4n alpha) cross section index PARAMETER ( KPW4NA = 93 ) * (n,5n alpha) cross section index PARAMETER ( KPW5NA = 94 ) * (n,6n alpha) cross section index PARAMETER ( KPW6NA = 95 ) * (n,7n alpha) cross section index PARAMETER ( KPW7NA = 96 ) * (n,4n d) cross section index PARAMETER ( KPW4ND = 97 ) * (n,5n d) cross section index PARAMETER ( KPW5ND = 98 ) * (n,6n d) cross section index PARAMETER ( KPW6ND = 99 ) * (n,3n t) cross section index PARAMETER ( KPW3NT = 100 ) * (n,4n t) cross section index PARAMETER ( KPW4NT = 101 ) * (n,5n t) cross section index PARAMETER ( KPW5NT = 102 ) * (n,6n t) cross section index PARAMETER ( KPW6NT = 103 ) * (n,2n 3-He) cross section index PARAMETER ( KPW2NH = 104 ) * (n,3n 3-He) cross section index PARAMETER ( KPW3NH = 105 ) * (n,4n 3-He) cross section index PARAMETER ( KPW4NH = 106 ) * (n,3n 2p) cross section index PARAMETER ( KW3N2P = 107 ) * (n,3n 2alpha) cross section index PARAMETER ( KW3N2A = 108 ) * (n,3n p alpha) cross section index PARAMETER ( KW3NPA = 109 ) * (n,d t) cross section index PARAMETER ( KPWXDT = 110 ) * (n,n p d) cross section index PARAMETER ( KPWNPD = 111 ) * (n,n p t) cross section index PARAMETER ( KPWNPT = 112 ) * (n,n d t) cross section index PARAMETER ( KPWNDT = 113 ) * (n,n p 3-He) cross section index PARAMETER ( KPWNPH = 114 ) * (n,n d 3-He) cross section index PARAMETER ( KPWNDH = 115 ) * (n,n t 3-He) cross section index PARAMETER ( KPWNTH = 116 ) * (n,n t alpha) cross section index PARAMETER ( KPWNTA = 117 ) * (n,2n 2p) cross section index PARAMETER ( KW2N2P = 118 ) * (n,p 3alpha) cross section index PARAMETER ( KPWP3A = 119 ) * (n,d 3alpha) cross section index PARAMETER ( KPWD3A = 120 ) * (n,3-He 3alpha) cross section index PARAMETER ( KPWH3A = 121 ) * (n,4n 2p) cross section index PARAMETER ( KW4N2P = 122 ) * (n,4n 2alpha) cross section index PARAMETER ( KW4N2A = 123 ) * (n,4n p alpha) cross section index PARAMETER ( KW4NPA = 124 ) * (n,3p) cross section index PARAMETER ( KPWX3P = 125 ) * (n,n 3p) cross section index PARAMETER ( KPWN3P = 126 ) * (n,3n 2p alpha) cross section index PARAMETER ( K3N2PA = 127 ) * (n,5n 2p) cross section index PARAMETER ( KW5N2P = 128 ) * (n,2n d) cross section index PARAMETER ( KPW2ND = 129 ) * (n,complex) cross section index PARAMETER ( KPWCMX = 130 ) * (n,p0) (n,p) Ground state index PARAMETER ( KPWXP0 = 131 ) * (n,pc) Continuum n,p index PARAMETER ( KPWXPC = 180 ) * (n,d0) n,d Ground state index PARAMETER ( KPWXD0 = 181 ) * (n,dc) Continuum n,d index PARAMETER ( KPWXDC = 230 ) * (n,t0) n,t Ground state index PARAMETER ( KPWXT0 = 231 ) * (n,tc) Continuum n,t index PARAMETER ( KPWXTC = 280 ) * (n,3-He0) n,3-He Ground state index PARAMETER ( KPWXH0 = 281 ) * (n,3-Hec) Continuum n,3-He index PARAMETER ( KPWXHC = 330 ) * (n,a0) n,a Ground state index PARAMETER ( KPWXA0 = 331 ) * (n,ac) Continuum n,a index PARAMETER ( KPWXAC = 380 ) * (n,2n0) n,2n Ground state index PARAMETER ( KPW2N0 = 381 ) * (n,2nc) Continuum n,2n index PARAMETER ( KPW2NC = 397 ) * (n,fiss) 1st chance fission index PARAMETER ( KPWF1S = 398 ) * (n,n f) 2nd chance fission index PARAMETER ( KPWF2N = 399 ) * (n,2n f) 3rd chance fission index PARAMETER ( KPWF3R = 400 ) * (n,3n f) 4th chance fission index PARAMETER ( KPWF4T = 401 ) * nu_fiss_tot index (note MT=452, MF=1) PARAMETER ( KPWNUT = 402 ) * nu_fiss_delayed index (note MT=455, MF=1): PARAMETER ( KPWNUD = 403 ) * nu_fiss_prompt index (note MT=456, MF=1) PARAMETER ( KPWNUP = 404 ) * index (note MT=458, 1st part, MF=1) PARAMETER ( KPWEFF = 405 ) * index (note MT=458, 2nd part, MF=1) PARAMETER ( KPWEPF = 406 ) * index (note MT=458, 3rd part, MF=1) PARAMETER ( KPWEDF = 407 ) * index (note MT=458, 4th part, MF=1) PARAMETER ( KPWGPF = 408 ) * index (note MT=458, 5th part, MF=1) PARAMETER ( KPWGDF = 409 ) * index (note MT=458, 6th part, MF=1) PARAMETER ( KPWBDF = 410 ) * index (note MT=458, 7th part, MF=1) PARAMETER ( KPWNNF = 411 ) * index (note MT=458, 8th part, MF=1) PARAMETER ( KPWENF = 412 ) * index (note MT=458, 9th part, MF=1) PARAMETER ( KPWETF = 413 ) * (n,S(a,b)) incoherent inelastic PARAMETER ( KPWXII = 601 ) * (n,S(a,b)) incoherent elastic PARAMETER ( KPWXIE = 602 ) * (n,S(a,b)) coherent elastic PARAMETER ( KPWXCE = 603 ) * LOGICAL LPWXSP, LPWXUN COMMON / LWNPWX / & EMNPWX (MXXMDF), EMXPWX (MXXMDF), TMPPWX (MXXMDF), & THMNPW (6,MXXMDF), DLTHPW (6,MXXMDF), THMXPW (6,MXXMDF), & EPWXLS (MXXMDF), IPWXLS (MXXMDF), ABUPWX(MXZISO,MXXMDF), & EMNSAB, EMNFRG, NISPWX (MXXMDF), ISOPWX(MXZISO,MXXMDF), & ITHPWX (6,MXXMDF), KTHPWX (6,MXXMDF), MTHPWX (6,MXXMDF), & KSCPWX (8,MXRPWX), KBGPWX (MXXMDF), KELPWX (MXXMDF), & IAZPWX (MXXMDF), KMDPWX (MXXMDF), NRCPWX (MXXMDF), & NELLCF (MXXMDF), NELSEN (MXXMDF), NNPENR (MXXMDF), & NNPDEN (MXXMDF), KNNPDT (MXXMDF), KNPPWX (MXXMDF), & NNAENR (MXXMDF), NNADEN (MXXMDF), KNNADT (MXXMDF), & KNAPWX (MXXMDF), NNDENR (MXXMDF), NNDDEN (MXXMDF), & KNNDDT (MXXMDF), KNDPWX (MXXMDF), NNTENR (MXXMDF), & NNTDEN (MXXMDF), KNNTDT (MXXMDF), KNTPWX (MXXMDF), & NN3ENR (MXXMDF), NN3DEN (MXXMDF), KNN3DT (MXXMDF), & KN3PWX (MXXMDF), N2NENR (MXXMDF), N2NDEN (MXXMDF), & KN2NDT (MXXMDF), K2NPWX (MXXMDF), N3NENR (MXXMDF), & N3NDEN (MXXMDF), KN3NDT (MXXMDF), K3NPWX (MXXMDF), & NPFENR (MXXMDF), NPFDEN (MXXMDF), KNPFDT (MXXMDF), & KPFPWX (MXXMDF), NDFENR (MXXMDF), NDFDEN (MXXMDF), & KNDFDT (MXXMDF), KDFPWX (MXXMDF), NTHPWX (MXXMDF), & KBNPWX (MXXMDF), IXS4PW (MXXMDF), NMPWXS, NABPWX, & IRPWXS, JRPWXS , LRPWXS, LPWXUN (MXXMDF), LPWXSP * COMMON / LCHPWX / CHRPWX (MXRPWX), FLPWXS (MXXMDF), & FIPWXS (MXZISO) CHARACTER CHRPWX*8, FLPWXS*40, FIPWXS*40 SAVE / LWNPWX /, / LCHPWX /