电磁场仿真实验【matlab】电磁波的反射干涉

实验: 电磁波的反射干涉
实验:静电场的边值问题
实验:带电粒子在磁场中的受力
实验:电磁波的极化

1. 平面电磁波向理想导体垂直入射的仿真

Matlab代码(静态效果):
miu1=4*pi*1e-7;
epsilong1=1e-9/(36*pi);
Ei0=5;
w=2*pi*1e8;
z=[-20:0.1:0];
m0=zeros(size(z));
k1=w*sqrt(miu1*epsilong1);
niu1=sqrt(miu1/epsilong1);
t=100;
Ei=Ei0*cos(w*t-k1*z);
Hi=Ei0*cos(w*t-k1*z)/niu1;
Er0=-Ei0;
Er=Er0*cos(w*t+k1*z);
Hr=-Er0*cos(w*t+k1*z)/niu1;
plot3(z,m0,Ei,'r','LineWidth',1.5);
hold on
plot3(z,Hi,m0,'r','LineWidth',1.5);
hold on
plot3(z,m0,Er,'g','LineWidth',1.5);
hold on
plot3(z,Hr,m0,'b','LineWidth',1.5);
hold on
plot3(0,0,20,'LineWidth',1.5);
Matlab代码(动态模拟):
u0=4*pi*1e-7;%磁导率
e0 = 1e-9/(36*pi);%电介质常数
Z0 = (u0/e0)^0.5;%波阻抗
f = 6*1e7; %入射波频率
w = 2*pi*f;%入射波角频率
k = w*(u0*e0)^0.5;%波数
phi_E = 0;%电场初始相位
phi_H = 0;%磁场初始相位
EE = 20;%电场幅度
HH = EE/Z0;%磁场幅度
x = 0:0.1:20;%横坐标序列
m0 = zeros(size(x));
y0 = -20:1:20;
m1 = zeros(size(y0));
z0 = -0.05:0.01:0.05;
m2 = zeros(size(z0));
gifname = 'c:\users\pxo\desktop\mag_motion.gif';%动态图输出路径
figure
for t=0:200
    Ez = -EE*cos(k*x+w*t*1e-9+phi_E);%入射波电场幅度序列
    Er = EE*cos(k*x-w*t*1e-9+phi_E);%反射波电场幅度序列
    Hr = -HH*cos(k*x+w*t*1e-9+phi_H);%反射波磁场幅度序列
    Hy = -HH*cos(k*x+w*t*1e-9+phi_H);%入射波磁场幅度序列
    yy = -20:20;
    zz = ones(size(yy))*0;
    [yy, zz] = meshgrid(yy,zz);
    xx = yy*0+20;
    mesh(xx,yy,zz,'FaceColor','g');
    hold on
    plot3(x,m0,m0,'black','Linewidth',3);
    hold on
    plot3(m1+20,y0,m1,'black','Linewidth',1.5);
    hold on
    plot3(m2+20,m2,z0,'black','Linewidth',1.5);
    hold on
    plot3(x,Ez,m0,'r','LineWidth',1.2);
    hold on
    plot3(x,m0,Hy,'b','LineWidth',1.2);
    hold on
    plot3(x,m0,Hr,'c','LineWidth',1.2);
    hold on
    plot3(x,Er,m0,'green','LineWidth',1.2);
    hold off
    xlabel('传播方向');
    ylabel('电场Ey');
    zlabel('磁场Hz');
    title(['平面电磁波传播示意图','t=',num2str(t),'ns'],'fontsize',14)
    set(gca,'fontsize',12)
    drawnow
    %一下是保存动态图部分
    frame = getframe(1);
    im = frame2im(frame);
    [imind, cm] = rgb2ind(im,256);
    if t==0
        imwrite(imind, cm, gifname, 'gif', 'WriteMode', 'overwrite', 'Loopcount', inf);
    else
        imwrite(imind, cm ,gifname, 'gif', 'WriteMode', 'append', 'DelayTime', 0.1);
    end
end

在这里插入图片描述在这里插入图片描述

2. 平面电磁波向理想介质垂直入射的仿真

MATLAB代码
miu1=4*pi*1e-7;
miu2=6*pi*1e-7;
epsilong1=1e-9/(36*pi);
epsilong2=2e-9/(36*pi);
Ei0=5;
w=2*pi*1e8;
k1=w*sqrt(miu1*epsilong1);
niu1=sqrt(miu1/epsilong1);
k2=w*sqrt(miu2*epsilong2);
niu2=sqrt(miu2/epsilong2);
Et0=Ei0*2*niu2/(niu2+niu1);
Er0=Ei0*(niu2-niu1)/(niu2+niu1);
z=[-20:0.1:0];
z1=[0:0.1:20];
m0=zeros(size(z));
t=100;
Ei=Ei0*cos(w*t-k1*z);
Hi=Ei0*cos(w*t-k1*z)/niu1;
Er=Er0*cos(w*t+k1*z);
Hr=-Er0*cos(w*t+k1*z)/niu1;
Et=Et0*cos(w*t-k2*z1);
Ht=Et0*cos(w*t-k2*z1)/niu2;
plot3(Ei,z,m0);
hold on
plot3(m0,z,Hi);
hold on
plot3(Er,z,m0);
hold on
plot3(m0,z,Hr);
hold on
plot3(Et,z1,m0);
hold on
plot3(m0,z1,Ht);

在这里插入图片描述

  • 42
    点赞
  • 168
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

薛定谔的壳

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值