Options for free optical simulation?

This page summarizes the projects mentioned and recommended in the original post on /r/Optics

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • raypier_optics

    A raytracing toolkit for optical design

  • Raypier - current front runner, I've managed to model both an RC telescope and a thorlabs microlens array here with results that seem quite reasonable. Also has a gui for sanity checking/interactivity. Unfortunately the performance really starts to tank as you increase the resolutions of the plane where the E-field is evaluated, increase number of rays or increase number of surfaces. (Something I would like to do to be able to model atmospheric disturbance + mirror misalignments +

  • prysm

    physical optics: integrated modeling, phase retrieval, segmented systems, polynomials and fitting, sequential raytracing... (by brandondube)

  • Prysm Originally for diffraction type optics but seems to able to handle...everything? Performance as a priamary concern, GPU acceleration, proven JPL heritage :) Raytracing is however still experimental and without docs, generally whilst the library looks excellent if you're an optics person already I think I lack a bit of the base fundamental knowledge to really use it powerfully from just the API reference. I can see BDube has some raytracing example code in some of the issues I could probably adapt and muddle my way through at least. No guis is mildly annoying for a noob like myself, but I can work my way around matplotlib-ing just fine instead i'm sure.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • pyoptica

  • Pyoptica Seems purely for diffractive effects, not relevant for my needs? Not sure why I would use it over Prysm too.

  • SympleyWavey

    A collection of code and design related to a DIY shack-hartmann wavefront sensor. Very much WIP :)

  • Out of these I've downloaded Raypier, Aether and Quadoa trial. Even then I've only gotten stuck into Raypier, code used to generate those above scenes is here if anyone is curious: https://github.com/AlistairSymonds/SympleyWavey/tree/main/simulations. If the performance didn't slow so much I'd just crank the rays counts and be happy with that, my inclination is to figure out prysm now too but was wondering if there's anything else obvious I've missed out there? Or am I approaching this all entirely incorrectly! Any and all comments on my rambling welcome :)

  • goray

  • If you structure the program similar to this then you can get scaling that is basically proportional to the number of cores; and that continues all the way up to a 2x6248R 48 core system, which is ~44 times faster with all of the cores vs 1 core.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts