色散:完美導體波導 (3D)

設定參數

3D

設定總大小 x : 300 nm, y : 400 nm

設定為softsource ,波源設定載入,波源位置隨機定義如下

LoadSource(ib/2+3,jb/2+3,1)=1;

LoadSource(ib/3+3,jb/4+3,1)=1;

LoadSource(ib/3-3,jb/4-3,1)=1;

波導四週設定為 PEC

勾選 ☑ E,H,V,I (FFT) : 量測電場、磁場、電壓、電流

【指令輸入方塊】輸入以下程式碼,然後按【執行】,確定好結構無誤的話後再按【輸出結構】

%------------探測磁場 1 Probe Magnetic 1------------

% direction 1(Hx),2(Hy),3(Hz),4(|H|)

direction=2;

x1=(ib/2+1)*gdx;

x2=(ib/2+1)*gdx;

y1=(jcenter)*gdy;

y2=(jcenter)*gdy;

z1=(kcenter)*gdz;

z2=(kcenter)*gdz;

probe_magnetic(1,:)=[x1,x2,y1,y2,z1,z2,direction];

%----------------------------------

%------------探測磁場 2 Probe Magnetic 1------------

% direction 1(Hx),2(Hy),3(Hz),4(|H|)

direction=2;

x1=(ib/3+1)*gdx;

x2=(ib/3+1)*gdx;

y1=(jcenter)*gdy;

y2=(jcenter)*gdy;

z1=(kcenter)*gdz;

z2=(kcenter)*gdz;

probe_magnetic(2,:)=[x1,x2,y1,y2,z1,z2,direction];

%----------------------------------

%------------探測磁場 3 Probe Magnetic 1------------

% direction 1(Hx),2(Hy),3(Hz),4(|H|)

direction=2;

x1=(ib/4+1)*gdx;

x2=(ib/4+1)*gdx;

y1=(jcenter)*gdy;

y2=(jcenter)*gdy;

z1=(kcenter)*gdz;

z2=(kcenter)*gdz;

probe_magnetic(3,:)=[x1,x2,y1,y2,z1,z2,direction];

%----------------------------------

%------------探測電場 1 Probe Electric 1------------

% direction 1(Ex),2(Ey),3(Ez),4(|E|)

direction=3;

x1=(ib/2+1)*gdx;

x2=(ib/2+1)*gdx;

y1=(jcenter)*gdy;

y2=(jcenter)*gdy;

z1=(kcenter)*gdz;

z2=(kcenter)*gdz;

probe_electric(1,:)=[x1,x2,y1,y2,z1,z2,direction];

%----------------------------------

%------------探測電場 2 Probe Electric 1------------

% direction 1(Ex),2(Ey),3(Ez),4(|E|)

direction=3;

x1=(ib/3+1)*gdx;

x2=(ib/3+1)*gdx;

y1=(jcenter)*gdy;

y2=(jcenter)*gdy;

z1=(kcenter)*gdz;

z2=(kcenter)*gdz;

probe_electric(2,:)=[x1,x2,y1,y2,z1,z2,direction];

%----------------------------------

%------------探測電場 3 Probe Electric 1------------

% direction 1(Ex),2(Ey),3(Ez),4(|E|)

direction=3;

x1=(ib/4+1)*gdx;

x2=(ib/4+1)*gdx;

y1=(jcenter)*gdy;

y2=(jcenter)*gdy;

z1=(kcenter)*gdz;

z2=(kcenter)*gdz;

probe_electric(1,:)=[x1,x2,y1,y2,z1,z2,direction];

%----------------------------------

LoadSource(ib/2+3,jb/2+3,1)=1;

LoadSource(ib/3+3,jb/4+3,1)=1;

LoadSource(ib/3-3,jb/4-3,1)=1;

因為使用 探測場Probe,所以不需要勾選 穩態場輸出 (Output Steady State - Fields) -(Poynting DFT)。

運算結束後

分析結果(Result Analysis)

【指令輸入方塊】輸入以下程式碼,然後按【執行】

Probes=N_Probed_E_Td(1,:,:);

%Probes=N_Probed_E_Td(4:6,:,:);

FieldMax=0.025*max(Probes(:))

max_band_number=20

Mode_Analysis(Probes,FieldMax,max_band_number)

figure(1);

hold on;

plot(betaz,Eigen_omega(:,:),'r*');

hold off;

figure(1);xlabel('k vector');ylabel('omega');

number=1000;

beta=2*pi./lambda_end+(2*pi/lambda_start-2*pi/lambda_end)./(number-1).*(1:number-1);

kz=beta;

a=(ib-1)*dx;

b=(jb-1)*dy;

cc2=cc*cc;

figure(1);hold on;

plot(kz,cc*kz);

hold off;

m=0;

n=1;

w=(cc2*kz.^2+cc2*(m*pi/a)^2+cc2*(n*pi/b)^2).^0.5;

figure(1); hold on;

%plot(kz,w,'b')

hold off;

m=1;

n=1;

w=(cc2*kz.^2+cc2*(m*pi/a)^2+cc2*(n*pi/b)^2).^0.5;

figure(1); hold on;

plot(kz,w,'b')

hold off;

m=1

n=2;

w=(cc2*kz.^2+cc2*(m*pi/a)^2+cc2*(n*pi/b)^2).^0.5;

figure(1); hold on;

plot(kz,w,'b')

hold off;

m=2

n=1;

w=(cc2*kz.^2+cc2*(m*pi/a)^2+cc2*(n*pi/b)^2).^0.5;

figure(1); hold on;

plot(kz,w,'b')

hold off;

m=2

n=2;

w=(cc2*kz.^2+cc2*(m*pi/a)^2+cc2*(n*pi/b)^2).^0.5;

figure(1); hold on;

plot(kz,w,'b')

hold off;

m=2

n=3

w=(cc2*kz.^2+cc2*(m*pi/a)^2+cc2*(n*pi/b)^2).^0.5;

figure(1); hold on;

plot(kz,w,'b')

hold off;

m=3

n=3

w=(cc2*kz.^2+cc2*(m*pi/a)^2+cc2*(n*pi/b)^2).^0.5;

figure(1); hold on;

plot(kz,w,'b')

hold off;

m=3

n=4

w=(cc2*kz.^2+cc2*(m*pi/a)^2+cc2*(n*pi/b)^2).^0.5;

figure(1); hold on;

plot(kz,w,'b')

hold off;

m=3

n=5

w=(cc2*kz.^2+cc2*(m*pi/a)^2+cc2*(n*pi/b)^2).^0.5;

figure(1); hold on;

plot(kz,w,'b')

hold off;

title('完美導體矩形波導色散關係曲線')

ylabel('ω');

xlabel('k');

axis([0 6e7 0 2e16]);

結果可看到CompactFDTD漏掉不少模態,改善的方式有增加計算時間、或更換激發波源的位置、觀察點等。