How can I get magnetic current distribution for a dielectric antenna

4 ビュー (過去 30 日間)
Guo
Guo 2024 年 12 月 28 日
編集済み: KALYAN ACHARJYA 2024 年 12 月 29 日

I am trying to compute the magnetic current distribution on an antenna (specifically a microstrip patch antenna) but am not sure how to do this using the tools available in MATLAB. I have tried using the `currents`

 [C, points]  = current(patch, f, dielectric');

which seems only provide electric current distribution, but I’m unsure how to proceed with the magnetic current calculation. Does the antenna toolbox have a function for this directly?

回答 (1 件)

KALYAN ACHARJYA
KALYAN ACHARJYA 2024 年 12 月 29 日
編集済み: KALYAN ACHARJYA 2024 年 12 月 29 日
Change the code as per requirements:
Detail Basic: design
% Just for example: operating frequency
f = 1e9; % Frequency in Hz
%% Design the patch antenna
patch = design(patchMicrostrip, f);
%% Compute electric currents and points on the surface
[C, points] = current(patch, f);
% Compute electric and magnetic fields near the antenna at the same points
[E, ~] = EHfields(patch, f, points);
% Define the surface normal vector (modify for other geometries)
normal_vector = [0; 0; 1]; % Assume planar patch normal along z-axis
% Compute the tangential electric field
E_tangential = E - dot(E, repmat(normal_vector, 1, size(E, 2)), 1) .* normal_vector;
%% Compute the magnetic current density (M)
M = cross(repmat(normal_vector, 1, size(E_tangential, 2)), E_tangential, 1);
%If Required!
% Transpose M to match the dimensions of points for visualization
M = M';
% Transpose points to match dimensions with M
points = points';
%% Visualize electric current distribution
figure;
quiver3(points(:, 1), points(:, 2), points(:, 3), C(1, :)', C(2, :)', C(3, :)');
Warning: Using only the real component of complex data.
title('Electric Current Distribution on the Patch');
xlabel('X (m)'); ylabel('Y (m)'); zlabel('Z (m)');
grid on;
%% Visualize magnetic current distribution
figure;
quiver3(points(:, 1), points(:, 2), points(:, 3), M(:, 1), M(:, 2), M(:, 3));
Warning: Using only the real component of complex data.
title('Magnetic Current Distribution on the Patch');
xlabel('X (m)'); ylabel('Y (m)'); zlabel('Z (m)');

カテゴリ

Help Center および File ExchangeDesign, Analysis, Benchmarking, and Verification についてさらに検索

タグ

製品


リリース

R2024a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by