Tolerancing for several wavelengths simultaneously
Hello,
I want to perform tolerancing analyses for all wavelengths of my system simultaneously, not just the ‘test wavelength’. I understand that I could simply write the wavelength operand TWAV for each wavelength, followed by the list of other operands copied each time, however there are two problems with that: 1. It doesn’t take into account the weighing of different wavelengths. 2. I suppose it artificially increases the deviation of the criterion, namely, it sums the deviations (in the RSS meaning) of different wavelengths rather than averaging them.
Is there any way to tackle this?
Thank you.
Page 1 / 1
Hi Imanuel,
You don't need to add multiple TWAV operands and you should keep the current TWAV operand at the metrology wavelength (typically 0.6328 or 0.546).
When tolerancing, there are 2 wavelengths to consider:
Wavelength used to perturb the system with tolerance operands defined as fringes
Wavelength(s) used to evaluate the perturbed system
The TWAV operand (defaulted to the HeNe laser in a Fizeau interferometer @ 0.6328um) will modify the surface of any operand defined by TEXI, TFRN, or TIRR. These surfaces are modify once as either a deviation in sag or a deviation in phase. There is no weight associated with this individual wavelength because OpticStudio is converting a measurement (number of fringes) back into sag/phase.
When evaluating the new performance of the perturbed system, all defined system wavelengths with their respective weights, are used when evaluating the criterion (either the newly built Merit Function or the user defined Merit Function).
So when tolerancing, the perturbed system is still evaluated at all defined wavelengths in the System Explorer but the actual modified surfaces are changed at the TWAV wavelength.
Thank you Michael for your response, that was very enlightening.
I please want to make sure I understood what you meant by the words “either the newly built Merit Function or the user defined Merit Function”. What do you mean by “newly built”? I know that you can choose the Merit Function as the criterion, or some other criterion from the list in the tolerancing menu, for example the RMS spot radius.
When you choose any of the Criterion options, except for Merit Function or User Script, a new Merit Function is built by the Tolerancer.
This new Merit Function essentially runs the Merit Function Wizard in the background to rebuild a Merit Function based on the Criterion you selected:
If you want to see what this exact new Merit Function is, you can choose to save 1 Monte Carlo file, open it and then look at the MFE:
Hi Imanuel,
You don't need to add multiple TWAV operands and you should keep the current TWAV operand at the metrology wavelength (typically 0.6328 or 0.546).
When tolerancing, there are 2 wavelengths to consider:
Wavelength used to perturb the system with tolerance operands defined as fringes
Wavelength(s) used to evaluate the perturbed system
The TWAV operand (defaulted to the HeNe laser in a Fizeau interferometer @ 0.6328um) will modify the surface of any operand defined by TEXI, TFRN, or TIRR. These surfaces are modify once as either a deviation in sag or a deviation in phase. There is no weight associated with this individual wavelength because OpticStudio is converting a measurement (number of fringes) back into sag/phase.
When evaluating the new performance of the perturbed system, all defined system wavelengths with their respective weights, are used when evaluating the criterion (either the newly built Merit Function or the user defined Merit Function).
So when tolerancing, the perturbed system is still evaluated at all defined wavelengths in the System Explorer but the actual modified surfaces are changed at the TWAV wavelength.
Thanks @MichaelH - This is valuable information. I appreciate you clarifying the topic of using multiple λ in tolerancing.
Say for instance, if I model a system at 4 different wavelengths, I do not have to individually call them out with TWAV operands in TDE? Instead, I use a single TWAV at interferometry test wavelength of 633nm.
Now, my question is how would you see how your merit function performs at these 4 different λs? Especially if you are using “merit function” or “user script” as criterion?
-asuku
Hey Asuku,
There are 2 ways to evaluate the individual Monte Carlo files created during a tolerance run:
Use the Merit Function Editor to create a single performance criteria
Use the ZPL/API to loop through all saved MC files
For #1, you will need to determine the appropriate Merit Function itself. For example, if you use Default Merit Function (DMFS) for Spot Size on a file with 3 fields and 3 wavelengths, you will get a 132 operands in the MF that minimize the Spot Size over all fields and wavelengths; the actual merit function value (MFCN or CalculateMeritFunction) won’t be a single number that you can find in any analysis window. So, you need to be thoughtful about how the Merit Function itself is setup. If you’re using a User Script, then you can load multiple Merit Function files for each wavelength you care about.
The other option which gives a lot more control is to save the Monte Carlo files directly to disk and then to post-process them with either the ZPL or the ZOS-API. The following article talks about how to loop through saved MC files on disk using the ZPL: