finesse.detectors.gouy.Gouy

Overview

class finesse.detectors.gouy.Gouy(name, *args, from_node=None, to_node=None, via_node=None, direction='x')[source]

Bases: Detector

Detector to measure the accumulated gouy phase across a sequence of spaces.

This detector can operate in one of two modes, depending upon args given:

  • automatically determine the spaces through an arbitrary path by specifying the from_node and to_node arguments,

  • OR provide a pre-determined sequence of spaces (or their names) as positional arguments.

Whichever option is chosen, this detector will compute the same fundamental quantity; that is the sum of the Gouy phases accumulated over each space (in degrees).

Parameters:
namestr

Name of newly created gouy detector.

*argssequence

A sequence of spaces or space names.

from_nodenode-like

An OpticalNode instance, or a data type which can be converted to an optical node.

to_nodenode-like

An OpticalNode instance, or a data type which can be converted to an optical node.

via_nodenode-like

An OpticalNode instance, or a data type which can be converted to an optical node.

directionstr

Plane to detect in - ‘x’ for tangential, ‘y’ for sagittal. Defaults to ‘x’.

Properties

Gouy.needs_fields

Flag indicating whether the detector requires light fields (i.e.

Gouy.needs_trace

Flag indicating whether the detector requires beam traces.

Gouy.spaces

The spaces that this detector will calculated the accumulated Gouy phase over.