向理想导体垂直入射
黑色为入射波
绿色为反射波
红色为入射波与反射波的叠加
注释不一定写对了,请谨慎观看
u0 = 14400*pi^2; %设置理想介质1的磁导率大小
e0 = 1; %设置理想介质1的介电常数大小
u1 = 0; %设置理想导体2的磁导率大小
e1 = 1; %设置理想导体2的介电常数大小
H=5; %设置入射电磁波振幅大小
w = pi/10000; %设置入射电磁波角频率大小
ni1 = (u0/e0)*0.5; %根据公式η=(u/e)^0.5计算理想介质1的波阻抗η1
ni2 = (u1/e1)*0.5; %根据公式η=(u/e)^0.5计算理想导体2的波阻抗η2
k1 = (u0*e0)^0.5*w; %根据公式k=(u*e)^0.5*w计算理想介质1的波数k1
k2 = (u1*e1)^0.5*w; %根据公式k=(u*e)^0.5*w计算理想导体2的波数k2
TAO = (ni2-ni1)/(ni2+ni1);%根据公式r=(2-n1)/(n2+n1)计算理想介质1到2的反射系数tao
TOU = 2*ni2/(ni2+ni1); %根据公式t=2*n2/(n2+n1)计算理想介质1到2的透射系数tou
num1=0; %用于入射波的数据点计数
num2=0; %用于反射波和合成波的数据点计数
num3=0; %用于透射波的数据点计数
%% 仿真图绘制
for t=1:50:50000 %设置循环次数,即时间变量
%% 公式程序化
z1 = -100:1/3:0; %设置z负轴坐标范围,即空间变量,z=0为理想介质分界面
z2 = 0:1/3:100; %设置z正轴坐标范围,即空间变量,z=0为理想介质分界面
Ei = H*cos(w*t-k1*z1+pi/5*4); %计算入射波
Er = TAO*H*cos(w*t+k1*z1-pi/5*4); %计算反射波
Et = TOU*H*cos(w*t-k2*z2+pi/5*4); %计算透射波
Ez = Ei + Er; %计算合成波
%% 图像参考轴线设置
plot([-100,100],[0,0],'k','LineWidth',4); %设置z轴参考轴线
hold on
plot([0,0],[-15,15],'k','LineWidth',4); %设置x轴参考轴线
hold on
%% 电磁波传播图像绘制
if t<length(z1) %判断平面波是否传播到理想介质分界面z=0
if num1<length(z1) %判断入射波是否垂直入射理想介质分界面
num1=num1+1; %入射波的数据点计数加一
for a=t:length(z1) %模拟入射波的传播,将未传播到的地方置零
Ei(a)=0;
end
end
end
plot(z1, Ei,'k','LineWidth',2); %绘制入射波图像
if t>length(z1) %%判断平面波是否传播到理想介质分界面z=0
if num2<length(z1) %判断反射波和合成波是否产生
num2=num2+1; %反射波的数据点计数加一
for b=1:length(z1)-num2 %模拟反射波和合成波的传播,将未传播到的地方置零
Er(b)=0;
Ez(b)=0;
end
end
plot(z1, Er,'g','LineWidth',2); %绘制反射波图像
plot(z1, Ez,'r','LineWidth',4); %绘制合成波图像
if num3<length(z2) %判断透射波是否产生
num3=num3+1; %透射波的数据点计数加一
for c=t-length(z1):length(z2) %模拟透射波的传播,将未传播到的地方置零
Et(c)=0;
end
end
plot(z2, Et,'k','LineWidth',2); %绘制透射波图像
end
hold off;
drawnow; %更新图像画面
end
向理想导体垂直入射
粗黑色为入射波
细黑色为透射波
蓝色为反射波
红色为入射波与反射波的叠加
u0 = 120*pi; %设置理想介质1的磁导率大小
e0 = 1; %设置理想介质1的介电常数大小
u1 = 120*pi; %设置理想介质2的磁导率大小
e1 = 9; %设置理想介质2的介电常数大小
H=5; %设置入射电磁波振幅大小
w = pi/300; %设置入射电磁波角频率大小
ni1 = (u0/e0)*0.5; %根据公式η=(u/e)^0.5计算理想介质1的波阻抗η1
ni2 = (u1/e1)*0.5; %根据公式η=(u/e)^0.5计算理想介质2的波阻抗η2
k1 = (u0*e0)^0.5*w; %根据公式k=(u*e)^0.5*w计算理想介质1的波数k1
k2 = (u1*e1)^0.5*w; %根据公式k=(u*e)^0.5*w计算理想介质2的波数k2
TAO = (ni2-ni1)/(ni2+ni1);%根据公式r=(2-n1)/(n2+n1)计算理想介质1到2的反射系数tao
TOU = 2*ni2/(ni2+ni1); %根据公式t=2*n2/(n2+n1)计算理想介质1到2的透射系数tou
num1=0; %用于入射波的数据点计数
num2=0; %用于反射波和合成波的数据点计数
num3=0; %用于透射波的数据点计数
%% 仿真图绘制
for t=1:5:7000 %设置循环次数,即时间变量
%% 公式程序化
z1 = -100:1/3:0; %设置z负轴坐标范围,即空间变量,z=0为理想介质分界面
z2 = 0:1/3:100; %设置z正轴坐标范围,即空间变量,z=0为理想介质分界面
Ei = H*cos(w*t-k1*z1+pi/5*4); %计算入射波
Er = TAO*H*cos(w*t+k1*z1-pi/5*4); %计算反射波
Et = TOU*H*cos(w*t-k2*z2+pi/5*4); %计算透射波
Ez = Ei + Er; %计算合成波
%% 图像参考轴线设置
plot([-100,100],[0,0],'k','LineWidth',4); %设置z轴参考轴线
hold on
plot([0,0],[-15,15],'k','LineWidth',4); %设置x轴参考轴线
hold on
%% 电磁波传播图像绘制
if t<length(z1) %判断平面波是否传播到理想介质分界面z=0
if num1<length(z1) %判断入射波是否垂直入射理想介质分界面
num1=num1+1; %入射波的数据点计数加一
for a=t:length(z1) %模拟入射波的传播,将未传播到的地方置零
Ei(a)=0;
end
end
end
plot(z1, Ei,'k','LineWidth',2); %绘制入射波图像
if t>length(z1) %%判断平面波是否传播到理想介质分界面z=0
if num2<length(z1) %判断反射波和合成波是否产生
num2=num2+1; %反射波的数据点计数加一
for b=1:length(z1)-num2 %模拟反射波和合成波的传播,将未传播到的地方置零
Er(b)=0;
Ez(b)=0;
end
end
plot(z1, Er,'b','LineWidth',2); %绘制反射波图像
plot(z1, Ez,'r','LineWidth',4); %绘制合成波图像
if num3<length(z2) %判断透射波是否产生
num3=num3+1; %透射波的数据点计数加一
for c=t-length(z1):length(z2) %模拟透射波的传播,将未传播到的地方置零
Et(c)=0;
end
end
plot(z2, Et,'k','LineWidth',1); %绘制透射波图像
end
hold off;
drawnow;%更新图像画面
end