Skip to main content
Question

Plotting ray incidence angles


John.Hygelund
Fully Spectral
Forum|alt.badge.img+1

Hi everyone,

I'm looking for a way to plot ray incidence angles for a given surface. While RAID allows this for individual rays, I'm interested in a plot, similar to the ‘Incident Angle vs. Image Height’ plot, but applicable to an arbitrary surface.

Ideally, it would be a 2D plot that shows the incidence angle over field and pupil coordinates. I've explored using the universal plot, but it doesn't seem straightforward since you can't vary the Hy, Py inputs to the merit function directly.

I realize this can be achieved with a custom script, and I’m hoping someone might already have a solution or be willing to share something that accomplishes this.

Thanks in advance for any help!

9 replies

David.Nguyen
Luminary
Forum|alt.badge.img+2

Sorry didn’t read the question well and cannot delete my post...


David.Nguyen
Luminary
Forum|alt.badge.img+2

I started looking at this and made the following rough code based on RAID:

https://github.com/Omnistic/zosapi_aoi_on_surface_analysis

Its obviously not complete, and there might be errors in my code, but I hope someone else can also contribute to making such a tool. So far, this is what the code gives:

Looking forward to see what comes out of this topic 😊

Take care,


David


Mark.Nicholson
Luminary
Forum|alt.badge.img+3

Hey John,

A bit rough-and-ready, but have you tried the Spot diagram, setting the surface you want (1) and choosing ‘Show Direction Cosines’ (2)?

 

 

 

 

 


John.Hygelund
Fully Spectral
Forum|alt.badge.img+1
  • Author
  • Fully Spectral
  • 71 replies
  • June 25, 2024

Hi @Mark.Nicholson 

Yes, this helps. But it looks like the direction cosines don’t measure the angle of incidence, which I’m after to see angles the coating design needs to accommodate.

 


John.Hygelund
Fully Spectral
Forum|alt.badge.img+1
  • Author
  • Fully Spectral
  • 71 replies
  • June 25, 2024

@David.Nguyen ,

Very cool, this looks like what I’m after. I’ll take a look at your code. Thanks!


John.Hygelund
Fully Spectral
Forum|alt.badge.img+1
  • Author
  • Fully Spectral
  • 71 replies
  • July 1, 2024

Hello David,


I’ve implemented a simpler version of your code in Matlab for plane symmetric systems, which only varies the Y direction of pupil and image coordinates. The script returns the AOI array in memory to compute statistics. Note that RAID always returns a positive number.

Change .txt to .m for the attached.

Below are a few examples. The visualizations are helpful, for me at least…

This result for a mirror in the system: 
 


Here is the result for a powered surface:
  


Image surface:
 

 


David.Nguyen
Luminary
Forum|alt.badge.img+2

Excellent @John.Hygelund,

 

Out of curiosity, what do you take away from such figures? Would you mind elaborating a bit?

Take care,


David


John.Hygelund
Fully Spectral
Forum|alt.badge.img+1
  • Author
  • Fully Spectral
  • 71 replies
  • July 1, 2024

Hi @David.Nguyen,

Consideration for coatings. I have the angle dependence of the coating, but it wasn’t clear how to “see” which surfaces were pushing the limits…Looking at the pupil and field angles provides some more information on how the design performs and could be optimized to improve.

This is a new area for me, so if there is a better way to do it, I’m all ears! 

Thanks,

John


David.Nguyen
Luminary
Forum|alt.badge.img+2

I see, so if you see that the coating performance drops above a certain angle of incidence, you can then look which surfaces display such angles of incidence. Makes sense. I guess you could also adjust the color bar to highlight those regions of interest where the angle of incidence is above a certain threshold. Would it make sense to know the direction of the angle of incidence as well? I’m thinking about a quiver plot maybe.

I have no experience in that area myself, but I’m curious about other people’s applications always 😋

Take care,

 

David

 


Reply


Cookie policy

We use cookies to enhance and personalize your experience. If you accept you agree to our full cookie policy. Learn more about our cookies.

 
Cookie settings