0001
0002 global noCheckSum;
0003 noCheckSum=true;
0004
0005
0006
0007 nNmax=50;
0008
0009
0010 epsilonM=1.77;
0011
0012
0013
0014 scrsz = get(0,'ScreenSize');
0015 figAspectRatio=1;
0016 figHeight=scrsz(4)-150;
0017 figWidth=figAspectRatio*figHeight;
0018 figure('Name','Fig. 6.8', ...
0019 'Position',[(scrsz(3)-figWidth)/2 50 figWidth figHeight]);
0020
0021
0022
0023 aArray=[10,0.1,25,50,50,0.1];
0024 sTitle={'Silver (a=10 nm) in water', ...
0025 'Silver (ESA) in water', ...
0026 'Silver (a=25 nm) in water', ...
0027 'Silver (a=50 nm) in water', ...
0028 'Gold (a=50 nm) in water', ...
0029 'Gold (ESA) in water'};
0030 CYscale={[0.5 4000], [0.5 4000], [0.5 500], ...
0031 [0.1 80], [0.06 100], [0.06 100]};
0032
0033
0034 for nn=1:6
0035
0036 if (nn<=4)
0037 lambdamin=200;
0038 lambdamax=600;
0039
0040 lambda=transpose(lambdamin:1:lambdamax);
0041
0042
0043 epsilonIn=epsAg(lambda);
0044 else
0045 lambdamin=300;
0046 lambdamax=800;
0047
0048 lambda=transpose(lambdamin:1:lambdamax);
0049
0050
0051 epsilonIn=epsAu(lambda);
0052 end
0053
0054
0055 a=aArray(nn);
0056
0057
0058 stM=PweSolveSingleSphere(nNmax,a,lambda,epsilonM,epsilonIn,'noplot','coeff');
0059
0060
0061
0062
0063
0064
0065
0066
0067
0068
0069 stPtO=struct('x',0,'y',0,'z',0);
0070 stPtA=struct('x',a,'y',0,'z',0);
0071 stPtB=struct('x',0,'y',a,'z',0);
0072 stPtC=struct('x',0,'y',0,'z',a);
0073 stPtCp=struct('x',0,'y',0,'z',-a);
0074
0075
0076
0077 stAbn1.an1=stM.alphan1;
0078 stAbn1.bn1=stM.betan1;
0079 stEptO=PweEpts(lambda,epsilonIn,stAbn1,stPtO,'Inside');
0080
0081
0082 stPtArray=[stPtA,stPtB,stPtC,stPtCp];
0083 stEptsOut=PweEpts(lambda,epsilonM,stM,stPtArray,'Outside');
0084
0085
0086 subplot(3,2,nn);
0087 hg=semilogy(lambda,stEptO.MLoc,'-', lambda,stEptsOut(1).MLoc,'-', ...
0088 lambda,stEptsOut(2).MLoc,'--', lambda,stEptsOut(3).MLoc,':', ...
0089 lambda,stEptsOut(4).MLoc,'-.');
0090 set(hg(2),'LineWidth',1.5);
0091 axis([[lambdamin lambdamax] CYscale{nn}]);
0092 title(sTitle{nn});
0093 legend({'O','A','B','C','C'''});
0094 xlabel('Wavelength [nm]');
0095 ylabel('M_{Loc}');
0096 end