微波谐振腔:腔壁微扰法
用matlab分析特殊情况的矩形介质腔体谐振器仅作参考,公式有改动
参考文献:《电磁波理论》葛德彪、魏兵著,第四章
======================二维=========================
clc
clear
close all
% 常数
a = 10.8;%长
b = 5.8;%厚度
l = 10.8;%宽
f1 = 4.356e9;
w = 2 * pi * f1;
e = 20.3 * (1e-9 / (36 * pi));%介质的介电常数
u = 4 * pi * 1e-7;%磁导率
q4 = e * w^2 * u^2 * a * b * l / 8;%平均总能量
% 函数定义
Hx = @(x, y, z) -(1 / (w * u * l)) .* sin(pi * x / (2 * a)) .* cos(pi * z / l);
Hz = @(x, y, z) (1 / (w * u * a * l)) .* cos(pi * x / (2 * a)) .* sin(pi * z / l);
Ey = @(x, y, z) w * u .* sin(pi * x / (2 * a)) .* sin(pi * z / l);
% n 和 m 的范围
n_range = 2:0.5:6;
m_range = 2:0.5:6;
% 初始化 f 的矩阵
f_matrix = zeros(length(n_range), length(m_range));
% 遍历 n 和 m 的范围,计算每个组合的 q1, q2, q3 及 f 的值
for i = 1:length(n_range)
for j = 1:length(m_range)
n = n_range(i);
m = m_range(j);
o = n; % 由于 n = o
% 积分上下限 q1
xmin_q1 = a * (1 - 1/n) / 2;
xmax_q1 = a * (1 + 1/n) / 2;
ymin_q1 = b * (1 - 1/m) / 2;
ymax_q1 = b;
zmin_q1 = 0;
zmax_q1 = l * (1 + 1/o) / 2;
% 计算 q1
q1 = integral3(@(x, y, z) (Hx(x, y, z)).^2, xmin_q1, xmax_q1, ymin_q1, ymax_q1, zmin_q1, zmax_q1) * u;
% 积分上下限 q2
xmin_q2 = 0;
xmax_q2 = a * (1 + 1/n) / 2;
ymin_q2 = 0;
ymax_q2 = b * (1 - 1/m) / 2;
zmin_q2 = l * (1 - 1/o) / 2;
zmax_q2 = l * (1 + 1/o) / 2;
% 计算 q2
q2 = integral3(@(x, y, z) (Hz(x, y, z)).^2, xmin_q2, xmax_q2, ymin_q2, ymax_q2, zmin_q2, zmax_q2) * u;
% 积分上下限 q3
xmin_q3 = a * (1 - 1/n) / 2;
xmax_q3 = a * (1 + 1/n) / 2;
ymin_q3 = 0;
ymax_q3 = b * (1 - 1/m) / 2;
zmin_q3 = l * (1 - 1/o) / 2;
zmax_q3 = l * (1 + 1/o) / 2;
% 计算 q3
q3 = integral3(@(x, y, z) (Ey(x, y, z)).^2, xmin_q3, xmax_q3, ymin_q3, ymax_q3, zmin_q3, zmax_q3) * e;
% 计算 f 的值
f_matrix(i, j) = f1 * (1 + (q1 + q2 - q3) / q4);
end
end
% 显示结果矩阵
disp('f 的值矩阵为:');
disp(f_matrix);
% 绘制 f 随 m 变化的图形,对于每个固定的 n
figure;
hold on;
colors = jet(length(n_range));
for i = 1:length(n_range)
plot(m_range, f_matrix(i, :), 'DisplayName', ['n = ' num2str(n_range(i))], 'Color', colors(i, :));
end
hold off;
xlabel('m');
ylabel('f');
title('f 随 m 变化的图形');
legend show;

======================三维=========================
clc
clear
close all
% 常数
a = 10.8;
b = 5.8;
l = 10.8;
f1 = 4.356e9;
w = 2 * pi * f1;
e = 20.3 * (1e-9 / (36 * pi));
u = 4 * pi * 1e-7;
q4 = e * w^2 * u^2 * a * b * l / 8;
% 函数定义
Hx = @(x, y, z) -(1 / (w * u * l)) .* sin(pi * x / (2 * a)) .* cos(pi * z / l);
Hz = @(x, y, z) (1 / (w * u * a * l)) .* cos(pi * x / (2 * a)) .* sin(pi * z / l);
Ey = @(x, y, z) w * u .* sin(pi * x / (2 * a)) .* sin(pi * z / l);
% n 和 m 的范围
n_range = 2:0.5:6;
m_range = 2:0.5:6;
% 初始化 f 的矩阵
f_matrix = zeros(length(n_range), length(m_range));
% 遍历 n 和 m 的范围,计算每个组合的 q1, q2, q3 及 f 的值
for i = 1:length(n_range)
for j = 1:length(m_range)
n = n_range(i);
m = m_range(j);
o = n; % 由于 n = o
% 积分上下限 q1
xmin_q1 = a * (1 - 1/n) / 2;
xmax_q1 = a * (1 + 1/n) / 2;
ymin_q1 = b * (1 - 1/m) / 2;
ymax_q1 = b;
zmin_q1 = 0;
zmax_q1 = l * (1 + 1/o) / 2;
% 计算 q1
q1 = integral3(@(x, y, z) (Hx(x, y, z)).^2, xmin_q1, xmax_q1, ymin_q1, ymax_q1, zmin_q1, zmax_q1) * u;
% 积分上下限 q2
xmin_q2 = 0;
xmax_q2 = a * (1 + 1/n) / 2;
ymin_q2 = 0;
ymax_q2 = b * (1 - 1/m) / 2;
zmin_q2 = l * (1 - 1/o) / 2;
zmax_q2 = l * (1 + 1/o) / 2;
% 计算 q2
q2 = integral3(@(x, y, z) (Hz(x, y, z)).^2, xmin_q2, xmax_q2, ymin_q2, ymax_q2, zmin_q2, zmax_q2) * u;
% 积分上下限 q3
xmin_q3 = a * (1 - 1/n) / 2;
xmax_q3 = a * (1 + 1/n) / 2;
ymin_q3 = 0;
ymax_q3 = b * (1 - 1/m) / 2;
zmin_q3 = l * (1 - 1/o) / 2;
zmax_q3 = l * (1 + 1/o) / 2;
% 计算 q3
q3 = integral3(@(x, y, z) (Ey(x, y, z)).^2, xmin_q3, xmax_q3, ymin_q3, ymax_q3, zmin_q3, zmax_q3) * e;
% 计算 f 的值
f_matrix(i, j) = f1 * (1 + (q1 + q2 - q3) / q4);
end
end
% 显示结果矩阵
disp('f 的值矩阵为:');
disp(f_matrix);
% 绘制 f 的变化图形
[n_grid, m_grid] = meshgrid(n_range, m_range);
surf(n_grid, m_grid, f_matrix);
xlabel('n');
ylabel('m');
zlabel('f');
title('f 随 n 和 m 变化的图形');

免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删