CMOS image sensor with macroscopic lens - Zemax needed?


In our project, we coat a diffracting layer on a CMOS sensor. The transmission of the diffracting layer is angle dependent and we would like to see the transmission of the layer in real imaging applications. To simulate the transmission when imaging an object with lenses, should I use Zemax to first simulate light field after the lenses and use it as a light source for FDTD simulation? Or I should use the Point Spread Function simulation described here? What is the difference between these two methods?

I have watched the videos introducing the interoperability between Zemax and FDTD but there was not an example about CMOS image sensor. It would be great if you can give more details.


Hello @frank1,

The FDTD method is not really suited to perform large scale geometric optics simulations. Nor are ray tracing software packages like Zemax suitable for characterizing CMOS sensor performance. Thus we provide co-integration for more efficient and accurate optical design workflows. For macroscopic elements FDTD is very inefficient and for electro-optic/$ \lambda $-scale components geometric optics is inexact.

I would say that ray tracing in Zemax is essential for complicated optical systems and when a realistic account of wave-front aberrations is important; however, if you can make enough approximations that it is possible to characterize the system as are a single ideal lens with given NA then using the the PSF method would be fine. Characterizing the optical response of a CMOS sensor with a diffractive layer could be done in FDTD easily with the PSF approximation. If you need to look at image quality across the focal plane of a real system I would get a Zemax license.

Please refer to this example which I believe may be relevant.

CMOS Image Sensor Angular Response


Thank you for the explanation! I am using the PSF method because it costs less to achieve what I want.

But in case I need to use Zemax later, is there a simulation workflow that I can refer to? Is it like what I understand - achieve a field distribution using Zemax and then import it as a source in FDTD? I am very new to Zemax so please correct me if I am wrong. Thanks.