API reference¶
All modules of pyoptics, grouped by topic. Each page starts with the module docstring, followed by summary tables and the full documentation of every public class and function. Names in docstrings refer to the conventions in Conventions.
Propagation¶
Propagators for electromagnetic fields. |
|
Propagation onto tilted planes. |
|
Propagation with analytic handling of the wavefront phase. |
|
Wave propagation method (WPM) of Brenner and Singer. |
|
Helper module to deal with FFTs. |
Rigorous electromagnetics (FDTD)¶
Finite-difference time-domain (FDTD) solver for Maxwell's equations in 1D and 2D. |
|
The Yee grid: sizes, staggered sample positions and the time step. |
|
Shapes that make up a structure. |
|
Media: relative permittivity and conductivity. |
|
Boundary conditions: convolutional PML, PEC walls and periodicity. |
|
Sources: time profiles, soft current sources and the total-field / scattered-field (TFSF) plane wave. |
|
Monitors record data during a run, so the full time history never has to be stored. |
|
The Simulation: structure, sources, monitors and the time stepping. |
|
Saving and loading monitor data. |
|
Plots and animations of FDTD simulations (needs matplotlib). |
Beams, modes and paraxial optics¶
Analytical beam definitions. |
|
Beam widths, divergence and beam propagation ratio M² after ISO 11146. |
|
Mode analysis of beams and step-index fibre modes. |
|
ABCD (ray transfer) matrices for paraxial ray optics and Gaussian beams. |
Imaging and ray tracing¶
Simple imaging: coherent imaging, point spread function (PSF), optical transfer function (OTF), modulation transfer function (MTF) and Strehl ratio. |
|
Analytical solutions for testing. |
|
Module for basis sets. |
|
Vectorial, partially coherent imaging (Abbe's method), e.g. for lithography. |
|
Microscopy: partially coherent bright field imaging, phase contrast, DIC, confocal microscopy and Fourier ptychography. |
|
Sequential ray tracing through optical systems. |
|
Conversion between ray ensembles and sampled wave fields. |
|
Fresnel lenses: design, ray tracing with real facets, and the way back. |
|
Delano's y-ybar diagram: first order layout of optical systems. |
|
Damped least squares optimization of |
Lithography¶
Lithography imaging toolbox. |
|
Illumination sources for lithographic imaging. |
|
Masks for lithographic imaging: layouts (geometry) and mask stacks (materials and the model that turns them into transmissions). |
|
Wafer stack: a resist layer on a thin film stack, for images inside the resist. |
|
Projection lens and lithography simulation (Abbe's method). |
|
Image quality metrics for lithography. |
|
Aberrations of a ray traced projection lens in lithographic imaging: from the lens design to CD, placement and best focus across the slit, and the sensitivities of these to Zernike coefficients. |
|
Hopkins imaging: transmission cross coefficients (TCC) and their sum of coherent systems (SOCS) decomposition. |
|
Resist model for chemically amplified (DUV) resists in an x-z cross section: exposure, post-exposure bake (PEB) and development. |
|
Rigorous coupled wave analysis (RCWA, Fourier modal method) of 1D lamellar gratings, for rigorous (thick) mask diffraction. |
|
Jones pupils: the polarization properties of a projection lens, their representations and decompositions. |
|
Source optimization ("SO lite"): a pixelated source optimized for a set of clips. |
|
Optical proximity correction (OPC) of Manhattan layouts. |
|
Ray traced KrF illuminator: from the secondary source to the reticle. |
|
Plots for lithography simulations (needs matplotlib). |
Interfaces, thin films and polarization¶
Fresnel coefficients of a single planar interface between two media. |
|
Thin film reflection and transmission coefficients. |
|
Thin film coatings on the surfaces of a ray traced system. |
|
Simple dispersion models for optical materials. |
|
Polarization: Jones calculus (jones), Mueller calculus (mueller) and helpers for TE/TM bases, partially polarized light, DOP and IPS. |
|
Tools for Jones calculus. |
|
Tools for Müller calculus: Müller matrices of common elements optical elements and Stokes vectors of common polarization states. |
Measurement and phase retrieval¶
Interferometry: simulation of interferograms, phase-shifting interferometry (PSI) and Fourier-transform fringe analysis (Takeda). |
|
Digital holography: recording, reconstruction, refocusing and autofocus. |
|
Phase unwrapping in one and two dimensions. |
|
Phase retrieval: recover a phase from intensity measurements. |
|
Shack-Hartmann wavefront sensor: spot images, centroids and reconstruction. |
|
Routines for TIE |
|
Module that implements IFTA-style algorithms. |
|
Module that defines image processing classes. |
Utilities¶
Utils for pyoptics. |
|
Geometry helper functions. |
|
Masks useful for optical applications. |
|
Image interpolation. |
|
Plot helpers: intensities, complex fields (amplitude and phase) and image stacks through focus. |
|
Schematic drawings of optical layouts with matplotlib: thin lenses, stops, prisms, mirrors, detectors and paraxial rays, and ready-made sketches of microscopes, interferometers, wavefront sensors and other setups of the example notebooks. |