Trick: Alternative Use of TOLR - how to add an optimized parameter as an operand to the Merit Function Editor

  • 19 May 2023
  • 2 replies
  • 199 views

Userlevel 4
Badge +2

TOLR is an MF operand that returns statistical results for tolerancing sensitivity analysis, and adds these results to the optimization process. In the background, the tolerancing analysis with the compensation consideration is another optimization process under different perturbation conditions. Therefore, TOLR can also be used as an optimization operand for the parameters that require optimization beforehand.

  • Concept of using TOLR

    This section discusses the use of TOLR, which is unrelated to tolerancing. Instead, it utilizes the optimization process behind what we see. To use TOLR, you need to use a tolerancing user script. This is because the merit function used in the previous optimization and the main optimization process are different. By using a tolerancing user script, you can control which merit criteria to use

    tolerancing user script defines how to compensate and optimize. The following commands are the ones we used:

    CLEARCOMP (remove variables),

    COMP (set variables),

    LOADMERIT (choose merit function),

    and OPTIMIZE.

  • Example and Comparison
    • The back focus length reported in Analyze> Prescription Data> General Dataz is paraxial data, we don’t have native operand for it. Now I show how to use TOLR to return this data.
    • Preparation:

      The evaluation function used in the previous optimization was very simple - just set and save the .MF file. The first operand, PARY, is used to evaluate the BFL calculation, with the goal of achieving a paraxial ray of on aixs field of view with an image plane height of 0. This is saved as merit1.mf. The second operand is used to calculate the thickness value and is saved as merit2.mf.L6nCb0KUenIbpaNfIwdw1ZPJgZqfAp_d_Tvh2Q27rBU.png?token=W.DGlziynRlbrQtDbkP8dQ8F1oDjjbR0Dob4DQQLgLh3KjnVlUhjARzJu81MSrpHsFumwq6zOgCYxATvtiWLqE57yZG9Iwe2aQt8gC_NbOFU.png?token=W.DGlziynRlbrQtDbkP8dQ8F1oDjjbR0Dob4DQQLgLh3KjnVlUhjARzJu81MSrpHsH7eeXNkQeEXpmkXQbpjqUv1TKBf82jzOYJ-clMXk5ow.png?token=W.DGlziynRlbrQtDbkP8dQ8F1oDjjbR0Dob4DQQLgLh3KjnVlUhjARzJu81MSrpHs

    • Open Tolerance> Tolerancing

      Set-up> Mode: Sensitivity

      Criterion> Criterion: User Script/ Script: New. Create a new TSC file and save it.2bLJWYfoWIsN_TUveKfS_iXIT8D984VsuDjYHXxEixA.png?token=W.DGlziynRlbrQtDbkP8dQ8F1oDjjbR0Dob4DQQLgLh3KjnVlUhjARzJu81MSrpHsClick on the "SAVE" button in the selected Tolerancing user interface and save it as TOLR006.TOP. The file name format must follow TOLRXXX convention.KuCoMA2amlOnkt-bpQ3r4yY5FVqfqq9_Ecb200NT2uE.png?token=W.DGlziynRlbrQtDbkP8dQ8F1oDjjbR0Dob4DQQLgLh3KjnVlUhjARzJu81MSrpHs

    • The setup is complete and can be used immediately. The returned values are consistent across various analyses.AMubVJct8Q5keCRT7Gg7BBA7R-zHTvxPtfz0KcxzwOQ.png?token=W.DGlziynRlbrQtDbkP8dQ8F1oDjjbR0Dob4DQQLgLh3KjnVlUhjARzJu81MSrpHs


2 replies

Userlevel 7
Badge +3

Hi Julia,

I’m not sure I follow this discussion. You seem to have used TOLR to return a value that is already directly in the LDE, and is controlled by a solve in any case. What am I missing?

  • Mark
Userlevel 4
Badge +2

Hi Mark,

Thank you for the reply! I may have given an inappropriate example, but the concept here is that when a user wants to use user defined operand that requires another optimization process, ZPLM is no longer applicable. 

ZPLM can extract certain parameters that are not native operands, but it cannot perform the optimization process. This is a way to solve the problem from a user:  one of his optimization goals is to reduce astigmatism while considering the adjustable back length for his lens system, here an operand is introduced through TOLR to reduce the system's through-focus astigmatism.

Julia

Reply