Skip to main content

I want to get information about how I can design a microlens array in sequetial and non sequential mode. 

Hi Ceren,



This will depend on the shape of the lenses and their size to ensure that ray tracing is applicable.



In sequential mode, I would suggest the sample .dll that is included in OpticStudio.






 



Lenslet arrays are modeled using the user defined surface. Basically, the ray trace determines which segment of the array is struck, then uses the local lens curvature to determine the refraction. The sample source code and DLL are provided as US_ARRAY.C and US_ARRAY.DLL, respectively.



In non-sequential mode, the easiest would be to define the parent lens and replicate it using boleans operations and the array object.





Best,


I am trying to design a microlens array (10*10) in sequential mode but after designing the array the results show the 9*9 array.



How it is possible?


Please check the attached file and suggest it to me.


Hi Neha,



US_Array models an n x m array of lenses, but the number of lenses in each direction must be odd. If you want an even number, you have a few options:



1. You could just place an aperture before the US_ARRAY.DLL object so that the correct number of lenses is chosen. 





2. You could modify the C code of the DLL to create a new lenslet array that meets your specifications (You can find the code in the DLL\Surfaces folder).



3. You could modify your sequential system to include a nonsequential region that contains your lenslet array, using the Lenslet Array object.


Reply