Photonics

Photonics

scat far-field from a particle on substrate

    • ferruccio.pisanello
      Subscriber

      Hi,

      I have confusion related to scat far-field calculation as explained in the example. 

      https://optics.ansys.com/hc/en-us/articles/4403945613843-Polar-plot-of-scattered-field-with-particle-on-substrate

      Why the polar angle theta is defined from -90 to 90 for scat far-field conversion to spherical coordinates using the function farfieldspherical()? 

      However, as explained in the following article the coordinte limits for polar angle theta are from 0 to 180.

      https://optics.ansys.com/hc/en-us/articles/360034394294-Understanding-direction-unit-vector-coordinates-in-far-field-projections 

      This creates confusion in interpreting the far-field pattern.

      Regards

      FK 

    • Guilin Sun
      Ansys Employee

      You are right. A better definition should be from -90 deg to +90 deg, with zero along the monitor normal, which is what is used in the script. Otherwise it is hard to interpret the result.

    • ferruccio.pisanello
      Subscriber

      Hi, Thanks for your answer.

      If we have a monitor in XY plane(cartesian), then to calculate far-field XZ and YZ domain we should set angle phi as 0 and +90, respectively in the following function?

      %

      E_ff_polar = farfieldspherical(E_ff,ux,uz,theta,phi);

      %

      and to see polar FF in XY plane, the following should be the way?

      %

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

      phi = linspace(0,360,360);

      Theta = meshgridx(theta,phi);

      Phi = meshgridy(theta,phi);

      E_ff_polar = farfieldspherical(E_ff,ux,uy,Theta,Phi);

      E_ff_polar = reshape(E2_angle, [length(theta), length(phi)]);

      theta_polar = 0; # what should be this angle for XY plane 0 or 90?

      E_ff_polar = E_ff_polar(theta_polar,:)

      polar(phi/180*pi,E_ff_polar);

      legend("XY plane");

      %

      The function reshape(), here gives noise at the corners?

       

      And how do we interpret the direction of the angle from the polar plot for a given XY, XZ or YZ domain? Will the conventions explained in the Mie scattering example (section Far-field angular scattering) in the following article be valid here as well? 

      https://optics.ansys.com/hc/en-us/articles/360042703433

       

      Regards

      FK

    • Guilin Sun
      Ansys Employee

       

      Farfield projections in 2D and 3D are different, where 2D plot is polar but 3D is on the semi-sphere with theta and phi (spherical coordinate system). If you want to plot XZ or YZ farfield, you can set up angle 

      linspace(-90,90,180);

      But if you want to get the cut in the 3D result, it is not easy.

      You can simply use the previous file, whether it is xz or yz.

       

       

       

    • ferruccio.pisanello
      Subscriber

      Hi, Thanks for your answer.

      I got a bit confused.

      As explained in the following article.

      https://optics.ansys.com/hc/en-us/articles/4403945613843-Polar-plot-of-scattered-field-with-particle-on-substrate

      There is a monitor in the XY plane and it calculates a 3D FF in the form of a semi-sphere using 

      %

      E2=farfield3d(mname,1,res,res);

      %

      Then by using  % E_ff_polar = farfieldspherical(E2,ux,uy,theta,phi);% and setting phi = 0, we can get the 2D FF in the XZ plane. Right?

      So, from your answer, I got that this 2D FF in the XZ plane is not the xz cut of FF semi-sphere calculated by farfield3d(). Is that true?

      Regards

      FK

    • Guilin Sun
      Ansys Employee

       

      You can get phi=0, or other phi values. But I do not think  it is the same as the 2D plane you want. Please test and compare the results: directly do the 2D and extract 2D data from 3D.

      One more thing to think: polar plot requires angles from 0 to 360. But theta is from -90 to 90 deg for a given phi, how can you plot it in polar?

    • ferruccio.pisanello
      Subscriber

      Hi, thanks for your answer.

      How I can directly get a 2D FF? because recording a near field with a 2D monitor and then getting FF from it by using the farfield3d() function gives semi-spherical 3D FF? then one can extract 2D FF by selecting a phi.

      I think, this is what is explained by this following example? No?

      https://optics.ansys.com/hc/en-us/articles/4403945613843-Polar-plot-of-scattered-field-with-particle-on-substrate

      "One more thing to think: polar plot requires angles from 0 to 360. But theta is from -90 to 90 deg for a given phi, how can you plot it in polar?"

      That's what I am also wondering because this is how it's explained in the example. They are plotting the polar plot with polarplot(theta, E2) at a given phi that's why we can see the values only in half plane of the polar plot.  And if we change the angle theta from -90:+90 to 0:180, the same pattern rotates by 90.

       

      Regards

      FK

    • Guilin Sun
      Ansys Employee

       

       

      It is indeed confusing. You can plot the far field in spherical coordinate like this:

      polarimage(ux,uy,E2);

      Phi is from 0 to 360 deg and theta is from -90 to 90. So how can you cut the image into a 2D polar plot? phi=0 is only from theta from 0 to 90, and phi=180 gives theta from -90 to 0.

      There is a little complicated, subtle issue here. If you have premium support previledge, please send us support ticket for more.

      Or simply use 

      polarimage(ux,uy,E2);

      to plot the 3D result.

       

       

    • ferruccio.pisanello
      Subscriber

      Hi, Thanks for the answer.

      We have an active license but I don't know if we have a premium support privilege. How can we know if we have a premium support privilege or not? Thanks! 

      Regards

      FK 

Viewing 8 reply threads
  • You must be logged in to reply to this topic.