ADAS Subroutine cldlbn2
SUBROUTINE CLDLBN2(exfile,Z0,Z1,ZEFF,DENS,TE,DENSP,TP,BMENER,
& DENSH,W1,NMIN,NMAX,NREP,IMAX,ARED,
& RHS,CIONPT,DRECPT,RRECPT,XRECPT,IECION,
& IEDREC,IERREC,IEXREC,DVEC,ACNST,A1CNST,
& lpass)
C
IMPLICIT REAL*8(A-H,O-Z)
C
C-----------------------------------------------------------------------
C
C ****************** FORTRAN77 SUBROUTINE: CLDLBN2 ********************
C
C-----------------------------------------------------------------------
C PURPOSE: ESTABLISH THE PROJECTED INFLUENCE OF HIGH N-SHELLS IN
C THE BUNDLE-N COLLISIONAL DIELECTRONIC MODEL ON A SET OF LS OR LSJ
C RESOLVED LOW LEVEL POPULATION EQUATIONS
C
C BOTH THE RECOMBINATION AND IONISATION PATHWAYS THROUGH THE HIGH
C LEVELS ARE TAKEN INTO ACCOUNT AS WELL AS THE INDIRECT COUPLINGS OF
C LOW RESOLVED LEVELS VIA THE HIGH BUNDLE-N LEVELS.
C
C THE SUBROUTINE IS USED AS AN ARBITRARY CALL FROM WITHIN THE
C CONVENTIONAL BNDLEN ROUTINE FOLLOWING ESTABLISHMENT OF THE
C CONDENSED COLLISIONAL-DIELECTRONIC MATRIX AND RIGHT-HAND SIDE
C
C THE EXPANSION OF THE PROJECTED MATRICES OVER THE RESOLVED LOWER
C LEVELS IS DEFINED THROUGH RESOLVED - BUNDLEN INDEXING AND
C WEIGHTING FRACTION TABLES STORED IN DATA STATEMENTS.
C THESE ARE HELD FOR COMBINATIONS BASED ON THE A-D-A-S DATA BASE
C MEMBERS.
C
C THE ROUTINE PROVIDES TABULAR OUTPUT AND FOR THE MOMENT PREPARES A
C PASSING FILE FOR FURTHER PROCESSING IN THE A-D-A-S STRUCTURE
C
C PROCESSING CONTINUES WITH EXECUTION OF THE LOW LEVEL POPULATION
C CALCULATION PROVIDED THE LOW LEVEL DATA FILE 'REFMEM' IS NON-BLANK
C OTHERWISE ONLY THE PASSING FILE IS PRODUCED
C
C INPUT
C exfile = DATA SET NAME OF EXPANSION FILE
C Z0 = NUCLEAR CHARGE
C Z1 = RECOMBINING ION CHARGE
C ZEFF = PLASMA Z EFFECTIVE
C DENS = ELECTRON DENSITY (CM-3)
C TE = ELECTRON TEMPERATURE (K)
C DENSP = PROTON DENSITY (CM-3)
C TP = PROTON TEMPERATURE (K)
C BMENER = NEUTRAL HYDROGEN BEAM ENERGY (EV/AMU)
C DENSH = NEUTRAL BEAM HYDROGEN DENSITY (CM-3)
C W1 = GROUND STATE RADIATION DILUTION FACTOR
C NMIN = LOWEST N-SHELL
C NMAX = HIGHEST N-SHELL
C NREP(I) = SET OF REPRESENTATIVE LEVELS
C IMAX = NUMBER OF REPRESENTATIVE LEVELS
C ARED(I,J)= CONDENSED COLLISONAL-DIELECTRONIC MATRIX (CN SOLUTION)
C RHS(I) = CONDENSED RIGHT-HAND-SIDE (CN SOLUTION)
C CIONPT(I)= COLLISIONAL IONISATION CONTRIBUTION TO ARED(I,I)
C DRECPT(I)= DIELECTRONIC RECOMBINATION CONTRIBUTION TO RHS(I)
C RRECPT(I)= RADIATIVE RECOMBINATION CONTRIBUTION TO RHS(I)
C XRECPT(I)= CHARGE EXCHANGE RECOMB. CONTRIBUTION TO RHS(I)
C IECION = 0 ELIMINATE CIONPT FOR LOW LEVELS IN PROJECTION
C 1 DO NOT ELIMINATE CIONPT.
C IEDREC = 0 ELIMINATE DRECPT FOR LOW LEVEL PROJECTION
C 1 DO NOT ELIMINATE DRECPT.
C IERREC = 0 ELIMINATE RRECPT FOR LOW LEVEL PROJECTION
C 1 DO NOT ELIMINATE RRECPT.
C IEXREC = 0 ELIMINATE XRECPT FOR LOW LEVEL PROJECTION
C 1 DO NOT ELIMINATE XRECPT.
C DVEC(I) = CONVERSION FACTOR FOR BN --> POPULATION
C ACNST = 1.03928D-13*Z*ATE*DSQRT(ATE)
C A1CNST = 6.60074D-24*DENS*(157890.0/TE)**1.5
C
C OUTPUT
C
C
C ********** H.P. SUMMERS, JET 8 FEB 1990 ************
C ********** 24 APR 1990 ************
C ********** 18 JUL 1991 ************
C-----------------------------------------------------------------------
C
C-----------------------------------------------------------------------
C
C UPDATE: 19/01/94 - JONATHAN NASH - TESSELLA SUPPORT SERVICES PLC
C
C THE FOLLOWING MODIFICATIONS HAVE BEEN MADE TO THE SUBROUTINE:
C
C 1) THE COMPLETE EXPANSION FILE DATA SET NAME IS NOW PASSED
C INTO THE ROUTINE RATHER THAN JUST THE MEMBER NAME.
C
C 2) THE OUTPUT FILE (UNIT 18) IS NOW OPENED EXTERNAL TO THIS
C ROUTINE.
C
C NOTES: NO ATTEMPT HAS BEEN MADE TO RESTRUCTURE THE ROUTINE. RATHER
C THE MINIMUM AMOUNT OF WORK TO INTEGRATE THE ROUTINE INTO
C ADAS310 HAS BEEN COMPLETED.
C
C-----------------------------------------------------------------------
C
C UNIX-IDL PORT:
C
C VERSION: 1.1 DATE: 16-1-96
C MODIFIED: TIM HAMMOND (TESSELLA SUPPORT SERVICES PLC)
C - FIRST VERSION
C
C VERSION: 1.2 DATE: 17-1-96
C MODIFIED: TIM HAMMOND (TESSELLA SUPPORT SERVICES PLC)
C - CHANGED ACTION=READ TO STATUS=UNKNOWN IN OPEN
C STATEMENT
C
C VERSION: 1.3 DATE: 24-1-96
C MODIFIED: TIM HAMMOND (TESSELLA SUPPORT SERVICES PLC)
C - COMMENTED OUT CALL TO USINFO AS NO LONGER NEEDED
C
C VERSION: 1.4 DATE: 08-02-96
C MODIFIED: TIM HAMMOND (TESSELLA SUPPORT SERVICES PLC)
C - REMOVED SUPERFLUOUS VARIABLES
C
C VERSION: 1.5 DATE: 16-05-07
C MODIFIED: Allan Whiteford
C - Updated comments as part of subroutine documentation
C procedure.
C
C VERSION : 1.6
C DATE : 26-06-2007
C MODIFIED: Hugh Summers
C - Revised for heavy species cx. Changed
C exmemb to full file name exfile.
C - Add LPASS to turn on/off output to unit 18 depending on
C calling routine; adas310 and adas316 have different
C approaches to file management.
C
C-----------------------------------------------------------------------
C
CHARACTER*(*) EXFILE
INTEGER IECION, IEDREC, IERREC, IEXREC
INTEGER IMAX, NMAX, NMIN
INTEGER NREP(NDIM+1)
LOGICAL LPASS
REAL*8 A1CNST, ACNST, ARED(NDIM,NDIM)
REAL*8 BMENER, CIONPT(NDIM), DENS
REAL*8 DENSH, DENSP, DRECPT(NDIM)
REAL*8 DVEC(NDIM), RHS(NDIM), RRECPT(NDIM)
REAL*8 TE, TP, W1
REAL*8 XRECPT(NDIM), Z0, Z1
REAL*8 ZEFF