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. Documentation
  3. Installation
  4. Functionalities
  5. Learning Guide
  6. License
  7. Contact
  8. Acknowledgements & References

Introduction

Optiland is a Python-based, open-source lens design and analysis framework. With a simple and intuitive Python interface, Optiland enables the design, optimization, and analysis of complex optical systems, from paraxial and real raytracing to polarization, coatings, and wavefront analyses. It supports 2D/3D visualization, comprehensive tolerancing, local and global optimization, and freeform optics, among other features. Built on the speed of NumPy and SciPy, Optiland delivers computational efficiency and flexibility across a wide range of optical tasks.

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.

Explore the Example Gallery for a wide range of lens designs and analyses created with Optiland.

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
  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.6.tar.gz (7.7 MB view details)

Uploaded Source

Built Distribution

optiland-0.1.6-py3-none-any.whl (9.8 MB view details)

Uploaded Python 3

File details

Details for the file optiland-0.1.6.tar.gz.

File metadata

  • Download URL: optiland-0.1.6.tar.gz
  • Upload date:
  • Size: 7.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for optiland-0.1.6.tar.gz
Algorithm Hash digest
SHA256 40061140eefd25dc1db01a6a5ceb96f815c81793b5226f6b7ca4c4a8dd44a609
MD5 c201157e1e2e0c1b584dc1a8f43af32b
BLAKE2b-256 371c45aa834de71cf5ed7000f1f95f2f88f30e13e985771fd46bfde8057817b6

See more details on using hashes here.

Provenance

The following attestation bundles were made for optiland-0.1.6.tar.gz:

Publisher: release.yml on HarrisonKramer/optiland

Attestations:

File details

Details for the file optiland-0.1.6-py3-none-any.whl.

File metadata

  • Download URL: optiland-0.1.6-py3-none-any.whl
  • Upload date:
  • Size: 9.8 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for optiland-0.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 8ab12112df5ad5d1a32dc39cf6d76972adf9d0a763263d19b4d73063613e8180
MD5 0a07d8ff93d9e06b642dfd4ac959adb2
BLAKE2b-256 c93936aa585d0a448cc7089b5f32a7265ef1e077972a52a2206aac43cdcc5ddd

See more details on using hashes here.

Provenance

The following attestation bundles were made for optiland-0.1.6-py3-none-any.whl:

Publisher: release.yml on HarrisonKramer/optiland

Attestations:

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