Aperture
- class raytracing.Aperture(diameter, NA=inf, label='')
Bases:
MatrixAn aperture of finite diameter, null thickness.
- Parameters:
diameter (float) – The diameter of the aperture to be considered
label (string) – The label of the aperture
Examples
>>> from raytracing import * >>> #define an aperture of diameter 10 >>> A=Aperture(diameter=10,label='aperture') >>> print(A) #print the transfer matrix of the aperture | 1.000 0.000 | | | | 0.000 1.000 | f = +inf (afocal)
Notes
If the ray is beyond the finite diameter, the ray is blocked.
Methods
|
Inherited Methods
|
The focal lengths measured from the back vertex. |
|
With an image at the back edge of the element, where is the object ? Distance before the element by which a ray must travel to reach the conjugate plane at the back of the element. |
|
|
|
A reasonable height for display purposes for an element, whether it is infinite or not. |
|
The effective focal lengths calculated from the power (C) of the matrix. |
|
We flip the element around (as in, we turn a lens around front-back). |
|
This is the synonym of effectiveFocalLengths() |
|
Positions of both focal points on either side of the element. |
|
With an object at the front edge of the element, where is the image? Distance after the element by which a ray must travel to reach the conjugate plane of the front of the element. |
|
A simple method to obtain a MatrixGroup that includes all three matrices to travel from the front focus, through the lens, and then to the back focus. |
|
|
|
The focal lengths measured from the front vertex. |
|
If the system has a finite aperture size |
|
The magnification of the element |
|
This function calculates the multiplication of a coherent beam with complex radius of curvature q by an ABCD matrix. |
|
This function is used to combine two elements into a single matrix. |
|
This function does the multiplication of a ray by a matrix. |
|
The optical invariant is a quantity that is conserved for any two rays in the system. |
|
Any points of interest for this matrix (focal points, principal planes etc...) |
|
Positions of the input and output principal planes. |
|
|
|
|
|
The ray matrix formalism, through multiplication of a ray by a matrix, will give the correct ray but will never consider apertures. |
|
This function trace each ray from a group of rays from front edge of element to the back edge. |
|
This function trace each ray from a group of rays from front edge of element to the back edge. |
|
This function trace each ray from a group of rays from front edge of element to the back edge. |
|
This function trace each ray from a list or a Rays() distribution from front edge of element to the back edge. |
|
This is an advanced technique to gain from parallel computation: it is the same as traceManyThrough(), but splits this call in several other parallel processes using the multiprocessing module, which is os-independent. |
|
Contrary to trace(), this only returns the last ray. |
|
The list of Matrix() that corresponds to the propagation through this element (or group). |
|
The Matrix() that corresponds to propagation from the edge of the element (z=0) up to distance "upTo" (z=upTo). |
Attributes
|
|
|
The determinant of the ABCD matrix is always frontIndex/backIndex, which is often 1.0. |
|
A list of surfaces that represents the element for drawing purposes |
|
If True, then there is a non-null focal length because C!=0. |
|
|
|
If B=0, then the matrix represents that transfer from a conjugate plane to another (i.e. object at the front edge and image at the back edge). |
|
Largest diameter for a group of elements |
|