Source Diode with circular aperture

  • 8 December 2020
  • 29 replies


I need for my simulation source diode with circular instead of rectangular aperture (without the possibility to model arrays).

Thus I would like to know if the DLL code of source diode is available, so that I can manipulate it for my purposes.

Thanks and best regards



Best answer by Berta.Bernad 9 December 2020, 13:19

View original

29 replies


Hi Michael, thanks for your support.

I understand the superellipse-function. I doubt that there are users which really need such a function. But okay, is not my software.

Calling this superellipse function in the manual supergaussian function is from my point of view misleading.

A real supergaussian function would make sense, but is currently not implemented. For example it would allow to change the gaussian profile into a more flattop-shaped profile. From my point of view BOTH functions could be implemented by the following modell:

n: Supergauss-Factor

G: Superellipse-Factor


Regarding the direction cosines:

I am not sure if you have understood the problem which I want to point out.

For Gx=Gy=1 Zemax software shows a nice rotationally symmetric intensity profile on a rectangular detector. Everything perfect!

Then I had a look on the modell funktion in the manual:

and asked Kevin if theta_x and theta_y are really the angle between the ray vector and the coordinate axis. He affirmed this. But something must be wrong. It is just simple Matlab coding and you can see that it does not provide a rotationally symmetric intensity profile on a rectangular detector, if you take the formula in the manual and Kevin's interpretation of theta_x and theta_y. Thus, there must be something wrong, either Kevin's answer or the formula in the manual.

I assume, that theta_x and theta_y are not the angles between the ray vector and the coordinate axis, but the direction cosines of this angle.

Then there would be no contradiction any more...  

Best regards




Userlevel 6
Badge +2

Hello Dirk

I will check with my colleagues regarding the Source Diode.

But in the meantime, I was thinking that maybe you would be interested by the GaussianSource.dll. It was written by one of our user and comes with the software. I can send you the source code if needed. The description of that source can be found here in the help file: The Setup Tab > Editors Group (Setup Tab) > Non-sequential Component Editor > Non-sequential Sources > Source DLL

Regarding DLLs, have a look at these two articles:

Let us know if that can be a solution.


Hello Sandrine,

thanks a lot. That sounds great.

Can you send the source code to

Michael Cheng was so kind to offer also support regarding DLL coding.

This is great.

Thanks a lot and best regards



Userlevel 6
Badge +2

Yes I will do that now.