ADAS Subroutine a8data
SUBROUTINE A8DATA( DSFULL , INDXREF , TITLE , CAMETH , Z0 ,
& Z , ZEFF , INDL , INDU , EI ,
& EJ , WI , WJ , ACOEFF , S ,
& FIJ , EIJ , IXTYP ,
& BXC , BPXC , FXC1 ,
& FXC2 , FXC3 , XKC ,
& IXOPS , IBPTS , IFPTS , IDIFF , ICT ,
& ITOUT , XA , YA , APOMA , DIFOMA , TOA ,
& GOA , APGOA , EXCRA , DEXCRA , GBARFA,
& ISTDIM , IREAD , IZ , IZ0 , GF ,
& BBVAL , BCVAL
& )
C-----------------------------------------------------------------------
C
C ********************* FORTRAN77 SUBROUTINE A8DATA *******************
C
C PURPOSE: TO REFRESH A DATA INDEX FROM AN ADAS108 ARCHIVE. READS
C IN THE INDEX CODE A-ADAS, B-BURGESS/SUMMERS AND THE THE REST
C OF THE DATA AS APPROPRIATE. 9-KNOT BURGESS SPLINE VERSION
C
C CALLING PROGRAM:
C ADAS108.FOR
C
C INPUT:
C (C*80) DSFULL - THE USERS' CHOSEN ARCHIVE FILE NAME.
C (I*4) INDXREF - THE INDEX NUMBER TO REFRESH FROM.
C (C*40) TITLE - THE INFORMATION LINE IN THE ARCHIVE
C FILE.
C (C*4) CAMETH - THE TAG TO DISTINGUISH BETWEEN THE
C TWO TYPES OF ANALYSIS.
C A - ADAS, B- BURGESS
C (R*8) GF - THE WEIGHTED OSCILLATOR STRENGTH
C (R*8) BBVAL - THE BURGESS SCALABLE PARAMETER B.
C (R*8) BCVAL - THE BURGESS SCALABLE PARAMETER C.
C (I*4) ISTDIM = THE MAXIMUM ARRAY DIMENSION
C (I*4) IREAD = THE INPUT UNIT
C
C OUTPUTS:
C (R*8) Z0 = NUCLEAR CHARGE OF ION
C (R*8) Z = ION CHARGE
C (R*8) ZEFF = ION CHARGE + 1
C (I*4) INDL = LOWER LEVEL INDEX (USER CHOICE)
C (I*4) INDU = UPPER LEVEL INDEX (USER CHOICE)
C (R*8) WI = LOWER LEVEL STATISTICAL WEIGHT
C (R*8) WJ = UPPER LEVEL STATISTICAL WEIGHT
C (R*8) EI = LOWER LEVEL ENERGY (IN SELECTED UNITS)
C (R*8) EJ = UPPER LEVEL ENERGY
C (R*8) ACOEFF = TRANSITION PROBABILITY (IN ABOVE FORM,
C DIPOLE CASE ONLY)
C (I*4) IXTYP = 1 DIPOLE TRANSITION
C = 2 NON-DIPOLE TRANSITION
C = 3 SPIN CHANGE TRANSITION
C = 4 OTHER
C (I*4) IBPTS = 0 BAD POINT OPTION OFF
C = 1 BAD POINT OPTION ON
C (I*4) IFPTS = 1 SELECT ONE POINT OPTIMISING
C = 2 SELECT TWO POINT OPTIMISING
C (I*4) IXOPS = 0 OPTIMISING OFF
C = 1 OPTIMISING ON (IF ALLOWED)
C (I*4) IDIFF = 0 RATIO FITTING FOR DIPOLE X-SECT(ONLY
C WITH OPTIMISING)
C = 1 DIFFERENCE FITTING FOR DIPOLE X-SECT
C (R*8) S = LINE STRENGTH
C (R*8) FIJ = OSCILLATOR STRENGTH
C (R*8) EIJ = TRANSITION ENERGY
C (R*8) BXC = APPROX. FORM PARAMETER - LOW ENERGY
C (R*8) BPXC = MATCHING PARAMETER
C (R*8) FXC1 = APPROX. FORM PARAMETER - LOW ENERGY
C (R*8) FXC2 = APPROX. FORM PARAMETER - HIGH ENERGY
C (R*8) FXC3 = APPROX. FORM PARAMETER - HIGH ENERGY
C (R*8) XKC = SWITCHING X-VALUE BETWEEN LOW AND HIGH ENERGY.
C (I*4) ICT = NUMBER OF X-SECTIONS
C (I*4) ITOUT = NUMBER OF TEMPERATURES
C (R*8) XA = ENERGY (PARAMETER X)
C (R*8) YA = OMEGA (COLLISION STRENGTH)
C (R*8) APOMA = APPROXIMATE OMEGA
C (R*8) DIFOMA = DIFFERENCE BETWEEN YA & APOMA
C (R*8) TOA = TEMPERATURE SET
C (R*8) GOA = GAMMA (EFFECTIVE COLLISION STRENGTHS)
C (R*8) APGOA = APPROXIMATE GAMMA
C (R*8) EXCRA = EXCITATION RATE COEFFICIENT
C (R*8) DEXCRA = DEEXCITATION RATE COEFFICIENT
C (R*8) GBARFA = G BAR FUNCTION
C (I*4) ISTDIM = THE MAXIMUM ARRAY DIMENSION
C (I*4) IREAD = THE INPUT UNIT
C (I*4) IZ = ION CHARGE (INTEGRAL)
C (I*4) IZ0 = NUCLEAR CHARGE (INTEGRAL)
C (R*8) GF = GF-VALUE
C (R*8) BBVAL = BURGESS B-VALUE
C (R*8) BCVAL = BURGESS C-VALUE
C
C ROUTINES: NONE
C
C AUTHOR: HUGH SUMMERS (UNIV.OF STRATHCLYDE) EXT.4196
C
C DATE: 16/06/99 VERSION 1.1
C MODIFIED: HUGH SUMMERS
C - FIRST RELEASE
C
C-----------------------------------------------------------------------
CHARACTER*4 CAMETH
CHARACTER*80 DSFULL
CHARACTER*40 TITLE
INTEGER IBPTS, ICT, IDIFF, IFPTS
INTEGER INDL, INDU, INDXREF, IREAD
INTEGER ISTDIM, ITOUT, IXOPS, IXTYP
INTEGER IZ, IZ0
REAL*8 ACOEFF, APGOA(ISTDIM)
REAL*8 APOMA(ISTDIM), BBVAL, BCVAL
REAL*8 BPXC, BXC, DEXCRA(ISTDIM)
REAL*8 DIFOMA(ISTDIM), EI, EIJ
REAL*8 EJ, EXCRA(ISTDIM), FIJ
REAL*8 FXC1, FXC2, FXC3
REAL*8 GBARFA(ISTDIM), GF
REAL*8 GOA(ISTDIM), S, TOA(ISTDIM), WI
REAL*8 WJ, XA(ISTDIM), XKC
REAL*8 YA(ISTDIM), Z, Z0, ZEFF