pyoptools.raytrace.surface.plane_mask module¶
Module that defines a reflective plane phase mask surface class
-
class
pyoptools.raytrace.surface.plane_mask.
RPPMask
¶ Bases:
pyoptools.raytrace.surface.surface.Surface
Class to define a reflective plane phase mask.
Description:
RPPMask is a class to define diffractive plane surfaces. If reflectivity is 1 the gratting is reflective, if it is 0 the gratting is transmissive. If it is between 0 and 1, both transmitted and reflected diffracted rays are shown.
The surface shape is given by the shape attribute
The phm attribute is a poly2d instance, that contains the polinomial describing the phase modulation of the gratting. The X and Y input values of the polynomial are in microns.
Example
>>> g=RPPMask(shape=Rectangular(size=(10,10)), phm=poly2d([0,2*pi/15.,0]),M=[1])
This is a 10 mm x 10 mm linear gratting that has a fringe each 15 microns
-
M
¶
-
normal
()¶ Method that returns the normal to the surface
-
phm
¶
-
phx
¶
-
phy
¶
-
propagate
()¶ Method that calculates the propagation of a ray through a diffraction gratting.
This method uses all the units in millimeters
-
topo
()¶ Method that returns the topography of the surface
The matrix returned is . This method mus be overloaded in all subclasses of Surface.
-