垂直极化波由空气(z<0)斜入射理想导体(z>0)平面(z=0,媒质分界面位于xoy面),电场初始振幅为1V/m,若入射角为45度,给出绘制合成电场幅度图的matlab代码
时间: 2024-02-06 12:12:52 浏览: 141
以下是绘制合成电场幅度图的 MATLAB 代码:
```matlab
% 物理常数
eps0 = 8.854187817e-12; % 真空介电常数
mu0 = 1.2566370614e-6; % 真空磁导率
% 材料参数
sigma = 5.96e7; % 导体电导率
epsr = 1; % 导体相对介电常数
% 入射波参数
E0 = 1; % 电场初始振幅
theta = pi/4; % 入射角
freq = 1e9; % 频率
% 计算反射系数和透射系数
eta1 = sqrt(mu0/eps0);
eta2 = eta1/sqrt(epsr);
theta_t = asin(sin(theta)*sqrt(epsr));
Gamma = (eta2*cos(theta) - eta1*cos(theta_t)) / (eta2*cos(theta) + eta1*cos(theta_t));
Tau = 1 + Gamma;
% 计算相位差
lambda = 3e8/freq;
delta = 2*pi*sigma*sqrt(epsr)/(2*freq*sqrt(2)*sqrt(mu0));
% 绘制合成电场幅度图
[X,Y] = meshgrid(-1:0.01:1,-1:0.01:1);
Z = exp(-1j*delta).*E0.*(1-Gamma).*exp(-1j*2*pi*freq*sqrt(X.^2+Y.^2+(Z/2)^2)/3e8);
surf(X,Y,abs(Z));
title('合成电场幅度图');
xlabel('x');
ylabel('y');
zlabel('|E| (V/m)');
```
注意,该代码中默认入射波在 xoz 平面内,因此 y 轴不会对结果产生影响,可以设置为任意值。另外,为了方便观察,我们只绘制了 z>0 的一半空间中的电场分布情况,因此 z 轴上的单位长度应该是实际长度的一半。如果需要绘制完整的空间电场分布图,可以将 `Z` 的计算公式修改为:
```
Z = exp(-1j*delta).*E0.*((1-Gamma).*exp(-1j*2*pi*freq*sqrt(X.^2+Y.^2+(Z/2)^2)/3e8) + Tau.*exp(-1j*2*pi*freq*sqrt(X.^2+Y.^2-(Z/2)^2)/3e8));
```
这里将反射波和透射波的贡献都考虑进去了。
阅读全文