Extract the backward sputtering matrix / energy-angle correlation block.
This commit is contained in:
+125
-97
@@ -2665,105 +2665,15 @@ C
|
||||
C
|
||||
C BACKWARD SPUTTERING : MATRICES , ENERGY - ANGLE CORRELATIONS
|
||||
C
|
||||
IF(ISPA.LT.10000) GO TO 1900
|
||||
DO J=1,JT(3)
|
||||
EASL(2,J)=DBLE(MEASL(2,21,J))/(DBLE(NH)*0.1)
|
||||
DO IESLOG=3,74
|
||||
EASL(IESLOG,J)=DBLE(MEASL(IESLOG,21,J))/(TEMPNH*10.D0
|
||||
& **((IESLOG-1)/12.D0))
|
||||
ENDDO
|
||||
ENDDO
|
||||
DO 1852 J=1,NJ(1)
|
||||
WRITE(21,1854) J
|
||||
1854 FORMAT(//,' LOG ENERGY - COS OF EMISSION ANGLE (0.05 STEPS) (BAC
|
||||
&KWARD SPUTTERED PARTICLES) ; 1. LAYER ; SPECIES',I2/)
|
||||
do ima = 74,2,-1
|
||||
if(measl(ima,21,j).ne.0) goto 1855
|
||||
enddo
|
||||
ima = 1
|
||||
1855 ima = min(ima+2,74)
|
||||
do ies = 1, ima
|
||||
write (6, 1858) elog(ies), (measl(ies,ias,j),ias=1,21),
|
||||
& easl(ies,j)
|
||||
enddo
|
||||
write (6, 1858) elog(75), (measl(75,ias,j),ias=1,21),easl(75,j)
|
||||
call writeBackwardSputterMatrixSummary(ISPA,NH,JT,NJ,EASL,
|
||||
& MEASL,TEMPNH,ELOG,MEAS,MAXD1,ALPHA,NGIK,DGI,MEAGS,
|
||||
& MAGSA,MAGS,L,ISPAL,MAXNL,MAXD2,MAXNLm15)
|
||||
C
|
||||
C Shared matrix output formats used by the remaining inline matrix
|
||||
C output sections. Copies are kept inside the extracted subroutine.
|
||||
C
|
||||
1858 FORMAT(1X,1E12.4,20I5,I6,1E12.4)
|
||||
WRITE(21,1884) J
|
||||
1884 FORMAT(//,' ENERGY(E/E0 IN %) - ',
|
||||
& 'POLAR ANGLE IN COS-INTERVALS (0.05) ',
|
||||
& '(BACKWARD SPUTTERED PARTICLES) , 1.LAYER , SPECIES',I2/)
|
||||
do ima = MAXD1,1,-1
|
||||
if(meas(ima,22,j).ne.0) goto 1883
|
||||
enddo
|
||||
ima = 1
|
||||
1883 ima = min(ima+2,MAXD1)
|
||||
write (6, 1886) ((meas(iesp,iags,j),iags=1,22),iesp=1,ima)
|
||||
write (6, 1886) (meas(102,iags,j),iags=1,22)
|
||||
1886 FORMAT(1X,I3,20I6,I8)
|
||||
IF(ALPHA.LT.1.) GO TO 1878
|
||||
DO 1870 IG2=1,NGIK,1
|
||||
EEE = IG2*DGI
|
||||
WRITE(21,1872) EEE,J
|
||||
1872 FORMAT(//,' ENERGY(E/E0 IN %) - ',
|
||||
& 'POLAR ANGLE IN COS-INTERVALS (0.05) ',
|
||||
& 'AT AZIMUTHAL ANGLE =',F5.1,
|
||||
& ' (BACKWARD SPUTTERED ATOMS) , 1.LAYER , SPECIES',I2/)
|
||||
do ima = MAXD1,1,-1
|
||||
if(meags(ima,ig2,22,j).ne.0) goto 1885
|
||||
enddo
|
||||
ima = 1
|
||||
1885 ima = min(ima+2,MAXD1)
|
||||
do iesp = 1, ima
|
||||
write (6, 1886) (meags(iesp,ig2,iags,j),iags=1,22)
|
||||
end do
|
||||
write (6, 1886) (meags(102,ig2,iags,j),iags=1,22)
|
||||
1870 CONTINUE
|
||||
WRITE(21,1889) J
|
||||
1889 FORMAT(//,' AZIMUTHAL ANGLE - POLAR ANGLE IN DEGREES ',
|
||||
& '(BACKWARD SPUTTERED PARTICLES) , 1.LAYER , SPECIES',I2/)
|
||||
WRITE(21,1887) ((MAGSA(IG,IA,J),IA=1,32),IG=1,62)
|
||||
1887 FORMAT(1X,31I4,I6)
|
||||
1878 CONTINUE
|
||||
WRITE(21,1888) J
|
||||
1888 FORMAT(//,' AZIMUTHAL ANGLE - POLAR ANGLE IN COS-INTERVALS ',
|
||||
& '(0.05) ',
|
||||
& ' (BACKWARD SPUTTERED PARTICLES) , 1.LAYER , SPECIES',I2/)
|
||||
WRITE(21,1886) ((MAGS(IG,IAGS,J),IAGS=1,22),IG=1,62)
|
||||
1852 CONTINUE
|
||||
IF(L.EQ.1) GO TO 1900
|
||||
if(ispal(2).eq.0) goto 1900
|
||||
DO 1862 J=NJ(1)+1,JT(3)
|
||||
WRITE(21,1864) J-NJ(1)
|
||||
1864 FORMAT(//,' LOG ENERGY - COS OF EMISSION ANGLE (0.05 STEPS) ',
|
||||
& '(BACKWARD SPUTTERED PARTICLES) , 2. LAYER , SPECIES',I2/)
|
||||
do ima = 74,1,-1
|
||||
if(measl(ima,21,j).ne.0) goto 1865
|
||||
enddo
|
||||
ima = 1
|
||||
1865 ima = min(ima+2,74)
|
||||
do ies = 1, ima
|
||||
write (6, 1858) elog(ies),(measl(ies,ias,j),ias=1,21),
|
||||
& easl(ies,j)
|
||||
enddo
|
||||
write (6, 1858) elog(75),(measl(75,ias,j),ias=1,21),easl(75,j)
|
||||
WRITE(21,1894) J-NJ(1)
|
||||
1894 FORMAT(//,' ENERGY(E/E0 IN %) - POLAR ANGLE IN COS-INTERVALS ',
|
||||
& '(0.05) (BACKWARD SPUTTERED PARTICLES) , 2.LAYER , SPECIES',
|
||||
& I2/)
|
||||
do ima = MAXD1,1,-1
|
||||
if(meas(ima,22,j).ne.0) goto 1895
|
||||
enddo
|
||||
ima = 1
|
||||
1895 ima = min(ima+2,MAXD1)
|
||||
WRITE(21,1886)((meas(iesp,iags,j),iags=1,22),iesp=1,ima)
|
||||
WRITE(21,1886)(meas(102,iags,j),iags=1,22)
|
||||
WRITE(21,1898) J-NJ(1)
|
||||
1898 FORMAT(//,' AZIMUTHAL ANGLE - POLAR ANGLE IN COS-INTERVALS ',
|
||||
& '(0.05) ',
|
||||
1 ' (BACKWARD SPUTTERED PARTICLES) , 2.LAYER , SPECIES',I2/)
|
||||
WRITE(21,1886) ((MAGS(IG,IAGS,J),IAGS=1,22),IG=1,62)
|
||||
1862 CONTINUE
|
||||
1900 CONTINUE
|
||||
C
|
||||
C FORWARD SPUTTERING : MATRICES , ENERGY - ANGLE CORRELATIONS
|
||||
C
|
||||
@@ -3042,6 +2952,124 @@ C=======================================================================
|
||||
C OUTPUT WRITER SUBROUTINES
|
||||
C=======================================================================
|
||||
|
||||
C
|
||||
C Write backward sputtering matrix and energy-angle correlation tables.
|
||||
C
|
||||
subroutine writeBackwardSputterMatrixSummary(ISPA,NH,JT,NJ,
|
||||
& EASL,MEASL,TEMPNH,ELOG,MEAS,MAXD1,ALPHA,NGIK,DGI,
|
||||
& MEAGS,MAGSA,MAGS,L,ISPAL,MAXNL,MAXD2,MAXNLm15)
|
||||
implicit none
|
||||
integer*4 ISPA,NH,MAXD1,NGIK,L,MAXNL,MAXD2,MAXNLm15
|
||||
integer*4 J,IESLOG,IMA,IES,IAS,IESP,IAGS,IG2,IG,IA
|
||||
integer*4 JT(MAXNL),NJ(MAXNL),ISPAL(MAXNL)
|
||||
integer*4 MEASL(75,21,MAXNLm15),MEAS(MAXD2,22,MAXNLm15)
|
||||
integer*4 MEAGS(MAXD2,12,22,MAXNLm15)
|
||||
integer*4 MAGSA(62,32,MAXNLm15),MAGS(62,22,MAXNLm15)
|
||||
real*8 EASL(75,MAXNLm15),TEMPNH,ELOG(75),ALPHA,DGI,EEE
|
||||
|
||||
IF(ISPA.LT.10000) GO TO 1900
|
||||
DO J=1,JT(3)
|
||||
EASL(2,J)=DBLE(MEASL(2,21,J))/(DBLE(NH)*0.1)
|
||||
DO IESLOG=3,74
|
||||
EASL(IESLOG,J)=DBLE(MEASL(IESLOG,21,J))/(TEMPNH*10.D0
|
||||
& **((IESLOG-1)/12.D0))
|
||||
ENDDO
|
||||
ENDDO
|
||||
DO 1852 J=1,NJ(1)
|
||||
WRITE(21,1854) J
|
||||
1854 FORMAT(//,' LOG ENERGY - COS OF EMISSION ANGLE (0.05 STEPS) (BAC
|
||||
&KWARD SPUTTERED PARTICLES) ; 1. LAYER ; SPECIES',I2/)
|
||||
do ima = 74,2,-1
|
||||
if(measl(ima,21,j).ne.0) goto 1855
|
||||
enddo
|
||||
ima = 1
|
||||
1855 ima = min(ima+2,74)
|
||||
do ies = 1, ima
|
||||
write (6, 1858) elog(ies), (measl(ies,ias,j),ias=1,21),
|
||||
& easl(ies,j)
|
||||
enddo
|
||||
write (6, 1858) elog(75), (measl(75,ias,j),ias=1,21),easl(75,j)
|
||||
1858 FORMAT(1X,1E12.4,20I5,I6,1E12.4)
|
||||
WRITE(21,1884) J
|
||||
1884 FORMAT(//,' ENERGY(E/E0 IN %) - ',
|
||||
& 'POLAR ANGLE IN COS-INTERVALS (0.05) ',
|
||||
& '(BACKWARD SPUTTERED PARTICLES) , 1.LAYER , SPECIES',I2/)
|
||||
do ima = MAXD1,1,-1
|
||||
if(meas(ima,22,j).ne.0) goto 1883
|
||||
enddo
|
||||
ima = 1
|
||||
1883 ima = min(ima+2,MAXD1)
|
||||
write (6, 1886) ((meas(iesp,iags,j),iags=1,22),iesp=1,ima)
|
||||
write (6, 1886) (meas(102,iags,j),iags=1,22)
|
||||
1886 FORMAT(1X,I3,20I6,I8)
|
||||
IF(ALPHA.LT.1.) GO TO 1878
|
||||
DO 1870 IG2=1,NGIK,1
|
||||
EEE = IG2*DGI
|
||||
WRITE(21,1872) EEE,J
|
||||
1872 FORMAT(//,' ENERGY(E/E0 IN %) - ',
|
||||
& 'POLAR ANGLE IN COS-INTERVALS (0.05) ',
|
||||
& 'AT AZIMUTHAL ANGLE =',F5.1,
|
||||
& ' (BACKWARD SPUTTERED ATOMS) , 1.LAYER , SPECIES',I2/)
|
||||
do ima = MAXD1,1,-1
|
||||
if(meags(ima,ig2,22,j).ne.0) goto 1885
|
||||
enddo
|
||||
ima = 1
|
||||
1885 ima = min(ima+2,MAXD1)
|
||||
do iesp = 1, ima
|
||||
write (6, 1886) (meags(iesp,ig2,iags,j),iags=1,22)
|
||||
end do
|
||||
write (6, 1886) (meags(102,ig2,iags,j),iags=1,22)
|
||||
1870 CONTINUE
|
||||
WRITE(21,1889) J
|
||||
1889 FORMAT(//,' AZIMUTHAL ANGLE - POLAR ANGLE IN DEGREES ',
|
||||
& '(BACKWARD SPUTTERED PARTICLES) , 1.LAYER , SPECIES',I2/)
|
||||
WRITE(21,1887) ((MAGSA(IG,IA,J),IA=1,32),IG=1,62)
|
||||
1887 FORMAT(1X,31I4,I6)
|
||||
1878 CONTINUE
|
||||
WRITE(21,1888) J
|
||||
1888 FORMAT(//,' AZIMUTHAL ANGLE - POLAR ANGLE IN COS-INTERVALS ',
|
||||
& '(0.05) ',
|
||||
& ' (BACKWARD SPUTTERED PARTICLES) , 1.LAYER , SPECIES',I2/)
|
||||
WRITE(21,1886) ((MAGS(IG,IAGS,J),IAGS=1,22),IG=1,62)
|
||||
1852 CONTINUE
|
||||
IF(L.EQ.1) GO TO 1900
|
||||
if(ispal(2).eq.0) goto 1900
|
||||
DO 1862 J=NJ(1)+1,JT(3)
|
||||
WRITE(21,1864) J-NJ(1)
|
||||
1864 FORMAT(//,' LOG ENERGY - COS OF EMISSION ANGLE (0.05 STEPS) ',
|
||||
& '(BACKWARD SPUTTERED PARTICLES) , 2. LAYER , SPECIES',I2/)
|
||||
do ima = 74,1,-1
|
||||
if(measl(ima,21,j).ne.0) goto 1865
|
||||
enddo
|
||||
ima = 1
|
||||
1865 ima = min(ima+2,74)
|
||||
do ies = 1, ima
|
||||
write (6, 1858) elog(ies),(measl(ies,ias,j),ias=1,21),
|
||||
& easl(ies,j)
|
||||
enddo
|
||||
write (6, 1858) elog(75),(measl(75,ias,j),ias=1,21),easl(75,j)
|
||||
WRITE(21,1894) J-NJ(1)
|
||||
1894 FORMAT(//,' ENERGY(E/E0 IN %) - POLAR ANGLE IN COS-INTERVALS ',
|
||||
& '(0.05) (BACKWARD SPUTTERED PARTICLES) , 2.LAYER , SPECIES',
|
||||
& I2/)
|
||||
do ima = MAXD1,1,-1
|
||||
if(meas(ima,22,j).ne.0) goto 1895
|
||||
enddo
|
||||
ima = 1
|
||||
1895 ima = min(ima+2,MAXD1)
|
||||
WRITE(21,1886)((meas(iesp,iags,j),iags=1,22),iesp=1,ima)
|
||||
WRITE(21,1886)(meas(102,iags,j),iags=1,22)
|
||||
WRITE(21,1898) J-NJ(1)
|
||||
1898 FORMAT(//,' AZIMUTHAL ANGLE - POLAR ANGLE IN COS-INTERVALS ',
|
||||
& '(0.05) ',
|
||||
1 ' (BACKWARD SPUTTERED PARTICLES) , 2.LAYER , SPECIES',I2/)
|
||||
WRITE(21,1886) ((MAGS(IG,IAGS,J),IAGS=1,22),IG=1,62)
|
||||
1862 CONTINUE
|
||||
1900 CONTINUE
|
||||
|
||||
return
|
||||
end
|
||||
|
||||
C
|
||||
C Write angular distributions for transmission sputtered particles.
|
||||
C
|
||||
|
||||
Reference in New Issue
Block a user