PROGRAM EXPAND3007 C PUTS THE LINE LIST AND ENERGY LEVELS TOGETHER AND WRITE LINES C IN ONE RECORD FORMAT C ONLY FOR LINES WITH POSITIVE (NOT-PREDICTED) WAVELENGTHS implicit real*8 (a-h,o-z) REAL*8 WL,EJE,EJO,WAVENO CHARACTER*10 ELABJE(20000),ELABJO(20000) CHARACTER*4 REF CHARACTER*10 OTHER1,OTHER2 DIMENSION XJE(20000),LJE(20000),ASUME(20000), 1EJE(20000),WAALSE(20000),STARKE(20000),FSUME(20000),GLANDEE(20000) DIMENSION XJO(20000),LJO(20000),ASUMO(20000), 1EJO(20000),WAALSO(20000),STARKO(20000),FSUMO(20000),GLANDEO(20000) C TAPE1 IS THE *.LIN FILE C TAPE8 IS THE *.GAM FILE C TAPE7 IS THE *.PRE FILE C WRITE(8,996)ELEM,NLINES,NPOS,JJSUML,JJSUMLP,IEION C 996 FORMAT(F5.2,I10,' lines saved',I10,' positive lines saved',I7, C 1' even',I7,' odd levels',I10,' ion pot cm-1') READ(8,1)NLINES,NPOS,NE,NO 1 FORMAT(5X,I10,12X,I10,21X,I7,5X,I7) DO 987 ISKIP=1,23 987 READ(8,1) DO 3 K=1,NE 3 READ(8,2)EJE(K),XJE(K),ELABJE(K),GLANDEE(K),ASUME(K),STARKE(K), 1WAALSE(K) 2 FORMAT(5X,3X,4X,F12.3,F5.1,1X,A10,F7.3,1P3E9.2,0PF10.3) DO 4 K=1,NO 4 READ(8,2)EJO(K),XJO(K),ELABJO(K),GLANDEO(K),ASUMO(K),STARKO(K), 1WAALSO(K) READ(1,5)W,GFLOG,KE,KO,IFPRED,ICODE CODE=FLOAT(ICODE)*.01 ICHARGE=MOD(ICODE,100) NELION=(ICODE/100-1)*6+ICHARGE+1 REF='K89' REF='K94' REF='K98' REF='K99' REF='K00' REF='K03' NBLO=0 NBUP=0 ISO1=0 X1=0. ISO2=0 X2=0. OTHER1=' ' OTHER2=' ' ISOSHIFT=0 REWIND 1 OPEN(UNIT=7,STATUS='NEW',RECL=160,CARRIAGECONTROL='LIST') DO 9 ILINE=1,NLINES READ(1,5)WL,GFLOG,KE,KO,IFPRED C PRINT 5,WL,GFLOG,KE,KO,IFPRED 5 FORMAT(F11.4,F7.3,I5,I5,I1,I4) C IF(IFPRED.EQ.1)GO TO 9 C C THE DAMPING CONSTANTS ARE COMPUTED FROM SUMS OVER ALL POSSIBLE C TRANSITIONS TO A GIVEN LEVEL (KURUCZ, SAO SPECIAL REPORT 390,1981). C THESE SUMS ARE NOT COMPLETE EXCEPT FOR ASUMS FOR LEVELS BELOW C THE LOWEST LEVEL LEFT OUT OF THE CALCULATIONS. CONSULT THE OUTPUT C LISTINGS FOR THE LEAST SQUARES FITS BXXXXE.OUT,BXXXXO.OUT, C CXXXXE.OUT,CXXXXO.OUT TO DETERMINE WHICH CONFIGURATIONS WERE INCLUDED. C THE SUMS SHOULD BE COMPLETE OR NEARLY SO FOR MOST STRONG LINES. C C GAMMAW IS THE DAMPING CONSTANT PER HYDROGEN ATOM FOR VAN DER WAALS C BROADENING BY HYDROGEN AT T=10000K. C =84762*C6**.4 FROM ALLER C FOR HELIUM MULTIPLY BY .42 C FOR H2 MULTIPLY BY .85 C GAMMAS IS THE STARK DAMPING CONSTANT PER ELECTRON ASSUMED TO BE C TEMPERATURE INDEPENDENT C =15385*C4**(2/3) AT 10000K FROM ALLER C GAMMAR=LOG10(ASUME(KE)+ASUMO(KO)) C THESE DAMPING CONSTANTS ARE TOO SMALL C GSLOG=LOG10(15835.*(MAX(ABS(C4P-C4), C 1AMIN1(ABS(C4),ABS(C4P))))**.6666667) C GWLOG=LOG10(84762.*(MAX(ABS(C6P-C6), C 1AMIN1(ABS(C6),ABS(C6P))))**.4) C C TRY SUMMING C GAMMAS=LOG10(15835.*(ABS(STARKE(KE))+ C 1 ABS(STARKO(KO)))**.6666667) C GAMMAW=LOG10(84762.*(ABS(WAALSE(KE))+ABS(WAALSO(KO)))**.4) C C TRY NOT DIFFERENCING GAMMAS=LOG10(15835.*MAX(ABS(STARKE(KE)), 1 ABS(STARKO(KO)),1.D-20)**.6666667) GAMMAW= 1 LOG10(84762.*MAX(ABS(WAALSE(KE)),ABS(WAALSO(KO)),1.D-40)**.4) C WAVENO=ABS(ABS(EJE(KE))-ABS(EJO(KO))) LANDE=GLANDEE(KE)*1000.+.5 IF(LANDE.LT.0)LANDE=GLANDEE(KE)*1000.-.5 LANDEP=GLANDEO(KO)*1000.+.5 IF(LANDEP.LT.0)LANDEP=GLANDEO(KO)*1000.-.5 WRITE(7,140)WL,GFLOG,CODE,EJE(KE),XJE(KE),ELABJE(KE),EJO(KO), 1 XJO(KO),ELABJO(KO),GAMMAR,GAMMAS,GAMMAW,REF,NBLO,NBUP,ISO1,X1, 2 ISO2,X2,OTHER1,OTHER2,LANDE,LANDEP,ISOSHIFT 140 FORMAT(F11.4,F7.3,F6.2,F12.3,F5.1,1X,A10,F12.3,F5.1,1X,A10, 1 F6.2,F6.2,F6.2,A4,I2,I2,I3,F6.3,I3,F6.3,2A10,2I5,I6) 9 CONTINUE CALL EXIT END