Overlap integral of the electric field distribution

62 visualizaciones (últimos 30 días)
shdotcom shdotcom
shdotcom shdotcom el 19 de Mayo de 2017
Comentada: Suresh Chejarla el 25 de Mayo de 2023
Hi, I am trying to calculate overlap integral (OI) of electric field distribution, using Matlab, when run the following code:
xc = linspace(0,1,M);
yc = linspace(0,1,M);
A = E1 * E2;
B = (abs(trapz(xc,trapz(yc, abs(A))) ) ).^2;
C = trapz(xc,trapz(yc, abs(E1).^2)) * trapz(xc,trapz(yc, abs(E2).^2 ));
OI = B./C;
where E1 is the electric field distribution of the desired mode and E2 is polarized mode. Both E1 and E2 are matrices of size MxM.
but, I have got this error: Error using trapz (line 57) *LENGTH(X) must equal the length of Y in dim 1.
  3 comentarios
shdotcom shdotcom
shdotcom shdotcom el 20 de Mayo de 2017
You are right, I have edited the code.
Suresh Chejarla
Suresh Chejarla el 25 de Mayo de 2023
Hello,
Can you please provide the reference for the OI expression which you have put here ?

Iniciar sesión para comentar.

Respuesta aceptada

Torsten
Torsten el 19 de Mayo de 2017
Editada: Torsten el 19 de Mayo de 2017
xc = linspace(0,1,M);
yc = linspace(0,1,M);
A = E1 .* E2;
B = (trapz(xc,trapz(yc, abs(A), 1)) ).^2;
C = trapz(xc,trapz(yc, abs(E1).^2, 1)) * trapz(xc,trapz(yc, abs(E2).^2, 1 ));
OI = B./C;
Best wishes
Torsten.
  2 comentarios
shdotcom shdotcom
shdotcom shdotcom el 20 de Mayo de 2017
I have edited the code based on @David Goodmanson's comments. Could you please explain to me why you used 1 instead on 2 in the trapz()
C = trapz(xc,trapz(yc, abs(E1).^2, 1)) * trapz(xc,trapz(yc, abs(E2).^2, 1 ));
Torsten
Torsten el 22 de Mayo de 2017
So the code should read:
xc = linspace(0,1,M);
yc = linspace(0,1,M);
A = E1 .* E2;
B = (trapz(xc,trapz(yc, A, 1)) )^2;
C = trapz(xc,trapz(yc, abs(E1).^2, 1)) * trapz(xc,trapz(yc, abs(E2).^2, 1 ));
OI = B./C;
I used 1 instead of 2 in trapz() because you have to integrate each column of A if you integrate over y.
Best wishes
Torsten.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Numerical Integration and Differentiation en Help Center y File Exchange.

Productos

Community Treasure Hunt

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

Start Hunting!

Translated by