Physics
-
eigenmodes
Eigenmodes For a given Cavity defined in a model, this action will compute the roundtrip operator and calculate the eigen-values and -vectors of the cavity. This will not give correct solutions for coupled cavities as these need to include additional effects.
This can be used to determine what modes combination of modes are resonating in a cavity and the required tuning to make that mode resonate.
- Syntax:
eigenmodes(cavity, frequency, name='eigenmodes')
- Required:
cavity
: cavity name orCavity
instancefrequency
: Optical carrier or signal frequency to use for calculating the operators- Optional:
name
: Name of the solution generated by this action
-
operator
Operator This action can be used to extract operators out from a simulation for external use. The operators are defined by a path in the network between two nodes (via some other if more direction is required).
The model.path method can be used to test which nodes are traversed before using this to extract operators if needed.
- Syntax:
operator(start_node, end_node, via=none, frequency=0, name='operator')
- Required:
start_node
: Start node nameend_node
: End node name- Optional:
via
: Via node to use to specify a path with multiple optionsfrequency
: Optical carrier or signal frequency to use for calculating the operatorsname
: Name of the solution generated by this action
-
abcd
ABCD Computation of an ABCD matrix over a path.
See
compute_abcd()
for details.- Syntax:
abcd(name=abcd, **kwargs)
-
beam_trace
BeamTrace Full beam tracing on a complete model.
See
Model.beam_trace()
for details.- Syntax:
beam_trace(name='beam_trace', **kwargs)
-
propagate_beam
PropagateBeam Propagation of a beam, in a single plane, through a given path.
See
Model.propagate_beam()
for details.- Syntax:
propagate_beam(name='propagation', **kwargs)
-
propagate_beam_astig
PropagateAstigmaticBeam Propagation of a beam, in both planes, through a given path.
See
Model.propagate_beam_astig()
for details.- Syntax:
propagate_beam_astig(name='astig_propagation', **kwargs)
-
antisqueezing
AntiSqueezing Computes the amount of anti-squeezing at an output from a squeezing element.
- Syntax:
antisqueezing(f, squeezer, readout, signal=none, name='antisqueezing')
- Required:
f
: Signal frequencies to compute the anti-squeezing oversqueezer
: Name of squeezing componentreadout
: Name of readout port to compute squeezing atsignal
: Name of signal drive to calculate a the signal transfer function of. This is returned in sol.signal and can be used to scale the noise into equivalent units of some signal.