There is a newer version of the record available.

Published October 15, 2025 | Version v0.5.7
Software Open

Optiland

Authors/Creators

Description

Optiland v0.5.7 Release Notes

v0.5.7 delivers a major architectural upgrade with new geometry capabilities, backend-agnostic optimization, and improved performance across modeling and analysis. This release focuses on extensibility, clarity, and computational efficiency while preparing the foundation for advanced features like GRIN modeling and next-generation optimization workflows.

<p align="center"> <img width="573" height="371" alt="image" src="https://github.com/user-attachments/assets/f390a6f6-e45a-4941-8118-d16ce5f982d8" /> <br /> <em>Simple example window demonstrating new NURBS functionality. Contribution by @mattemilio</em> </p>

đź§© Core Geometry & Modeling

  • NURBS Geometry Support (New Major Feature)
    Introduces full Non-Uniform Rational B-Spline (NURBS) surface modeling, enabling smooth freeform and parametric designs with unprecedented flexibility.
    Includes integration with surface visualization and sag computation tools.

  • Propagation Model Framework
    Added a generalized propagation model interface that supports current field propagation and will serve as the foundation for GRIN and wave-based modeling in future versions.

  • Interaction Models on Surfaces
    Decoupled ray-surface interaction logic through modular interaction models, improving separation of concerns and paving the way for exotic surface behaviors (diffractive, reflective, refractive, hybrid).

  • Field System Refactor
    Reworked the internal field framework to simplify extension and customization, improving maintainability and consistency across analysis modules.

    • Added Paraxial Image Height as a new field type for rapid paraxial evaluation and comparison with full raytrace results.
  • MMDFT PSF Calculation
    Added a Matrix-Multiply Discrete Fourier Transform (MMDFT) method for efficient, high-accuracy point spread function computation, especially for large pupils or fine sampling grids.

  • Pixel Pitch Option for Huygens PSF
    Introduced a pixel_pitch parameter for Huygens-based PSF analyses, allowing precise control over spatial sampling and detector mapping.

  • AOI Operand for Optimization
    Added Angle of Incidence as a new optimization operand, enabling direct optimization of surface angles and incidence-dependent performance.

đź§  Optimization & Backend Integration

  • Torch Optimization Rework (Major Update)
    Completely restructured optimization backend to allow PyTorch-driven optimization within the standard Optiland framework.

    • Supports backend-agnostic optimization problems that can run seamlessly on either native or torch-based backends.
    • Introduces a torch-like API for differentiable and gradient-based optimization workflows.
    • Includes new documentation and examples demonstrating torch-based optimization.
  • Modular Variable Scaling Framework
    Refactored scaling of optimization variables into a clean modular system, improving transparency, tuning flexibility, and code clarity.

⚙️ Performance & Robustness Improvements

  • Caching of Material Index and Absorption Calculations
    Added intelligent caching to material property computations, significantly improving performance during repeated evaluations and optimization.

  • Wavefront Error Calculation Fixes
    Improved robustness and accuracy in wavefront error computation, addressing numerical edge cases and filtering issues.

  • Forbes Geometry Improvements
    Enhanced numerical stability and handling of Forbes polynomial surfaces.

  • General Bug Fixes and Cleanups
    Numerous fixes across modules, including visualization bugs, doc build issues, and cleanup of obsolete files and redundant utilities.

  • pyproject.toml Compatibility Updates
    Adjusted dependencies to resolve version mismatches with numba and typing-extensions.

🖥️ Graphical User Interface

  • Stability and Responsiveness Improvements
    Multiple GUI fixes addressing visual refresh issues and interactivity problems in the lens editor and analysis panels.

  • Quality-of-Life Enhancements
    Better synchronization between system state and visualization components, improving reliability for multi-surface or diffractive designs.

📚 Documentation & Examples

  • RTD Documentation Expansion
    Improved and expanded ReadTheDocs documentation with clearer structure, new code examples, and setup guidance.

  • New Example Systems

    • Czerny–Turner Spectrometer: Added a fully functional diffractive spectrometer example.
    • Additional doc examples highlighting NURBS usage, torch optimization, and new PSF modes.

<p align="center"> <img width="534" height="525" alt="image" src="https://github.com/user-attachments/assets/3481197a-a591-4dca-bd96-fb1072ddf49c" /> <br /> <em>Czerny–Turner Spectrometer example added in v0.5.7</em> </p>

Optiland v0.5.7 reinforces the platform's foundation with powerful modeling primitives, a unified optimization framework, and improved computational efficiency. This release establishes a strong base for upcoming GRIN modeling, wave-based propagation, and deep integration of differentiable optics.

Contributors in v0.5.7: @mattemilio, @crnh, @Littie28, @rjmoerland, @drpaprika, @scottpaine, @manuelFragata, @hemkumarsrinivas

Notes

If you use this software, please cite it using the metadata from this file.

Files

HarrisonKramer/optiland-v0.5.7.zip

Files (40.2 MB)

Name Size Download all
md5:4a83002c7d8f49a6d527355770cbccc7
40.2 MB Preview Download

Additional details

Related works