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 returnBeamParamobject 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.cavityattribute will point to the correspondingCavityobject when adding this detector to aModelinstance.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 returnBeamParamobject 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: AnOpticalNodeinstance, or a data type which can be converted to an optical node.to_node: AnOpticalNodeinstance, or a data type which can be converted to an optical node.via_node: AnOpticalNodeinstance, 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 aPortinstance 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 aPortinstance 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.