aberrations

Aberrations Package

Provides the Aberrations facade and focused sub-classes for computing first- and third-order aberrations.

The public Aberrations class delegates to three focused classes:
  • ThirdOrderAberrations (TSC, SC, CC, TCC, TAC, AC, TPC, PC, DC)

  • SeidelAberrations (seidels)

  • ChromaticAberrations (TAchC, LchC, TchC)

All public methods on Aberrations continue to work unchanged.

Kramer Harrison, 2026

Classes

Aberrations(optic)

Facade over ThirdOrderAberrations, SeidelAberrations, ChromaticAberrations.

class Aberrations(optic: OpticDataContext)[source]

Facade over ThirdOrderAberrations, SeidelAberrations, ChromaticAberrations.

All public methods delegate to the appropriate focused class. optic.aberrations.seidels() continues to work exactly as before.

Parameters:

optic – The optical system (or any object satisfying OpticDataContext).

AC() BEArray[source]

Compute third-order longitudinal astigmatism.

CC() BEArray[source]

Compute third-order sagittal coma.

DC() BEArray[source]

Compute third-order distortion.

LchC() BEArray[source]

Compute first-order longitudinal axial color.

PC() BEArray[source]

Compute third-order longitudinal Petzval sum.

SC() BEArray[source]

Compute third-order longitudinal spherical aberration.

TAC() BEArray[source]

Compute third-order transverse astigmatism.

TAchC() BEArray[source]

Compute first-order transverse axial color.

TCC() BEArray[source]

Compute third-order tangential coma.

TPC() BEArray[source]

Compute third-order transverse Petzval sum.

TSC() BEArray[source]

Compute third-order transverse spherical aberration.

TchC() BEArray[source]

Compute first-order lateral color.

seidels() BEArray[source]

Compute Seidel aberration coefficients.

third_order() tuple[BEArray, ...][source]

Compute all third-order aberrations and first-order color terms.

class ChromaticAberrations(optic: OpticDataContext)[source]

First-order chromatic aberration quantities.

Parameters:

optic – Any object satisfying the OpticDataContext Protocol.

LchC() BEArray[source]

Compute first-order longitudinal axial color.

Returns:

First-order longitudinal axial color per surface.

TAchC() BEArray[source]

Compute first-order transverse axial color.

Returns:

First-order transverse axial color per surface.

TchC() BEArray[source]

Compute first-order lateral color.

Returns:

First-order lateral color per surface.

class SeidelAberrations(optic: OpticDataContext)[source]

Seidel aberration coefficient sums (SI through SV).

Parameters:

optic – Any object satisfying the OpticDataContext Protocol.

seidels() BEArray[source]

Compute the Seidel aberration coefficients.

Returns:

Array of Seidel aberration coefficients [SI, SII, SIII, SIV, SV].

class ThirdOrderAberrations(optic: OpticDataContext)[source]

Third-order (Seidel) wavefront aberration coefficients.

Parameters:

optic – Any object satisfying the OpticDataContext Protocol.

AC() BEArray[source]

Compute third-order longitudinal astigmatism.

CC() BEArray[source]

Compute third-order sagittal coma.

DC() BEArray[source]

Compute third-order distortion.

PC() BEArray[source]

Compute third-order longitudinal Petzval sum.

SC() BEArray[source]

Compute third-order longitudinal spherical aberration.

TAC() BEArray[source]

Compute third-order transverse astigmatism.

TCC() BEArray[source]

Compute third-order tangential coma.

TPC() BEArray[source]

Compute third-order transverse Petzval sum.

TSC() BEArray[source]

Compute third-order transverse spherical aberration.

third_order() tuple[BEArray, ...][source]

Compute all third-order aberrations and first-order color terms.

Returns:

TSC, SC, CC, TCC, TAC, AC, TPC, PC, DC, TAchC, LchC, TchC, S.

Return type:

A tuple of arrays