Skip to main content
Solved

Question about ZPLM parameters in merit function editor box

  • November 4, 2024
  • 2 replies
  • 117 views

Leon

Question 1: what de Ex and Ey mean? I cannot find answers in user manu

Question 2: non-sequential mode launches rays in a partial random manner, how Hx, Hy, Px, Py work for random rays?

 

Best answer by MichaelH

Hi Leon,

In the MFE, the 2nd through 9th columns have the following hard-coded names in the source code:

  • Surf (integer)
  • Wave (integer)
  • Hx (double)
  • Hy (double)
  • Px (double)
  • Py (double)
  • Ex (double)
  • Ey (double)

These columns typically have dynamic names based on the selected operand, but for a ZPLM, the MFE does not know what variables the user is asking for.  So, for a ZPLM, the 6 double columns keep the Hx, Hy, Px, Py, Ex, and Ey header names.  These columns do not represent the normalized field, normalized pupil, or electric field values for a specific ray.  These are inputs that a user can pass to the ZPLM with the Pass Value functions: PVHX(), PVHY(), PVPX(), PVPY(), PVEX(), PVEY().  If you don’t need information from the user to run the macro, then you can simply leave these 6 columns as 0.

There is more information in the Help Files under the heading Optimizing with ZPL Macros.

2 replies

MichaelH
Ansys Staff
Forum|alt.badge.img+2
  • Ansys Staff
  • Answer
  • November 4, 2024

Hi Leon,

In the MFE, the 2nd through 9th columns have the following hard-coded names in the source code:

  • Surf (integer)
  • Wave (integer)
  • Hx (double)
  • Hy (double)
  • Px (double)
  • Py (double)
  • Ex (double)
  • Ey (double)

These columns typically have dynamic names based on the selected operand, but for a ZPLM, the MFE does not know what variables the user is asking for.  So, for a ZPLM, the 6 double columns keep the Hx, Hy, Px, Py, Ex, and Ey header names.  These columns do not represent the normalized field, normalized pupil, or electric field values for a specific ray.  These are inputs that a user can pass to the ZPLM with the Pass Value functions: PVHX(), PVHY(), PVPX(), PVPY(), PVEX(), PVEY().  If you don’t need information from the user to run the macro, then you can simply leave these 6 columns as 0.

There is more information in the Help Files under the heading Optimizing with ZPL Macros.


Leon
  • Author
  • Infrared
  • November 4, 2024

Thank you Michael for the fast reply.