Detectors¶
-
amplitude_detector¶
ad Represents an amplitude detector which calculates the amplitude and phase of light fields at one frequency.
- Syntax:
ad name node f n=none m=none
- Required:
name
: Name of newly created detector.node
: Node to read output from.f
: Frequency of light to detect (in Hz).- Optional:
n
: Tangential mode index to probe. Defaults to None such that all fields of the given frequency are summed.m
: Sagittal mode index to probe. Defaults to None such that all fields of the given frequency are summed.
-
astigd¶
Detector for astigmatism figure-of-merit at a given node.
- Syntax:
astigd name node
- Required:
name
: Name of the detector.node
: Node to compute astigmatism at.
-
beam_property_detector¶
bp Probe for detecting the properties of a beam at a given node.
- Syntax:
bp name node prop direction=x q_as_bp=false
- Required:
name
: Name of newly created detector.node
: Node to read output from.prop
: The property of the beam to detect. See above for options.- Optional:
direction
: Plane to detect in - ‘x’ for tangential, ‘y’ for sagittal.q_as_bp
: If detecting q, should the detector output returnBeamParam
object instead of just a complex number.
-
ccd¶
Camera for detecting the full image of the beam in terms of the intensity.
- Syntax:
ccd name node xlim ylim npts w0_scaled=true
- Required:
name
: Unique name of the camera.node
: Node at which to detect.xlim
: Limits of the x-dimension of the image. If a single number is given then this will be computed as \(x_{\mathrm{lim}} = [-|x|, +|x|]\).ylim
: Limits of the y-dimension of the image. If a single number is given then this will be computed as \(y_{\mathrm{lim}} = [-|y|, +|y|]\).npts
: Number of points in both axes.- Optional:
w0_scaled
: Flag indicating whether the \(x\), \(y\) axes should be scaled to the waist-size of the beam parameter at node.
-
ccdline¶
Camera for detecting a slice of the beam in terms of the intensity.
- Syntax:
ccdline name node npts x=none y=none xlim=none ylim=none w0_scaled=true
- Required:
name
: Unique name of the camera.node
: Node at which to detect.npts
: Number of points in slice axis.x
: The x coordinate of the slice. If ylim is given and this is not specified then defaults to zero. If xlim is given and this is also specified then it is ignored.y
: The y coordinate of the slice. If xlim is given and this is not specified then defaults to zero. If ylim is given and this is also specified then it is ignored.xlim
: The limits of the x-axis scan lines. A single number gives \(x_{\mathrm{axis}} \in [-|x|, +|x|]\), or a tuple of size two gives \(x_{\mathrm{axis}} \in [x[0], x[1]]\).ylim
: The limits of the y-axis scan lines. A single number gives \(y_{\mathrm{axis}} \in [-|y|, +|y|]\), or a tuple of size two gives \(y_{\mathrm{axis}} \in [y[0], y[1]]\).- Optional:
w0_scaled
: Flag indicating whether the \(x\), \(y\) axes should be scaled to the waist-size of the beam parameter at node.
-
ccdpx¶
Camera for detecting a single pixel of the beam in terms of the intensity.
- Syntax:
ccdpx name node x=0 y=0 w0_scaled=true
- Required:
name
: Unique name of the camera.node
: Node at which to detect.- Optional:
x
: The x co-ordinate of the pixel.y
: The y co-ordinate of the pixel.w0_scaled
: Flag indicating whether the \(x\), \(y\) axes should be scaled to the waist-size of the beam parameter at node.
-
cavity_property_detector¶
cp Probe for detecting the properties of a cavity.
- Syntax:
cp name cavity prop direction=x q_as_bp=false
- Required:
name
: Name of newly created cavity property detector.cavity
: The cavity to probe. If the name is provided then theCavityPropertyDetector.cavity
attribute will point to the correspondingCavity
object when adding this detector to aModel
instance.prop
: Property of the cavity to probe. See above for options.- Optional:
direction
: Plane to detect in.q_as_bp
: If detecting q, should the detector output returnBeamParam
object instead of just a complex number.
-
fcam¶
Camera for detecting the full image of the beam in terms of amplitude and phase.
- Syntax:
fcam name node xlim ylim npts f=0 w0_scaled=true
- Required:
name
: Unique name of the camera.node
: Node at which to detect.xlim
: Limits of the x-dimension of the image. If a single number is given then this will be computed as \(x_{\mathrm{lim}} = [-|x|, +|x|]\).ylim
: Limits of the y-dimension of the image. If a single number is given then this will be computed as \(y_{\mathrm{lim}} = [-|y|, +|y|]\).npts
: Number of points in both axes.- Optional:
f
: Field frequency offset from the carrier to detect.w0_scaled
: Flag indicating whether the \(x\), \(y\) axes should be scaled to the waist-size of the beam parameter at node.
-
fline¶
Camera for detecting a slice of the beam in terms of amplitude and phase.
- Syntax:
fline name node npts x=none y=none xlim=none ylim=none f=0 w0_scaled=true
- Required:
name
: Unique name of the camera.node
: Node at which to detect.npts
: Number of points in slice axis.x
: The x coordinate of the slice. If ylim is given and this is not specified then defaults to zero. If xlim is given and this is also specified then it is ignored.y
: The y coordinate of the slice. If xlim is given and this is not specified then defaults to zero. If ylim is given and this is also specified then it is ignored.xlim
: The limits of the x-axis scan lines. A single number gives \(x_{\mathrm{axis}} \in [-|x|, +|x|]\), or a tuple of size two gives \(x_{\mathrm{axis}} \in [x[0], x[1]]\).ylim
: The limits of the y-axis scan lines. A single number gives \(y_{\mathrm{axis}} \in [-|y|, +|y|]\), or a tuple of size two gives \(y_{\mathrm{axis}} \in [y[0], y[1]]\).- Optional:
f
: Field frequency offset from the carrier to detect.w0_scaled
: Flag indicating whether the \(x\), \(y\) axes should be scaled to the waist-size of the beam parameter at node.
-
fpx¶
Camera for detecting a single pixel of the beam in terms of the amplitude and phase.
- Syntax:
fpx name node x=0 y=0 f=0 w0_scaled=true
- Required:
name
: Unique name of the camera.node
: Node at which to detect.- Optional:
x
: The x co-ordinate of the pixel.y
: The y co-ordinate of the pixel.f
: Field frequency offset from the carrier to detect.w0_scaled
: Flag indicating whether the \(x\), \(y\) axes should be scaled to the waist-size of the beam parameter at node.
-
gouy¶
Detector to measure the accumulated gouy phase across a sequence of spaces.
- Syntax:
gouy name *args from_node=none to_node=none via_node=none direction=x
- Required:
name
: Name of newly created gouy detector.*args
: A sequence of spaces or space names.from_node
: AnOpticalNode
instance, or a data type which can be converted to an optical node.to_node
: AnOpticalNode
instance, or a data type which can be converted to an optical node.via_node
: AnOpticalNode
instance, or a data type which can be converted to an optical node.direction
: Plane to detect in - ‘x’ for tangential, ‘y’ for sagittal. Defaults to ‘x’.
-
knmd¶
Direct probe of coupling coefficients at a component.
- Syntax:
knmd name comp coupling n1=none m1=none n2=none m2=none
- Required:
name
: Name of newly created KnmDetector.comp
: A component which can scatter modes.coupling
: Coupling direction string, e.g. “11” for coupling coefficients on reflection from the front surface of a mirror.n1
,m1
,n2
,m2: int or None
: From (n1, m1) and To (n2, m2) mode indices of the coupling coefficient(s) to retrieve. See above for the options.
-
mmd¶
Detector for mode mismatch figure-of-merit for a specified node coupling.
- Syntax:
mmd name node1 node2 direction=x percent=false
- Required:
name
: Name of the detector.node1
: Input node or port. If aPort
instance is given then this node will be the input node of that port. Note that this node cannot be an output node.node2
: Output node or port. If aPort
instance is given then this node will be the output node of that port. Note that this node cannot be an input node.- Optional:
direction
: Plane of computation, defaults to “x” for the tangential plane. Changing to “y” will compute the mode mismatch in the sagittal plane.percent
: Whether to calculate the mode mismatch as a fraction (default behaviour) or a percentage.
-
motion_detector¶
xd Represents a motion detector which calculates the amplitude and phase of surface motion.
- Syntax:
xd name node
- Required:
name
: Name of newly created motion detector.node
: Node to read output from.
-
power_detector_dc¶
pd Represents a power detector with no RF demodulations. It calculates the DC laser power at a node in Watts of optical power.
- Syntax:
pd name node pdtype=none
- Required:
name
: Name of newly created power detector.node
: Node to read output from.
-
power_detector_demod_1¶
pd1 Represents a power detector with one RF demodulation. It calculates the RF beat power at a node in Watts of optical power.
- Syntax:
pd1 name node f phase=none pdtype=none
- Required:
name
: Name of newly created power detector.node
: Node to read output from.f
: Demodulation frequency in Hz- Optional:
phase
: Demodulation phase in degrees
-
power_detector_demod_2¶
pd2 Represents a power detector with two RF demodulation. It calculates the RF beat power at a node in Watts of optical power.
- Syntax:
pd2 name node f1 phase1 f2 phase2=none pdtype=none
- Required:
name
: Name of newly created power detector.node
: Node to read output from.f1
: First demodulation frequency in Hzphase1
: First demodulation phase in degreesf2
: Second demodulation frequency in Hz- Optional:
phase2
: Second demodulation phase in degrees
-
quantum_noise_detector¶
qnoised Represents a quantum noise detector with no RF demodulations.
- Syntax:
qnoised name node nsr=false sources=none exclude_sources=none
- Required:
name
: Name of newly created quantum noise detector.node
: Node to read output from.- Optional:
nsr
: If true, calculate the noise-to-signal ratio rather than the absolute noise value.sources
: If given, only detect quantum noise contributions from these components.exclude_sources
: If given, this will not detect quantum noise contributions from any of these components, even if explicitly specified in sources.
-
quantum_noise_detector_demod_1¶
qnoised1 Represents a quantum noise detector with 1 RF demodulation.
- Syntax:
qnoised1 name node f phase nsr=false sources=none exclude_sources=none
- Required:
name
: Name of newly created quantum noise detector.node
: Node to read output from.f
: Demodulation frequency in Hzphase
: Demodulation phase in degrees- Optional:
nsr
: If true, calculate the noise-to-signal ratio rather than the absolute noise value.sources
: If given, only detect quantum noise contributions from these components.
-
quantum_noise_detector_demod_2¶
qnoised2 Represents a quantum noise detector with 2 RF demodulations.
- Syntax:
qnoised2 name node f1 phase1 f2 phase2 nsr=false sources=none exclude_sources=none
- Required:
name
: Name of newly created quantum noise detector.node
: Node to read output from.f1
: First demodulation frequency in Hzphase1
: First demodulation phase in degreesf2
: Second demodulation frequency in Hzphase2
: Second demodulation phase in degrees- Optional:
nsr
: If true, calculate the noise-to-signal ratio rather than the absolute noise value.sources
: If given, only detect quantum noise contributions from these components.
-
quantum_shot_noise_detector¶
qshot Represents a quantum shot noise detector with no RF demodulations.
- Syntax:
qshot name node nsr=false
- Required:
name
: Name of newly created quantum shot noise detector.node
: Node to read output from.- Optional:
nsr
: If true, calculate the noise-to-signal ratio rather than the absolute noise value.
-
quantum_shot_noise_detector_demod_1¶
qshot1 Represents a quantum shot noise detector with 1 RF demodulation.
- Syntax:
qshot1 name node f phase nsr=false
- Required:
name
: Name of newly created quantum shot noise detector.node
: Node to read output from.f
: Demodulation frequency in Hzphase
: Demodulation phase in degrees- Optional:
nsr
: If true, calculate the noise-to-signal ratio rather than the absolute noise value.
-
quantum_shot_noise_detector_demod_2¶
qshot2 Represents a quantum shot noise detector with 2 RF demodulations.
- Syntax:
qshot2 name node f1 phase1 f2 phase2 nsr=false
- Required:
name
: Name of newly created quantum shot noise detector.node
: Node to read output from.f1
: First demodulation frequency in Hzphase1
: First demodulation phase in degreesf2
: Second demodulation frequency in Hzphase2
: Second demodulation phase in degrees- Optional:
nsr
: If true, calculate the noise-to-signal ratio rather than the absolute noise value.