ADAS Subroutine rdwbes
C subroutine rdwbes( ndinfo, & z0 , nlqs , nshell , na , la , & ea , qda , alfaa , & jsn , jealfa, acc , xmax , h , & lam , einc , irept , iext ,iochk , & res , & ninfo , cinfoa & ) C----------------------------------------------------------------------- C C **************** fortran77 program: rdwbes.for ********************* C C Purpose: Evaluates Born multipole integrals using distorted bound C waves. The distorted waves are in a Jucys or Slater type C potential. C C C Subroutine: C C Input : (i*4) ndinfo = maximum number of information strings C Input : (r*8) z0 = nuclear charge (+ve) C Input : (i*4) nlqs() = 1000*n+100*l+iqfor each screening shell C 1st dim: screening shell index C Input : (i*4) nshell = number of screening shells C Input : (i*4) na() = initial (1) and final (2) state principal C quantum numbers. C Input : (i*4) la() = initial (1) and final (2) orbital quantum C numbers. C Input : (r*8) ea() = energies(ryd) of initial (1) and final (2) C states - set <0 for bound states. C Input : (r*8) qda() = quantum defects for initial (1) and C final (2) states. C Input : (r*8) alfaa(,) = screening parameters C 1st dim: initial (1) and final (2) states C 2nd dim: screening shell index. C Input : (i*4) jsn = -1 => Jucys potential C = 0 => Slater potential C Input : (i*4) jealfa = 0 => search for energies given potential C = 1 => search for alfaa parameters for C potential given energies and quantum C defects. C Input : (r*8) acc = search accuracy setting C Input : (r*8) xmax = range for numerical wave function generation C and storage C Input : (r*8) h = step interval for numerical wave function C storage C Input : (i*4) lam = Born multipole C Input : (r*8) einc = incident electron energy(ryd) C Input : (i*4) irept = 0 =>full wave function determination C = 1 => repeat with same wave functions as in C previous case with irept=0 C Input : (i*4) iext = 0 normal operation with internally generated C wave functions C = 1 use external wave functions supplied in C function gext(x,n,l) with n and l C specifying orbital. C Input : (i*4) iochk = 1 => Born multipole integral evaluated C = 2 => Ochkur multipole integral evaluated C C Output: (r*8) res = multipole integral (at.unit) C Output: (i*4) ninfo = number of information strings C Output (c*90) cinfoa() = information strings C 1st dim: index number of strings C C C Routines: C routine source brief description C ------------------------------------------------------------- C zeff adas effectrive charge (+ve) C effz3 adas evaluates effective potential C gext adas access external radial wave functions C zser adas power series expansion of z(r) C bdcf7 adas generate bound radial distorted wave fn. C fcf6 adas generate free radial distorted wave fn. C rbesf adas evalluate bessel function C ass2 adas asymptotic integral contribution C dnamp adas asymp. wave fn. amplitude Taylor coeffts C phase adas asymp. wave fn. phase Taylor coeffts C ass adas asymptotic integral contribution C C Author: H. P. Summers, University of Strathclyde C ja7.08 C tel. 0141-548-4196 C C Date: 22/04/85 C C Update: HP Summers 16/06/95 alter definition of nlqs as C 1000*n+100*l+iq to avoid problem when C number of equivalent electrons is 10 C Update: HP Summers 21/05/04 restructure and add calculation C information strings to parameter output C----------------------------------------------------------------------- C----------------------------------------------------------------------- CHARACTER*90 CINFOA(NDINFO) INTEGER IEXT, IOCHK, IREPT, JEALFA INTEGER JSN, LA(2), LAM, NA(2) INTEGER NDINFO, NINFO, NLQS(10), NSHELL REAL*8 ACC, ALFAA(2,10), EA(2), EINC REAL*8 H, QDA(2), RES, XMAX REAL*8 Z0