%极化波动画程序%
%clc;clear; %清除屏幕,清除变量。
Omiga=6*pi*1e8;%电磁波的频率。
epsilon0=(1/36/pi)*1e-9;mu0=4*pi*1e-7;%真空介电常数和真空磁导率。
epsilon=epsilon0*1;mu=mu0*1;sigema=0;%媒质的电磁参数。
velocity=1/sqrt(mu*epsilon);%电磁波的传播速度
k=Omiga*sqrt(mu*epsilon);%电磁波的波速
Ex0=0.5; %电场沿x方向的分量振幅。
Ey0=1.0; %电场沿y方向的分量振幅。
Phix=0; %电场x分量的相位。
Phiy=pi/2; %电场y分量的相位。
T=2*pi/Omiga;%电磁波的周期
n=0;
zmin=0;zmax=2*pi;
z=zmin:pi/100:zmax;%电磁波沿着z轴传播。
Ex1=[ ];
Ey1=[ ];
%以下循环为绘制z=0平面的轮廓线做计算。
for t1=0:0.01*T:1*T;
Ex1=Ex0*cos(Omiga*t1-k.*z+Phix);
Ey1=Ey0*cos(Omiga*t1-k.*z+Phiy);
Ex1=[Ex1 Ex1(1)];
Ey1=[Ey1 Ey1(1)];
end
Z1=length(Ex1);
z1=zeros(Z1);
%以下循环绘制动态仿真图计算
for t=0:0.005*T:1*T
cla(handles.axes1);cla(handles.axes2)%清楚图形内容。
%计算各点电场的x分量和y分量的大小。
Ex=Ex0*cos(Omiga*t-k.*z+Phix);
Ey=Ey0*cos(Omiga*t-k.*z+Phiy);
%绘制z=0断面的轮廓图和t时刻电场向量图。
axes(handles.axes1);grid off;box on;
plot(Ex1,Ey1,'k.','LineWidth',2);
line([-Ex0 Ex0],[0 0],'Color','r','LineWidth',2);line([0 0],[-Ey0 Ey0],'Color','r','LineWidth',2);
hold on
plot(Ex(1),Ey(1),'ro','LineWidth',2);line([0 Ex(1)],[0 Ey(1)],'Color','b','LineWidth',2);
axis equal;axis([-Ex0,Ex0,-Ey0,Ey0]);
hold on
%绘制z=0断面的轮廓图和t时刻电场向量3维图及电场传播的动态图。
cla(handles.axes2)%清楚图形内容。
axes(handles.axes2);
plot3(z1,Ex1,Ey1,'k.','LineWidth',2);
hold on
line([0 0],[-Ex0 Ex0],[0 0],'Color','r','LineWidth',2); line([0 0],[0 0],[-Ey0 Ey0],'Color','r','LineWidth',2); line([zmin zmax],[0 0],[0 0],'Color','r','LineWidth',2);
plot3(z(1),Ex(1),Ey(1),'ro','LineWidth',2);line([0 0],[0 Ex(1)],[0 Ey(1)],'Color','b','LineWidth',2);
hold on
x=length(z);y=length(z);
plot3(z,Ex,Ey,'b','LineWidth',2);%plot([z;z],[x;Ex],[y;Ey],'Color','b','LineWidth',2);%
%stem(z,Ex,Ey,'b.')
grid off;box on;axis equal;axis([zmin,zmax,-Ex0,Ex0,-Ey0,Ey0]);
hold on;%图形保持
xlabel('x轴');
ylabel('y轴');
set(gcf,'color','w');%设置画图背景白色。
view(-47.5,10);
%绘制媒质1中入射波。
hold on
pause(0.1)
hold on
end