OpticSim.jl is still under active development. Here are things we are considering:

User Interface

  • Improvements to visualization tools
    • Better control of 3D/2D system views
    • More drawing options (e.g. wireframe)
    • More analysis tools e.g. grids of spot diagrams, OPD diagrams etc.
  • Interactive editor, probably in a spreadsheet format or similar
  • Easily usable optimization features


  • Performance improvements
  • More rigorous local optimization (better parameter limits)
  • Global optimization/smart initialization
  • Better interface (particularly for merit function design)


  • Improvements to ray energy accuracy
  • Improve HOE implementations
  • Finish implementation of Bezier and BSpline surfaces (mostly done)


  • Properly support Julia 1.6 once released
  • Add automatic 'run on azure' options
  • Some long standing bug fixes/improvements to implementations


  • Simulation of gradient index (GRIN) materials
  • Simulation of meta-materials
  • CSG file import/export
  • Simulate physical effects of thermal variation (physical expansion)
  • Support polarization of rays and elements relying on this