PROGRAM silicon implicit none integer i,j,k real*8 xkxH,xk,xkcell,amu,sumkH,Zsum,r,ZI,ZII,Zcell,Zsol real*8 ZoZsolcell,XkoHcell,nratsol,nratcell real*8 ss,sms,sc,smc dimension xkxH(31),xk(31),xkcell(31),amu(31) c to be sure we normalize to the solar value properly given that the c data from Draine do not include all metals; we account for using c element "31" Zsol = 0.018 c populate the primordial solar abundance mass fraction ratios c relative to H mass fraction; data from Drain 2011 c xk/xH Elem Ref xkxH(1) = 1.0d0 ! H xkxH(2) = 3.82d-01 ! He photospheric xkxH(3) = 1.38d-08 ! Li meteoric xkxH(4) = 1.97d-10 ! Be met xkxH(5) = 7.31d-09 ! B met xkxH(6) = 3.54d-03 ! C photo xkxH(7) = 1.04d-03 ! N photo xkxH(8) = 8.59d-03 ! O photo xkxH(9) = 5.48d-07 ! F met xkxH(10) = 1.88d-03 ! Ne photo xkxH(11) = 4.96d-05 ! Na met xkxH(12) = 1.06d-03 ! Mg photo xkxH(13) = 8.85d-05 ! Al met xkxH(14) = 9.07d-04 ! Si photo xkxH(15) = 1.00d-05 ! P photo xkxH(16) = 4.63d-04 ! S photo xkxH(17) = 6.60d-06 ! Cl met xkxH(18) = 1.10d-04 ! Ar photo xkxH(19) = 5.15d-06 ! K met xkxH(20) = 8.57d-05 ! Ca met xkxH(21) = 5.53d-08 ! Sc met xkxH(22) = 4.27d-06 ! Ti met xkxH(23) = 5.09d-07 ! V met xkxH(24) = 2.49d-05 ! Cr met xkxH(25) = 1.82d-05 ! Mn met xkxH(26) = 1.94d-03 ! Fe photo xkxH(27) = 4.97d-06 ! Co met xkxH(28) = 1.02d-04 ! Ni met xkxH(29) = 1.24d-06 ! Cu met xkxH(30) = 3.06d-06 ! Zn met xkxH(31) = 0.00d+00 ! sum of those heavier than Zn (must = 0 here) c atomic mass in amu; data from NIST amu(1) = 1.0794d0 ! H amu(2) = 4.002602d0 ! He amu(3) = 6.941d0 ! Li amu(4) = 9.012182d0 ! Be amu(5) = 10.811d0 ! B amu(6) = 12.0107d0 ! C amu(7) = 14.0067d0 ! N amu(8) = 15.9994d0 ! O amu(9) = 18.9984032d0 ! F amu(10) = 20.1719d0 ! Ne amu(11) = 22.989770d0 ! Na amu(12) = 24.3050d0 ! Mg amu(13) = 26.981538d0 ! Al amu(14) = 28.0855d0 ! Si amu(15) = 30.973761d0 ! P amu(16) = 32.065d0 ! S amu(17) = 35.453d0 ! Cl amu(18) = 39.948d0 ! Ar amu(19) = 39.0938d0 ! K amu(20) = 40.078d0 ! Ca amu(21) = 44.955910d0 ! Sc amu(22) = 47.867d0 ! Ti amu(23) = 50.9415d0 ! V amu(24) = 51.9961d0 ! Cr amu(25) = 54.938049d0 ! Mn amu(26) = 55.845d0 ! Fe amu(27) = 58.933200d0 ! Co amu(28) = 58.6934d0 ! Ni amu(29) = 63.546d0 ! Cu amu(30) = 65.409d0 ! Zn amu(31) = 1.0d0 ! this is a dummy calue and never gets used c --------------------------------------------------------------------- c 1. GET THE SOLAR NUMBERS SCALED PROPERLY c --------------------------------------------------------------------- c convert Draine's solar xkxh to xk sumkH = 0.0 Zsum = 0.0 DO k=1,31 ! note sum is from 1-31, all species sumkH = sumkH + xkxH(k) ENDDO DO k=1,31 ! note sum is from 1-31, all species xk(k) = xkxH(k)/sumkH IF (k.ge.3) Zsum = Zsum + xk(k) ENDDO c conserve mass fraction to obtain cell xk(1) and xk(2), assume a c constant xHe/xH ratio, called r; then determine xk(31) to account c for the metals not included in Draine's data r = xk(2)/xk(1) xk(1) = (1.0-Zsol)/(1.0+r) xk(2) = r*xk(1) xk(31) = Zsol - Zsum c check your work WRITE(6,*) 'Sol: hydrogen = ',xk(1) WRITE(6,*) 'Sol: helium = ',xk(2) WRITE(6,*) 'Sol: metals = ',Zsum+xk(31) WRITE(6,*) 'should equal = ',Zsol WRITE(6,*) c --------------------------------------------------------------------- c 2. COMPUTE THE METALLICITY OF THE CELL c --------------------------------------------------------------------- c assume a metallicity for the cell, call it Zcell ZII = 0.0021208 ZI = 9.99d-5 Zcell = ZII + ZI c now conserve mass fraction to obtain cell xkcell(1) and xkcell(2), c assume a constant xHe/xH ratio, called r; then normalize the c individual species mass fractions to the cell metal mass fraction c and thus obtain the individual mass fractions for the cell Zsum = 0.0 r = xk(2)/xk(1) xkcell(1) = (1.0-Zcell)/(1.0+r) xkcell(2) = r*xkcell(1) DO k=3,31 ! note sum is from 3-31, metals only xkcell(k) = xk(k) * (Zcell/Zsol) Zsum = Zsum + xkcell(k) ENDDO c check your work WRITE(6,*) 'Cell: hydrogen = ',xkcell(1) WRITE(6,*) 'Cell: helium = ',xkcell(2) WRITE(6,*) 'Cell: metals = ',Zsum WRITE(6,*) 'should equal = ',Zcell c compute the cell metallicty, i.e., Z/Zsol ZoZsolcell = (Zcell/xkcell(1)) / (Zsol/xk(1)) c compute [Si/H] (k=14) k = 14 nratsol = (xk(k)/amu(k)) / (xk(1)/amu(1)) nratcell = (xkcell(k)/amu(k)) / (xkcell(1)/amu(1)) XkoHcell = log10(nratcell) - log10(nratsol) c communicate the prize WRITE(6,*) 'Cell: Z/Zsol = ',ZoZsolcell WRITE(6,*) ' for k = ',k WRITE(6,*) 'Cell: Xk/Zsol = ',XkoHcell STOP 600 FORMAT(1x,4(2x,1pe10.2)) END