Use this space to learn more about your software!
What is the difference between the Global and Hammer Optimization options?
When it comes to optimizing a system, there are a couple different options. Global and Hammer Optimization are the two global techniques available in OpticStudio, located under the Optimize tab. These two algorithms differ most prominently in the scope of their search. Global optimization is great if you are looking to explore possible design forms. It searches more broadly over all the parameters, saving the 10 best solutions for you. Hammer optimization, on the other hand, is more useful for improving a design you already have. It searches for similar designs that have lower merit functions. However, it does not search on as large of a scale as the Global Search. In many projects, it will likely help for you to use both! Generally, Global optimization would be used in the early stages of the project as you test out the design space, followed by some local optimization, and finally Hammer optimization to more thoroughly improve your design.
Inhomogeneous scatter density in the bulk material
I would like to simulate bulk scattering in non-sequential mode. However, the density of scattering centres in my material should not be homogeneous, but should increase as a function of the bulk width x. How is this possible? Is there already a .dll I could use? Thank you for your help!
Zemax Error Message: Rounding digits must be between 0 and 15, inclusive. Parameter name: digits
I'm repeatedly experiencing this error while MC tolerancing: Zemax Error Message: Rounding digits must be between 0 and 15, inclusive. Parameter name: digits The error looks independent of the number of runs, even though it comes out randomly for 200runs. The error always prompts at the very end of the MC tolerance analysis, during the last set of runs, regardless of the number of runs set. Design lockdown does not seem to have any beneficial effect. If of any help, by googling around this came up: https://pisquare.osisoft.com/thread/31742-calc-failedoutput-rounding-digits-must-be-between-0-and-15-inclusiveparameter-name-digits which sends back to a a 'frac' function, unable to handle input values that are smaller than 0.1.
How do you keep track of your optical systems during the design process?
There is no best approach to that question, I would just like to share with you my way of dealing with this, which is also the method that Joseph M. Geary uses and describes in his book ‘’Introduction to Lens Design’’. Because there is no versioning built-in Zemax OpticStudio, keeping track of the designs and their evolution can be tricky. It is very easy to lose track of how you got to a certain point indeed. Here is the protocol: -first 4 characters identify the system/project -5th character is a number to separate different design within the same system/project -6th character is the letter ‘’o’’ stands for optimization (I personally add ‘’p’’ for paraxial, ‘’s’’ for starting, ‘’t’’ for tolerance … as you like) -7th is a number which is the particular step of optimization -last is either ‘’a’’ or ‘’b’’, and stands for after or before the step For example, ‘’TRIP2o4b.zmx’’ is the Zemax file of the second design of a triplet system at the 4th step of optimization before the optimizat
How to use optimization function to collimate light in NSC mode?
Hi all, I would like to test a variety of lenses in a 2-lens Keplarian beam reductor. What is the best way to optimize this design to get the BEST collimation with the pair of lenses? I have used the optimization wizard with a variable Z-axis distance. The criteria settings are attached. Occasionally, the optimization function does not change the Z distance of the second lens even after I put it in an incorrect Z-position. Can someone please advise? Thanks!
Radiance: Angle Space vs. Position Space
My NS-system comprises 2 components only. 1. Source Rectangle x/y Half Width = 5mm; Cosine Exponent = 1; Power = 1W This is nothing else than a pure Lambertian emitter. 2. Detector Rectangle x/y Half Width = 5mm; 100x100 pixel; 0.001 mm behind the source This detector covers closely the Lambertian Emitter The Power (P) of a Lambertian source calculates as: P = pi * A * NA^2 * L A: Area of source NA: Numerical aperture of source; NA = 1 for hemisphere L: Radiance For L we get: L = P / (pi * A * NA^2); P = 1W; NA = 1; A = 1cm^2 L = 1 / pi = 0.318 Ratracing confirms this calculation for radiance in angle space: Of course there is a very little amount of noise... When I switch the detector from Radiance in angle space to Radiance position space, the result gets wrong by a factor of 2: Now I am really puzzled: A pure Lambertian source has a constant radiance in both, angle space and position sp
Good afternoon, After generation of the near field .zbf file in Lumerical and opening it in the zemax environment under the Physical Optics tab, i am not certain how this near field relates to the rest of the optical elements i have in the Zemax file. Let's take, for example, a simple asphere. If i want to insert a metalens behind the asphere, how do I do that. I have the near field file from Lumerical. I have the asphere in Zemax. The steps in between are a bit fuzzy for me. How does one assess the overall performance of the combined metalens and conventional optics hybrid design? I’d like to ultimately use the same standard optical engineer figures of merit for image quality like MTF. Any help would be greatly appreciated. thanks!
Universal 1-D and ZOS-API
I'm trying to use the Matlab ZOS-API to extract data from a plot generated in the Universal 1-D tool.   After I generate the results the tool tips for matlab show the following data properties: DataGrids: 1x1 IAR_DataGrid NumberofDataGrids: 0 I have also looked through the topic on output data types for Universal Plot 1-D and all the types (DataGrid, DataSeries, DataScatter, etc) are all false . 1.  Am I missing something about how the Universal 1-D creates data as DataGrid and using that in matlab?  Should I be expecting NumberofDataGrids >0 and just have something wrong in the code? If not: 2.  Do I need to save files at .txt files then upload into Matlab and extract the numeric data adding an additional step? 3.  If 2. is true. Is there any other in the ZOS-API that can quickly cycle system parameters (independent variables) and extract values from the merit function editor? Essentially doing the same thing as Universal-1D but not needing the st
Contrast Optimization: my merit function cannot be evaluated
During the contrast optimization, OpticStudio uses a method called Moore-Elliott (also documented in our Help File under The Optimize Tab (sequential ui mode) > Optimization Overview > Sequential Optimization > Optimizing for MTF) where rays are traced by pairs. One ray is the original ray specified in the MECS operand The other one is a shifted ray. The shifted ray is the original ray shifted by a pupil shift. The shift is calculated as 2 times the optimization frequency over the cutoff frequency. The shifted ray is shifted once along X and once along Y. So if the merit function cannot be evaluated with Moore-Elliott Contrast operands (MECA, MECS, and MECT), it can be that the shifted ray cannnot be traced because the shifted ray is not in the pupil. To check the issue, I would use: the Single Ray Trace under Analyze ... Rays & Spots. the Contrast Loss map under Analyze ... MTF. On the Contrast Loss Map, you will see if some rays are missing at the edge of the pupil like th
Polarize Transmission with coating wrong
when i use POP to calculate coupiing efficency. Find polarizate transmission wrong in coating . below is my transmission table: in surface 7 , coating is i.99 but in transmission it is 1.00794. I think it must be wrong in Zemax. perture, Fresnel, coating, vignetting, and internal transmittance effects are considered. Field Pos : 0.0000 (deg) Transmission at 1.5500: 0.975994044 Total Transmission : 0.975994044 Chief Ray Transmission Surface By Surface: Field Pos : 0.0000 (deg) Wavelength 1: 1.550 µm Surf Tot. Tran Rel. Tran 1 1.000000 1.000000 2 0.990000 0.990000 3 0.990000 1.000000 4
OpticsTalk: Flash LiDAR in new iPad Pro and its Modelling
Here's the discussion space for the OpticsTalk: Flash LiDAR in new iPad Pro and its Modelling, to hosted by Zemax Senior Optical Engineer, Sandrine Auriol. Apple introduced flash LiDAR in the new iPad Pro for AR applications. Join Sandrine in this talk to discuss the principle of flash LiDAR and methods of modeling it in OpticStudio. Stay tuned on this forum thread for updates and discussion after the talk!
How to Model a Polarizing Beam Splitter
Hi there, I have created a standard beam splitting cube in non-sequential mode using two Prism90 polygons, with surface coatings of I.99 and I.50. I am now interested in making a polarizing beam splitter. What is the best way to go about this in a non-sequential mode? Thank you so much!
Why vignetting factors should be removed when calculating Relative Illumination and MTF
It's suggested to see also see forum post: Sometimes users are confused why the 'Remove Vignetting Factors' option in the analysis Relative Illumination is by default checked on. Also some may wonder why the operand RELI always removes the vignetting factors. In this post, let's discuss and explain why it's usually not a good idea to use vignetting factor when evaluating the system's RI or MTF. To explain, let's open an example and examine what happens if we turn on and off the vignetting factors. 1. Open '\Documents\Zemax\Samples\Sequential\Objectives\Double Gauss 28 degree field.zmx' 2. Run 'Design Lockdown' to fix the sysetm before we start evaluations. 3. Let's check Footprint Diagram on STOP (surface 6) with Wavelength = 2 and Field = 2. For now, as expected, the beam can fulfill the STOP. 4. Now let's make the final surface's aperture smaller as below. 5. As expected, the Footprint Diagram changes as below. 6. Here is how the smaller aperture changes Layou
Another way to understand the meaning Root Mean Square (RSS) performance in tolernace report
When we run a tolerance analysis, in the report, there is always a section for 'Estimated Performance Changes based upon Roo-Sum-Square method'. Here let's give an simple math to explain why this can be considered as 'worst case' in tolerance. In Help file, we can explanations as shown below. Normally, this value can be considered as the criterion of the worst case of the system after consider tolerance. If the RSS performance is acceptable, then it's very likely the final really-fabricated system can meet designer's goal. Here we will use the 'Stack Up' question to explain the calculation of RSS. Stack Up question Here is the question: Imagine we have 5 wood plate to be stacked up together and we would like to estimate the total thickness of the the stack. We already know each wood plate has different thickness (which is error!). The thickness of each plate is 25 with an error of +-0.1 mm. Assuming the probability of thickness of a randomly-t
Why Can I Not Place a Thermal Pickup on the Conic Constant?
On the multi-configuration editor, there is a special solve called a thermal pickup. This pickup solve is used to compute a new value for a multi-configuration parameter based up on the temperature and pressure of the new configuration as compared to the 'reference' configuration. Thermal pickup solves only affect data for certain types of multi-configuration values. The thermal expansion and contraction is assumed to be isotropic, thus the linear dimensions change equally in all directions. Therefore, a solid glass sphere is still a sphere after being heated or cooled. In the same manner, a parabolic surface , with conic of -1, will still be parabolic after any temperature change and thus the conic constant is temperature invariant. This makes sense since the conic constant is a unit-less quantity.
Using DSLP operand to find surface slopes, but the signs/results are confusing
I'm finding the max and min slopes on a surface as reported by DSLP to be confusing. A spherical surface with high slopes is reporting a maximum of zero. And a Tilted surface, which is just a plane, is reporting two separate values for min and max. What am I seeing with this operand?
What is the fastest way to collimate the light coming from a point object with a lens?
What is the fastest way to collimate the light coming from a point object with a lens? I would like to optimize the position of the object, such as the light after the lens and hitting the image plane is collimated. An equivalent of minimizing RMS Angular radius in sequential mode. I reversed the optics to use the quick focus tool to find the focal distance and then reversed them again, but I wonder if there is a “quick collimation” analogue to quick focus. I hope I explained myself ;)
Subscription FAQ - web page
I found this web page somehow while searching MyZemax, and can't find it to get there again with any searches, so I thought I would share it with everybody: https://my.zemax.com/en-US/Licensing-Policies/subscription-faq/ Note that this is NOT the same page found at (MyZemax) Home > Licensing > Subscription , and as far as I can tell, you can't find it as a tab or link within any of those pages, either: It has lots of good information on license policies in general, pricing, keys, and migration from Perpetual to Subscription versions, which I have been considering (although still don't fully understand). I'm assuing that it's correct and that Zemax wants people to know this information! -- Greg
What is this error "Attribute error: object has no attribute…" in the ZOS-API?
I am running some API code. It was working fine before, but now I am running it again and am getting the error 'Attribute Error: 'NoneType' object has no attribute 'ClearDetectors''. Why is this suddenly appearing?
Already have an account? Login
Enter your username or e-mail address. We'll send you an e-mail with instructions to reset your password.