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