Optiland v0.5.9 Release Notes
v0.5.9 represents a significant architectural expansion for Optiland, introducing critical capabilities for complex system design. This release focuses on high-fidelity modeling for wide-angle and zoom systems through multi-configuration support and robust ray aiming. Additionally, new image simulation tools and advanced material definitions further bridge the gap between theoretical design and practical analysis.
🔭 Advanced System Modeling
Multi-Configuration Support
Implemented a comprehensive multi-configuration framework, enabling the design and analysis of systems with variable states, such as zoom lenses and focusing groups. Examples demonstrating these capabilities have been added to the gallery.
Robust Ray Aiming
Added iterative ray aiming methods designed for systems where paraxial assumptions fail. This allows for accurate pupil sampling in systems with high fields of view (FOV) and significant pupil aberration.
Image Simulation
Introduced an image simulation module, allowing users to generate simulated images of scenes as they would appear when imaged through the optical system.
Real Ray Image Height Fields
Added a "Real Ray Image Height" field type, enabling optimization and analysis based on the actual ray landing coordinates rather than paraxial approximations.
📐 Physics & Analysis
Afocal Wavefront Mode
Enabled an afocal mode for wavefront and Optical Path Difference (OPD) calculations. When active, OPD is calculated against a planar reference wavefront rather than a spherical reference, suitable for collimated output systems.
Jones Pupil Analysis
Added functionality for Jones Pupil analysis to evaluate polarization states across the pupil.
Orthogonal Descent Optimizer
Integrated an orthogonal descent optimizer, providing an alternative local optimization strategy for specific convergence characteristics.
Geometric MTF Scaling
Refined the scaling logic within the Geometric MTF calculation to improve accuracy in diffraction-limited regimes.
⚙️ Core & Visualization
Visualization Enhancements
Updated the optic.draw() method with new controls:
- Vignetting Control: Added an option to hide vignetted rays for cleaner layout inspection.
- Aperture Visualization: Physical apertures are now visually represented in the system draw.
Material Modeling
-
Improved Abbe Materials: Introduced a revamped
AbbeMaterialfor modeling glass based solely on refractive index ($n_d$ ) and Abbe number ($V_d$ ), along with a specific e-line variant. - Formatting: Fixed formatting issues in the lens info viewer for material data.
Geometry Scaling
Implemented a universal scale method across all geometry classes. This ensures that surface parameters evolve correctly when the macroscopic system scale is modified.
Interoperability & API
- Zemax Import: Added support for importing circular aperture definitions from Zemax files.
- Surface Management: Added a
remove_surfacemethod to the Optic class for dynamic system modification.
🐛 Stability & Maintenance
- Forbes Polynomials: Addressed numerical issues related to Forbes polynomial surfaces.
- Phase Interaction: Fixed a unit consistency bug in the phase interaction model.
- Documentation: General improvements to documentation, including the README, and expanded test coverage to ensure reliability of new features.
Summary
Optiland v0.5.9 significantly widens the scope of simulatable systems, moving from static, standard-field designs to complex, dynamic, and wide-angle optical systems.
Contributors in v0.5.9
@RFerraciniAlves, @manuelFragata, @Xiong-Ziyi, @v4sud3v, @Littie28, @HarrisonKramer
