finesse.components.mirror module

Dielectric interface type components representing physical mirrors.

class finesse.components.mirror.Mirror(*args, **kwargs)[source]

Bases: Surface

The 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_mapfinesse.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

See How Bayer-Helms and map contributions are combined

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

../_images/abcd_mi.svg

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

../_images/abcd_mr.svg

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 refractive_index_1[source]

Refractive index on size 1 (port 1)

property refractive_index_2[source]

Refractive index on size 2 (port 2)

property xbeta

Yaw misalignment

property ybeta

Pitch misalignment