Finding the weight of the modes contained in the E field.

1 次查看(过去 30 天)
Hi,
I have the values of E-field on a transverse plane(Both magnitude and phase values are known). Let us say it is a matrix of N x N.
The E-field expression is given by;
where, , and l is the mode no.(also known as azimuth mode no.)
Here, I want to compute the weight of the mode no. l from the values of the E-field which is known to me on a transverse plane.
Alternatively, one could also say the magnitude of the field values for a given mode l.
The expression that I want to compute is given by the following expression;
, where is the weight of a mode no. l
The desired plot is a 2D plot with mode no. l on the x-axis,(say -8,-7,-6,....-1,0,1....6,7,8) and on the y-axis.
Thanks,
Biplob Biswas
PhD Research Scholar

回答(1 个)

Chaitanya
Chaitanya 2023-7-11
To compute the weight of a mode number `l` from the known values of the E-field on a transverse plane, you can use the given expression:
weight = sum(sum(E_field .* exp(-1i * l * angle(E_field)))) / sum(sum(abs(E_field).^2));
Here's how you can create a 2D plot with mode number `l` on the x-axis and the weight on the y-axis:
% Given E-field matrix (N x N)
E_field = ...; % Replace with your actual E-field matrix
% Parameters
N = size(E_field, 1);
l_values = -8:8; % Mode number values for the x-axis
% Compute weights
weights = zeros(size(l_values));
for i = 1:length(l_values)
l = l_values(i);
weights(i) = sum(sum(E_field .* exp(-1i * l * angle(E_field)))) / sum(sum(abs(E_field).^2));
end
% Plot
plot(l_values, weights, 'o-')
xlabel('Mode Number (l)')
ylabel('Weight')
title('Weight of Mode Number l')
Make sure to replace `E_field` with your actual E-field matrix, and adjust the range of `l_values` according to your desired mode number range.
This code will compute the weight for each mode number `l` using the given expression and create a 2D plot of mode number `l` on the x-axis and the weight on the y-axis.
Hope this helps!
  1 个评论
Biplob
Biplob 2023-7-11
Hi Chaitanya,
Thank you for the answer.
I have 2 queries.
1st: What is the reason for taking the ratio of sum of complex E-field over sum of magnitude of E-field, in the calculation of weights?
2nd: When I provide the E-field matrix, I already know the mode no.(l) in the E-field. For example: When I specify (l = +2), I expect the weight value to be higher for(l = +2). But in this code, I am getting a high weight value for (l=+1) everytime. What could be the reason behind this?
Thank you,
Biplob

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Beamforming and Direction of Arrival Estimation 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by