Is it possible to simulate small particles on lens surface? The answer is yes, but the method to be used is depend on how accurate you want to modeling it.
- The simplest way is using scattering profile at surface to simulate effects from particles or dust.
If you already know what effects or scattering model will be introduced in raytracing by particles, you can simply apply the scattering profile at specified surface.
In OpticStudio, we have several default scattering profile can be applied at surface, detailed descriptions of those scattering models can be viewed at knowledgebase link I attached below:
What scattering models are available in OpticStudio? https://support.zemax.com/hc/en-us/articles/1500005575662-What-scattering-models-are-available-in-OpticStudio-
In my knowledge, typically the models deal with wide angle scatter from matte surfaces (Lambertian), or narrow angle scatter from polished surfaces (ABg and K-correlation) and were not necessarily intended to deal with randomly positioned dust particles. That said, if you are talking about a large amounts of dust that evenly covers the surface you might be able to approximate the effects with the Lambertian model.
After scattering profile is applied at specified surface, to view scattering effects in analysis windows, please make sure "Scatter Rays" option in Settings is checked.
2. The second way to modeling particles on surface is modeling their actual geometries. Array Ring object in NSC can be used to model multiple identical objects and can be used to place particles on top of the surface. Unfortunately, we don’t have exact same example can provide you directly. There is an Knowledgebase article about how to use Array Ring object may help you to understand the method:
How to use the Array Ring Object: https://support.zemax.com/hc/en-us/articles/1500005487301-How-to-use-the-Array-Ring-Object