📄 elliptica.m
字号:
% Program file "elliptica.m"
% calculates and displays tip of electric
% field vector of elliptically polarized
% EM wave traveling along z axis.
N = 4000; % Number of E field samples
P = 3; % Number of full (2pi) cycles to be drawn
t = [0:P*2*pi/(N-1):P*2*pi];
om = 1;
Exm = input('Enter amplitude of Ex = ');
phi_x = input('Enter phase angle (in degrees) of Ex, phi_x = ');
Eym = input('Enter amplitude of Ey = ');
phi_y = input('Enter phase angle (in degrees) of Ey, phi_y = ');
dphi = phi_x - phi_y
phi_x = phi_x*pi/180;
phi_y = phi_y*pi/180;
Ex = Exm*cos(om*t + phi_x);
Ey = Eym*cos(om*t + phi_y);
dphi = phi_x - phi_y;
%Calculation of magnitude of 2D elliptic vector
M = length(t);
Eabs = zeros(1,M);
for k = 1:M
Eabs(k) = sqrt(Ex(k)^2 + Ey(k)^2);
end
dex = 0.5*atan(2*Exm*Eym*cos(dphi)/(Exm^2 - Eym^2));
dex = dex*180/pi
OA = 0.5*sqrt(2*((Exm^2) + (Eym^2) + sqrt((Exm^4) + (Eym^4) + 2*(Exm^2)*(Eym^2)*cos(2*dphi))))
OB = 0.5*sqrt(2*((Exm^2) + (Eym^2) - sqrt((Exm^4) + (Eym^4) + 2*(Exm^2)*(Eym^2)*cos(2*dphi))))
subplot('Position',[0.13,0.55,0.27,0.4])
plot(Ex, Ey);
xlabel('Ex')
ylabel('Ey')
grid
subplot('Position',[0.53,0.55,0.4,0.4])
plot3(t/(2*pi), Ex, Ey)
xlabel('z');
ylabel('Ex');
zlabel('Ey');
grid
subplot('Position',[0.13,0.13,0.8,0.2])
plot(t/(2*pi), Eabs)
xlabel('z');
ylabel('magn(E)');
grid
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -