Effacer les filtres
Effacer les filtres

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

2 vues (au cours des 30 derniers jours)
Biplob
Biplob le 8 Juil 2023
Commenté : Biplob le 11 Juil 2023
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

Réponses (1)

Chaitanya
Chaitanya le 11 Juil 2023
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 commentaire
Biplob
Biplob le 11 Juil 2023
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

Connectez-vous pour commenter.

Catégories

En savoir plus sur Develop Apps Using App Designer dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by