The tangential fields at the first boundary are related to those at the
final boundary
by
![]() |
(215) |
![]() |
![]() |
![]() |
(216) |
![]() |
![]() |
![]() |
(217) |
![]() |
![]() |
![]() |
(218) |
![]() |
![]() |
![]() |
(219) |
![]() |
![]() |
![]() |
|
![]() |
![]() |
![]() |
(220) |
![]() |
![]() |
![]() |
(221) |
The reflection and transmission coefficient for p-wave is
![]() |
![]() |
![]() |
(222) |
![]() |
![]() |
![]() |
(223) |
![]() |
![]() |
![]() |
(224) |
![]() |
![]() |
![]() |
(225) |
![]() |
![]() |
![]() |
(226) |
![]() |
![]() |
![]() |
(227) |
![]() |
![]() |
![]() |
(228) |
![]() |
![]() |
![]() |
(229) |
![]() |
![]() |
![]() |
(230) |
![]() |
The SPR resonance calculation FORTRAN90 programs for N-layer system are
c234567-- spr_angle_Nlayer.f --- c 1 | 2 | 3 ... N-2|N-1|N :N layer system c complex calculation implicit real*8 (a-h,o-z) parameter (nlay=10) complex*16 e(nlay) , em(nlay,2,2) ,emtot(2,2) complex*16 emtot1(2,2) dimension en(nlay), ek(nlay), d(nlay) complex*16 beta,q,rp,q1,qn,ref,tp,tra complex*16 fukso c=2.99792458d8 hbar=6.5822d-16 pi=acos(-1.0d0) c ------- N layer ---- nlayer=4 c ------ air ---- en(4)=1.d0 ek(4)=0.0d0 er=en(4)**2-ek(4)**2 ei=2.0d0*en(4)*ek(4) e(4)=dcmplx(er,ei) c ----- SF10 633 nm en(1)=1.723d0 ek(1)=0.0d0 er=en(1)**2-ek(1)**2 ei=2.0d0*en(1)*ek(1) e(1)=dcmplx(er,ei) c ----- gold 633 nm en(2)=0.1726d0 ek(2)=3.4218d0 er=en(2)**2-ek(2)**2 ei=2.0d0*en(2)*ek(2) e(2)=dcmplx(er,ei) c ---- gold thickness (m) d(2)=50.0d-9 c ------ SAM ----------- en(3)=1.61245 ek(3)=0.0d0 er=en(3)**2-ek(3)**2 ei=2.0d0*en(3)*ek(3) e(3)=dcmplx(er,ei) c ----- SAM thickness --- d(3)=1.0d-9 c ramd=633.0d-9 omega=2.0d0*pi/ramd*c fukso=dcmplx(0.0d0,1.0d0) write (6,*) ramd,omega,hbar*omega c --------- angle scan ---------- ang0=35.0d0 ang1=45.0d0 do i=1, 1001 theta=(ang0+dble(i-1)/1000.0d0*(ang1-ang0))/180.0d0*pi q1=sqrt(e(1)-en(1)**2*sin(theta)**2)/e(1) qn=sqrt(e(nlayer)-en(1)**2*sin(theta)**2)/e(nlayer) do j=2, nlayer-1 beta=d(j)*2.0d0*pi/ramd*sqrt(e(j)-en(1)**2*sin(theta)**2) q=sqrt(e(j)-en(1)**2*sin(theta)**2)/e(j) em(j,1,1)=cos(beta) em(j,1,2)=-fukso*sin(beta)/q em(j,2,1)=-fukso*sin(beta)*q em(j,2,2)=cos(beta) enddo emtot(1,1)=dcmplx(1.0d0,0.0d0) emtot(2,2)=dcmplx(1.0d0,0.0d0) emtot(1,2)=dcmplx(0.0d0,0.0d0) emtot(2,1)=dcmplx(0.0d0,0.0d0) do j=2, nlayer-1 emtot1(1,1)=em(j,1,1) emtot1(1,2)=em(j,1,2) emtot1(2,1)=em(j,2,1) emtot1(2,2)=em(j,2,2) emtot=matmul(emtot,emtot1) enddo rp=( (emtot(1,1)+emtot(1,2)*qn)*q1 - & (emtot(2,1)+emtot(2,2)*qn) ) & / ( (emtot(1,1)+emtot(1,2)*qn)*q1 + & (emtot(2,1)+emtot(2,2)*qn) ) tp=2.0d0*q1/( (emtot(1,1)+emtot(1,2)*qn)*q1 + & (emtot(2,1)+emtot(2,2)*qn) ) ref=rp*conjg(rp) tra=tp*conjg(tp)/cos(theta)*en(1)*dble(qn) write (6,*) theta/pi*180.0d0,dble(ref),dble(tra) enddo end