finesse.components.mirror module
Dielectric interface type components representing physical mirrors.
- class finesse.components.mirror.Mirror(*args, **kwargs)[source]
Bases:
SurfaceThe mirror component represents a thin dielectric surface with associated properties such as reflectivity, tuning, and radius of curvature. Mirror components are nominally at normal incidence to the beams. It has two optical ports p1 and p2 which describes the two beams incident on either side of this surface. The surface normal points out of the mirror on the p1 side. A mirror also has a mechanical port mech which has nodes for longitudinal, yaw, and pitch motions. These mechanical nodes are purely for exciting small signal oscillations of the mirror. Static offsets in longitudinal displacements are set by the phi parameter (in units of degrees), yaw by the xbeta parameter, and pitch the ybeta parameter.
Parameters
- namestr
Name of newly created mirror.
- Rfloat, optional
Reflectivity of the mirror; defaults to 0.5.
- Tfloat, optional
Transmittance of the mirror; defaults to 0.5.
- Lfloat, optional
Loss of the mirror; defaults to 0.0.
- phifloat, optional
Tuning of the mirror (in degrees); defaults to 0.0.
- Rcfloat or container of two floats, optional
The radius of curvature of the mirror (in metres); defaults to a flat mirror (Rc=np.inf). Astigmatic mirrors can also be set with Rc=(Rcx, Rcy). A positive value results in a concave mirror on the p1 side of the mirror.
- xbeta, ybetafloat, optional
Misalignment of the mirror in yaw and pitch in units of radians
- misalignedbool, optional
When True the mirror will be significantly misaligned and assumes any reflected beam is dumped. Transmissions will still occur.
- imaginary_transmissionbool, optional
Convention for the transmission and reflection reciprocity relations. ‘True’ uses imaginary transmission and equal real reflection from both sides ‘False’ uses real transmission, negative reflection from side 1, and positive reflection from side 2. defaults to True
Attributes
Attributes are set via the Python API and not available via KatScript.
- surface_map
finesse.knm.maps.Map Describes the surface distortion of this mirror component. Coordinate system to the map is right-handed with the positive-z direction as the surface normal on the port 1 side of the mirror.
- knm_apply_bayer_helms_firstbool
- ABCD(from_node, to_node, direction='x', symbolic=False, copy=True, retboth=False, allow_reverse=False)[source]
Returns the ABCD matrix of the mirror for the specified coupling.
In both cases below, the sign of the radius is defined such that \(R_c\) is negative if the centre of the sphere is located in the direction of propagation.
Transmission
For transmission this is given by,
\[M_{t} = \begin{pmatrix} 1 & 0 \\ \frac{n_2 - n_1}{R_c} & 1 \end{pmatrix}, \]where \(n_2\) and \(n_1\) are the indices of refraction of the spaces connected to the mirror and \(R_c\) is the radius of curvature of the mirror.
The matrix for transmission in the opposite direction of propagation is identical.
Reflection
In the case of reflection the matrix is,
\[M_{r} = \begin{pmatrix} 1 & 0 \\ -\frac{2n_1}{R_c} & 1 \end{pmatrix}. \]Reflection at the back surface can be described by the same type of matrix by setting the \(C\) element to \(C = 2n_2/R_c\).
See
Connector.ABCD()for descriptions of parameters, return values and possible exceptions.
- property L
L : float, optional Loss of the mirror; defaults to 0.0.
- property R
R : float, optional Reflectivity of the mirror; defaults to 0.5.
- property Rcx
Radius of curvature (x)
- property Rcy
Radius of curvature (y)
- property T
T : float, optional Transmittance of the mirror; defaults to 0.5.
- property abcd11x[source]
Numeric ABCD matrix from port 1 to port 1 in the tangential plane.
Equivalent to
mirror.ABCD(1, 1, "x").- Getter:
Returns a copy of the (numeric) ABCD matrix for this coupling (read-only).
- property abcd11y[source]
Numeric ABCD matrix from port 1 to port 1 in the sagittal plane.
Equivalent to
mirror.ABCD(1, 1, "y").- Getter:
Returns a copy of the (numeric) ABCD matrix for this coupling (read-only).
- property abcd12x[source]
Numeric ABCD matrix from port 1 to port 2 in the tangential plane.
Equivalent to
mirror.ABCD(1, 2, "x").- Getter:
Returns a copy of the (numeric) ABCD matrix for this coupling (read-only).
- property abcd12y[source]
Numeric ABCD matrix from port 1 to port 2 in the sagittal plane.
Equivalent to
mirror.ABCD(1, 2, "y").- Getter:
Returns a copy of the (numeric) ABCD matrix for this coupling (read-only).
- property abcd21x[source]
Numeric ABCD matrix from port 2 to port 1 in the tangential plane.
Equivalent to
mirror.ABCD(2, 1, "x").- Getter:
Returns a copy of the (numeric) ABCD matrix for this coupling (read-only).
- property abcd21y[source]
Numeric ABCD matrix from port 2 to port 1 in the sagittal plane.
Equivalent to
mirror.ABCD(2, 1, "y").- Getter:
Returns a copy of the (numeric) ABCD matrix for this coupling (read-only).
- property abcd22x[source]
Numeric ABCD matrix from port 2 to port 2 in the tangential plane.
Equivalent to
mirror.ABCD(2, 2, "x").- Getter:
Returns a copy of the (numeric) ABCD matrix for this coupling (read-only).
- property abcd22y[source]
Numeric ABCD matrix from port 2 to port 2 in the sagittal plane.
Equivalent to
mirror.ABCD(2, 2, "y").- Getter:
Returns a copy of the (numeric) ABCD matrix for this coupling (read-only).
- property misaligned
misaligned : bool, optional When True the mirror will be significantly misaligned and assumes any reflected beam is dumped. Transmissions will still occur.
- property phi
phi : float, optional Tuning of the mirror (in degrees); defaults to 0.0.
- property xbeta
Yaw misalignment
- property ybeta
Pitch misalignment