Skip to main content

No project description provided

Project description

Tests Documentation Status codecov Maintainability Stars License: MIT

Optiland

Table of Contents
  1. Introduction
  2. Installation
  3. Functionalities
  4. Learning Guide
  5. License
  6. Contact
  7. Acknowledgements & References

Introduction

Optiland is a lens design and analysis program written in Python 3. It provides an intuitive and efficient interface for defining and visualizing lens systems, performing optimization of lens systems based on user-defined merit functions and variables, as well as analyzing optical systems using geometric and diffraction-based methods. Leveraging computational libraries such as NumPy and SciPy, Optiland delivers exceptional performance and efficiency in handling complex optical computations.

Get started immediately with Optiland Tutorial #1, see the extensive Learning Guide, or read the full documentation at Read the Docs.

U.S. patent 2959100

Python code to generate this 3D visualization:

from optiland.samples.objectives import ReverseTelephoto
lens = ReverseTelephoto()
lens.draw3D()

Documentation

The full documentation for Optiland is hosted on Read the Docs.

Installation

You can install the package using pip. To do so, follow these steps:

  1. Open a terminal or command prompt.

  2. Run the following command to install the package:

    pip install optiland
    

Functionalities

  • Lens entry
  • 2D/3D visualization
  • Paraxial and aberration analyses
  • Real and paraxial ray tracing, including aspherics and freeforms
  • Polarization ray tracing
  • Real analysis functions (spot diagrams, ray aberration fans, OPD fans, distortion, PSF, MTF, etc.)
  • Glass and material catalogue (based on refractiveindex.info)
  • Design optimization (local and global)
  • Wavefront and Zernike analysis
  • Tolerancing, including sensitivity analysis and Monte Carlo methods
  • Coating and surface scatter (BSDF) analysis
  • Zemax file import

The code itself is in constant flux and new functionalities are always being added.

Learning Guide

This guide gives a step-by-step approach to learning how to use Optiland.

  1. Introduction to Optiland
  2. Real Raytracing & Analysis
  3. Aberrations
  4. Optical Path Difference (OPD), Point Spread Functions (PSF) & Modulation Transfer Function (MTF)
  5. Optimization
  6. Coatings & Polarization
  7. Advanced Optical Design
  8. Tolerancing
  9. Lens Catalogue Integration
  10. Extending Optiland
    • Tutorial 10a - Custom Surface Types
      • Adding new surface types
    • Tutorial 10b - Custom Coating Types - Update in progress (target completion: Nov. 2024)
      • Adding new coating types
    • Tutorial 10c - Custom Optimization Algorithms - Update in progress (target completion: Nov. 2024)
      • Adding new optimization approaches
  11. Machine Learning in Optical Design
    • Tutorial 11a - Reinforcement Learning for Lens Design - Update in progress (target completion: Nov. 2024)

License

Distributed under the MIT License. See LICENSE for more information.

Contact

Kramer Harrison - kdanielharrison@gmail.com

Acknowledgements & References

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

optiland-0.1.4.tar.gz (7.6 MB view hashes)

Uploaded Source

Built Distribution

optiland-0.1.4-py3-none-any.whl (9.7 MB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page