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