Optics¶
Common optical building blocks are provided for building up an optical system. Some have more detailed pages which are listed in the table of contents below.
Directional Beamsplitter¶
- 
directional_beamsplitter¶
dbs
DirectionalBeamsplitter Represents a directional beamsplitter optical component. Connections made between ports:
port 1 to port 3 * port 3 to port 4 * port 4 to port 2 * port 2 to port 1
- Syntax
 dbs name
- Required
 name: Name of newly created directional beamsplitter.
Isolator¶
- 
isolator¶
isol
Isolator Represents an isolator optical component with a suppression factor. Suppresses the light field transmitted from p2 to p1. The field from p1 to p2 is.
- Syntax
 isol name S=0.0
- Required
 name: Name of newly created isolator.S: Power suppression in dB. Defaults to 0
Parameters¶
Name Description Units Data type Can change during simualation S Power suppression None float ✓ 
Lens¶
- 
lens¶
Lens Represents a thin lens optical component with an associated focal length.
- Syntax
 lens name f=inf
- Required
 name: Name of newly created lens.- Optional
 f: Focal length of the lens in metres; defaults to infinity.
Parameters¶
Name Description Units Data type Can change during simualation f Focal length m float ✓ 
AstigmaticLens¶
- 
alens¶
AstigmaticLens Represents a thin astigmatic lens optical component with an associated focal lengths.
- Syntax
 alens name fx=inf fy=inf
- Required
 name: Name of newly created lens.- Optional
 fx: Focal length in x-z plane of the lens in metres; defaults to infinity.fy: Focal length of y-z plane the lens in metres; defaults to infinity.
Parameters¶
Name Description Units Data type Can change during simualation fx Focal length (x-z plane) m float ✓ fy Focal length (y-z plane) m float ✓ 
Modulator¶
- 
modulator¶
mod
Modulator Represents a modulator optical component with associated properties such as modulation frequency, index and order.
- Syntax
 mod name f midx order=1 mod_type=pm phase=0.0 positive_only=false
- Required
 name: Name of newly created modulator.midx: Modulation index, >= 0.- Optional
 f: Frequency of the modulation (in Hz) orFrequencyobject.order: Maximum order of modulations to produce. Must be 1 for amplitude modulation. Defaults to 1.mod_type: Modulation type, either ‘am’ (amplitude modulation) or ‘pm’ (phase modulation). Defaults to ‘pm’.phase: Relative phase of modulation (in degrees). Defaults to 0.0.positive_only: If True, only produce positive-frequency sidebands. Defaults to False.
Parameters¶
Name Description Units Data type Can change during simualation f Frequency Hz float ✓ midx Modulation index None float ✓ phase Phase degrees float ✓ order Maximum modulation order None int ✗ mod_type Modulation type ('am', 'pm') None int ✗ positive_only Positive only None bool ✗ 
Optical Bandpass¶
- 
optical_bandpass¶
obp
OpticalBandpassFilter An idealised optical bandpass filter that will transmit an optical frequency around some central frequency with a 3dB bandwidth.
- Syntax
 obp name fc=0 bandwidth=1000 filter_hom=none
- Required
 name: Name of elementfc: Central frequencybandwidth: Filter 3dB bandwidth- Optional
 filter_hom: Individual higher order modes can be filtered and transmitted by setting this to a tuple of (n, m). IfNonethen no mode filtering is done. This cannot be changed during a simulation.
Parameters¶
Name Description Units Data type Can change during simualation fc Central frequency Hz float ✓ bandwidth Bandpass bandwidth Hz float ✓ 
Frequency Loss¶
- 
floss¶
FrequencyLoss Represents an unphysical element which introduces a loss and/or phase for a particular frequency.
- Syntax
 floss name f loss=0 phase=0
- Required
 name: Name of newly created lens.- Optional
 f: Frequency to apply loss and phase to.loss: Fractional loss at the frequencyphase: Phase change at the frequency
Parameters¶
Name Description Units Data type Can change during simualation loss Loss None float ✓ phase Phase Degrees float ✓ f Frequency Hz float ✓