Optical systems modeling packages?

Hello! not sure if this is the right category. My lab does a lot of work with Zemax to model optical systems, and it looks like there isnt really a good way to share their designs in the proprietary format. Making it hard to collaborate in and out of lab. I’m wondering if anyone knows of good open source packages for optical modeling (not even sure that’s what it’s called) or ways to convert file formats? wondering what the standard way of sharing those designs is

found a prior thread from a different forum: Best open software for optical system design - #9 by Gil_Noy - Software - Microforum

but mostly lots of ideas and little consensus. thanks in advance :slight_smile:

1 Like

Hi @sneakers-the-rat :wave: can you say a little more about what the lab is designing? My guess is these are optics for a microscope or some sort of imaging rig? What domain is it for (neuro)? … I’m just trying to think of who we could ask to try to get some better ideas. My impression from that forum thread is FreeCAD might be the best option, unless there is something that’s more domain specific

Yes! these are miniscopes for 1P fluorescent imaging. So thinking about the design of the optical system rather than the CAD (doing like ray projection diagrams and whatnot)

1 Like

The tricky bit is that existing miniscope all use off-the-shelf optics, right?
e.g., Part Procurement - UCLA Miniscope, ninscope (NINscope) · GitHub, and https://www.biorxiv.org/content/10.1101/2021.01.15.426462v1.full.pdf

Seems like part of the problem is the format but then the other part is having a tool that would work with that format? Collating OSS tools from that forum post you shared, for future reference (these are all Python at least in part AFAICT):

I also found this (probably using a Google search very similar to yours)

:thinking:

I’m not sure who would have nuanced opinions about this – maybe Carsen Stringer, Anne Carpenter or people at Janelia? Or maybe even Steve Potter? Sorry, I’m guessing you know these people exist – just trying to think of someone you could “@” somewhere in the fediverse or otherwise to help you get the lay of the land.

I think you’ll get good mileage with “ray tracing” as the keyword for the type of design you’re doing with zemax. Though zemax can do some physical optics modeling which is outside the scope of ray tracing. I don’t have experience using python for this (except some crude code I hobbled together myself in school for investigating simple systems of 2-3 ideal thin lenses) but a quick google search turns up raytracing · PyPI which may be a place to start.