pyoptools.raytrace.surface.poly_expansion module

Module that defines support for Aspherical optical surfaces

The aspherical optical surfaces defined in this module are defined by the following equation

Z(s):=(c*s^2)/(1+sqrt(1-(1+k)*c^2*s^2))+TaylorPoly(x,y)

The taylor polynomial is defined as in the TaylorPoly Class. The aspherical optical surface, is modeled as a taylor polynomial.

This module is not working and should not be used

class pyoptools.raytrace.surface.poly_expansion.AsphericalHO(**traits)

Bases: TaylorPoly

Class that defines a high order aspherical surface

The aspherical surface is defined as: Z=(Ax*x**2+Ay*y**2)/(1+sqrt(1-(1+Kx)*Ax**2*x**2-(1+Ky)*Ay**2*y**2))+TaylorPoly()

The TaylorPoly is defined by a array in the same way as it is defined in the TaylorPoly Class

Todo

This seems to be inherited from an old code. Needs to check if it is correct, or should be deleted.

Ax = 0.1
Ay = 0.1
Kx = 0.0
Ky = 0.0
error(nsteps=100)

Method that returns the error in the polynomial expansion

Returned Value

(PolyValue-ExactValue).std()

ho_cohef = array([0., 0., 0.])