optiland.analysis.distortion

Distortion Analysis

This module provides a distortion analysis for optical systems.

Kramer Harrison, 2024

Classes

Distortion(optic[, wavelengths, num_points, ...])

Represents a distortion analysis for an optic.

class Distortion(optic, wavelengths: str | list = 'all', num_points: int = 128, distortion_type: str = 'f-tan')[source]

Represents a distortion analysis for an optic.

Parameters:
  • optic (Optic) – The optic object to analyze.

  • wavelengths (str or list, optional) – The wavelengths to analyze. Defaults to ‘all’.

  • num_points (int, optional) – The number of points to generate for the analysis. Defaults to 128.

  • distortion_type (str, optional) – The type of distortion analysis. Defaults to ‘f-tan’.

optic

The optic object being analyzed.

Type:

Optic

wavelengths

The wavelengths being analyzed.

Type:

list

num_points

The number of points generated for the analysis.

Type:

int

distortion_type

The type of distortion analysis.

Type:

str

data

The generated distortion data.

Type:

list

view(figsize=(7, 5.5))[source]

Visualizes the distortion analysis.

view(fig_to_plot_on: Figure | None = None, figsize: tuple[float, float] = (7, 5.5), *, show: bool = True) tuple[Figure, Axes][source]

Visualize the distortion analysis.

Parameters:
  • fig_to_plot_on (plt.Figure, optional) – The figure to plot on. If None, a new figure will be created. Defaults to None.

  • figsize (tuple, optional) – The size of the figure to create. Defaults to (7, 5.5).

  • show (bool) – If True (default), calls plt.show(). Set False for headless use.

Returns:

The current figure and its axes.

Return type:

tuple