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