optika#

A Python package for simulating and designing optical systems.

Functions

shape(a)

Return the array shape of the given object.

direction(angles)

Given a 2D vector of azimuth and elevation angles, convert to a 3D vector of direction cosines.

angles(direction)

Convert a 3D vector of direction cosines to a 2D vector of azimuth and elevation angles.

Modules

mixins

Mixin classes used throughout this package.

vectors

Vector types used throughout this package.

targets

Test targets for visualizing the performance of optical systems.

rays

A representation of light rays propagating through an optical system.

propagators

Simulate light propagating through an optical system.

metrology

Simulate the measurement and tolerancing of optical surfaces.

sags

The shape of an optical surface used to direct and focus light.

chemicals

A subpackage for retrieving optical constants of various chemicals.

materials

Simulate the interaction of light with transparent or reflective materials.

apertures

Apertures that can be used by optical surfaces to block a portion of the beam.

rulings

Periodic rulings which can be added to an optical surface to model a diffraction grating.

surfaces

Optical interfaces used to focus light.

sensors

Image sensors used to measure the light intensity at the output of an optical system.

distortion

Model the distortion of a scene observed by an optical system.

radiometry

Model the radiometry of an optical system.

systems

Optical systems consisting of multiple optical surfaces.