June 7, 2021 at 10:12 am

Greg Baethge

Ansys Employee

Thanks for the additional information,. I think there's a problem in how you define the projection location. The monitor is z normal, and the projection is done at z=112nm, unless the monitor is far from this position (at least 1 wavelength away). the far field calculation might not have much sense. Additionally, you calculate theta from x and y, it should be from x and z.

In any case, it might be simpler to start from theta, we can calculate the field at a distance of 1m, x,y and z are obtained from theta and we use farfieldexact to get the far field vs x(theta), 0, z(theta). It could be something like:

theta = linspace(-90, 90, 181);

thetarad = theta * pi/180;

x = sin(thetarad) ;

y =0;

z = cos(thetarad);

E = farfieldexact(m, x, y, z, 1:nf, 1.5);

E2 = sum(abs(E)^2, 2);

image(theta, lambda*1e6, E2/max(E2), "angle", "lambda (um)");

I hope this will help!

In any case, it might be simpler to start from theta, we can calculate the field at a distance of 1m, x,y and z are obtained from theta and we use farfieldexact to get the far field vs x(theta), 0, z(theta). It could be something like:

theta = linspace(-90, 90, 181);

thetarad = theta * pi/180;

x = sin(thetarad) ;

y =0;

z = cos(thetarad);

E = farfieldexact(m, x, y, z, 1:nf, 1.5);

E2 = sum(abs(E)^2, 2);

image(theta, lambda*1e6, E2/max(E2), "angle", "lambda (um)");

I hope this will help!