finesse.components.modal package
Submodules
finesse.components.modal.beamsplitter module
- class finesse.components.modal.beamsplitter.BeamsplitterOpticalConnections
Bases:
object- P1i_P2o
- P1i_P2o_idx
P1i_P2o_idx: ‘Py_ssize_t’
- P1i_P3o
- P1i_P3o_idx
P1i_P3o_idx: ‘Py_ssize_t’
- P2i_P1o
- P2i_P1o_idx
P2i_P1o_idx: ‘Py_ssize_t’
- P2i_P4o
- P2i_P4o_idx
P2i_P4o_idx: ‘Py_ssize_t’
- P3i_P1o
- P3i_P1o_idx
P3i_P1o_idx: ‘Py_ssize_t’
- P3i_P4o
- P3i_P4o_idx
P3i_P4o_idx: ‘Py_ssize_t’
- P4i_P2o
- P4i_P2o_idx
P4i_P2o_idx: ‘Py_ssize_t’
- P4i_P3o
- P4i_P3o_idx
P4i_P3o_idx: ‘Py_ssize_t’
- class finesse.components.modal.beamsplitter.BeamsplitterSignalConnections
Bases:
BeamsplitterOpticalConnections- P1i_Fpitch
- P1i_Fpitch_idx
P1i_Fpitch_idx: ‘Py_ssize_t’
- P1i_Fyaw
- P1i_Fyaw_idx
P1i_Fyaw_idx: ‘Py_ssize_t’
- P1i_Fz
- P1i_Fz_idx
P1i_Fz_idx: ‘Py_ssize_t’
- P1o_Fpitch
- P1o_Fpitch_idx
P1o_Fpitch_idx: ‘Py_ssize_t’
- P1o_Fyaw
- P1o_Fyaw_idx
P1o_Fyaw_idx: ‘Py_ssize_t’
- P1o_Fz
- P1o_Fz_idx
P1o_Fz_idx: ‘Py_ssize_t’
- P2i_Fpitch
- P2i_Fpitch_idx
P2i_Fpitch_idx: ‘Py_ssize_t’
- P2i_Fyaw
- P2i_Fyaw_idx
P2i_Fyaw_idx: ‘Py_ssize_t’
- P2i_Fz
- P2i_Fz_idx
P2i_Fz_idx: ‘Py_ssize_t’
- P2o_Fpitch
- P2o_Fpitch_idx
P2o_Fpitch_idx: ‘Py_ssize_t’
- P2o_Fyaw
- P2o_Fyaw_idx
P2o_Fyaw_idx: ‘Py_ssize_t’
- P2o_Fz
- P2o_Fz_idx
P2o_Fz_idx: ‘Py_ssize_t’
- P3i_Fpitch
- P3i_Fpitch_idx
P3i_Fpitch_idx: ‘Py_ssize_t’
- P3i_Fyaw
- P3i_Fyaw_idx
P3i_Fyaw_idx: ‘Py_ssize_t’
- P3i_Fz
- P3i_Fz_idx
P3i_Fz_idx: ‘Py_ssize_t’
- P3o_Fpitch
- P3o_Fpitch_idx
P3o_Fpitch_idx: ‘Py_ssize_t’
- P3o_Fyaw
- P3o_Fyaw_idx
P3o_Fyaw_idx: ‘Py_ssize_t’
- P3o_Fz
- P3o_Fz_idx
P3o_Fz_idx: ‘Py_ssize_t’
- P4i_Fpitch
- P4i_Fpitch_idx
P4i_Fpitch_idx: ‘Py_ssize_t’
- P4i_Fyaw
- P4i_Fyaw_idx
P4i_Fyaw_idx: ‘Py_ssize_t’
- P4i_Fz
- P4i_Fz_idx
P4i_Fz_idx: ‘Py_ssize_t’
- P4o_Fpitch
- P4o_Fpitch_idx
P4o_Fpitch_idx: ‘Py_ssize_t’
- P4o_Fyaw
- P4o_Fyaw_idx
P4o_Fyaw_idx: ‘Py_ssize_t’
- P4o_Fz
- P4o_Fz_idx
P4o_Fz_idx: ‘Py_ssize_t’
- Z_P1o
- Z_P1o_idx
Z_P1o_idx: ‘Py_ssize_t’
- Z_P2o
- Z_P2o_idx
Z_P2o_idx: ‘Py_ssize_t’
- Z_P3o
- Z_P3o_idx
Z_P3o_idx: ‘Py_ssize_t’
- Z_P4o
- Z_P4o_idx
Z_P4o_idx: ‘Py_ssize_t’
- pitch_P1o
- pitch_P1o_idx
pitch_P1o_idx: ‘Py_ssize_t’
- pitch_P2o
- pitch_P2o_idx
pitch_P2o_idx: ‘Py_ssize_t’
- pitch_P3o
- pitch_P3o_idx
pitch_P3o_idx: ‘Py_ssize_t’
- pitch_P4o
- pitch_P4o_idx
pitch_P4o_idx: ‘Py_ssize_t’
- yaw_P1o
- yaw_P1o_idx
yaw_P1o_idx: ‘Py_ssize_t’
- yaw_P2o
- yaw_P2o_idx
yaw_P2o_idx: ‘Py_ssize_t’
- yaw_P3o
- yaw_P3o_idx
yaw_P3o_idx: ‘Py_ssize_t’
- yaw_P4o
- yaw_P4o_idx
yaw_P4o_idx: ‘Py_ssize_t’
- class finesse.components.modal.beamsplitter.BeamsplitterValues
Bases:
BaseCValues- L
L: ‘double’
- R
R: ‘double’
- Rcx
Rcx: ‘double’
- Rcy
Rcy: ‘double’
- T
T: ‘double’
- alpha
alpha: ‘double’
- misaligned
misaligned: ‘double’
- phi
phi: ‘double’
- plane
plane: ‘double’
- xbeta
xbeta: ‘double’
- ybeta
ybeta: ‘double’
- class finesse.components.modal.beamsplitter.BeamsplitterWorkspace(owner, BaseSimulation sim)
Bases:
KnmConnectorWorkspace- K12
K12: finesse.knm.matrix.KnmMatrix
- K12_loss
K12_loss: ‘double[::1]’
- K13
K13: finesse.knm.matrix.KnmMatrix
- K13_loss
K13_loss: ‘double[::1]’
- K21
K21: finesse.knm.matrix.KnmMatrix
- K21_loss
K21_loss: ‘double[::1]’
- K24
K24: finesse.knm.matrix.KnmMatrix
- K24_loss
K24_loss: ‘double[::1]’
- K31
K31: finesse.knm.matrix.KnmMatrix
- K31_loss
K31_loss: ‘double[::1]’
- K34
K34: finesse.knm.matrix.KnmMatrix
- K34_loss
K34_loss: ‘double[::1]’
- K42
K42: finesse.knm.matrix.KnmMatrix
- K42_loss
K42_loss: ‘double[::1]’
- K43
K43: finesse.knm.matrix.KnmMatrix
- K43_loss
K43_loss: ‘double[::1]’
- K_pitch_sig
K_pitch_sig: finesse.knm.matrix.KnmMatrix
- K_yaw_sig
K_yaw_sig: finesse.knm.matrix.KnmMatrix
- abcd_p1p2_x
abcd_p1p2_x: ‘double[:, ::1]’
- abcd_p1p2_y
abcd_p1p2_y: ‘double[:, ::1]’
- abcd_p1p3_x
abcd_p1p3_x: ‘double[:, ::1]’
- abcd_p1p3_y
abcd_p1p3_y: ‘double[:, ::1]’
- abcd_p2p1_x
abcd_p2p1_x: ‘double[:, ::1]’
- abcd_p2p1_y
abcd_p2p1_y: ‘double[:, ::1]’
- abcd_p2p4_x
abcd_p2p4_x: ‘double[:, ::1]’
- abcd_p2p4_y
abcd_p2p4_y: ‘double[:, ::1]’
- abcd_p3p1_x
abcd_p3p1_x: ‘double[:, ::1]’
- abcd_p3p1_y
abcd_p3p1_y: ‘double[:, ::1]’
- abcd_p3p4_x
abcd_p3p4_x: ‘double[:, ::1]’
- abcd_p3p4_y
abcd_p3p4_y: ‘double[:, ::1]’
- abcd_p4p2_x
abcd_p4p2_x: ‘double[:, ::1]’
- abcd_p4p2_y
abcd_p4p2_y: ‘double[:, ::1]’
- abcd_p4p3_x
abcd_p4p3_x: ‘double[:, ::1]’
- abcd_p4p3_y
abcd_p4p3_y: ‘double[:, ::1]’
- car_p1i_idx
car_p1i_idx: ‘Py_ssize_t’
- car_p1i_rhs_idx
car_p1i_rhs_idx: ‘Py_ssize_t’
- car_p1o_idx
car_p1o_idx: ‘Py_ssize_t’
- car_p1o_rhs_idx
car_p1o_rhs_idx: ‘Py_ssize_t’
- car_p2i_idx
car_p2i_idx: ‘Py_ssize_t’
- car_p2i_rhs_idx
car_p2i_rhs_idx: ‘Py_ssize_t’
- car_p2o_idx
car_p2o_idx: ‘Py_ssize_t’
- car_p2o_rhs_idx
car_p2o_rhs_idx: ‘Py_ssize_t’
- car_p3i_idx
car_p3i_idx: ‘Py_ssize_t’
- car_p3i_rhs_idx
car_p3i_rhs_idx: ‘Py_ssize_t’
- car_p3o_idx
car_p3o_idx: ‘Py_ssize_t’
- car_p3o_rhs_idx
car_p3o_rhs_idx: ‘Py_ssize_t’
- car_p4i_idx
car_p4i_idx: ‘Py_ssize_t’
- car_p4i_rhs_idx
car_p4i_rhs_idx: ‘Py_ssize_t’
- car_p4o_idx
car_p4o_idx: ‘Py_ssize_t’
- car_p4o_rhs_idx
car_p4o_rhs_idx: ‘Py_ssize_t’
- car_p_num_hom
car_p_num_hom: ‘Py_ssize_t’
- compile_abcd_cy_exprs(self)
- cos_alpha
cos_alpha: ‘double’
- cos_alpha_2
cos_alpha_2: ‘double’
- field1_to_F
field1_to_F: ‘double complex’
- field2_to_F
field2_to_F: ‘double complex’
- imaginary_transmission
imaginary_transmission: ‘bool’
- nr1
nr1: ‘double’
- nr2
nr2: ‘double’
- pitch_signal_enabled
pitch_signal_enabled: ‘bool’
- update_parameter_values(self)
- yaw_signal_enabled
yaw_signal_enabled: ‘bool’
- z_signal_enabled
z_signal_enabled: ‘bool’
- z_to_field1
z_to_field1: ‘double complex’
- z_to_field2
z_to_field2: ‘double complex’
finesse.components.modal.cavity module
- class finesse.components.modal.cavity.CavityWorkspace(owner, BaseSimulation sim)
Bases:
ElementWorkspace
finesse.components.modal.isolator module
- class finesse.components.modal.isolator.IsolatorConnections
Bases:
object- P1i_P2o
- P1i_P2o_idx
P1i_P2o_idx: ‘int’
- P2i_P1o
- P2i_P1o_idx
P2i_P1o_idx: ‘int’
- class finesse.components.modal.isolator.IsolatorValues
Bases:
BaseCValues- S
S: ‘double’
finesse.components.modal.laser module
- class finesse.components.modal.laser.LaserConnections
Bases:
object- SIGAMP_P1o
- SIGAMP_P1o_idx
SIGAMP_P1o_idx: ‘int’
- SIGFRQ_P1o
- SIGFRQ_P1o_idx
SIGFRQ_P1o_idx: ‘int’
- SIGPHS_P1o
- SIGPHS_P1o_idx
SIGPHS_P1o_idx: ‘int’
- SIGPWR_P1o
- SIGPWR_P1o_idx
SIGPWR_P1o_idx: ‘int’
- dx_P1o
- dx_P1o_idx
dx_P1o_idx: ‘int’
- dy_P1o
- dy_P1o_idx
dy_P1o_idx: ‘int’
- dz_P1o
- dz_P1o_idx
dz_P1o_idx: ‘int’
- xbeta_P1o
- xbeta_P1o_idx
xbeta_P1o_idx: ‘int’
- ybeta_P1o
- ybeta_P1o_idx
ybeta_P1o_idx: ‘int’
- class finesse.components.modal.laser.LaserValues
Bases:
BaseCValues- P
P: ‘double’
- f
f: ‘double’
- phase
phase: ‘double’
- signals_only
signals_only: ‘bool’
- class finesse.components.modal.laser.LaserWorkspace(owner, BaseSimulation sim)
Bases:
ConnectorWorkspace- K_pitch_sig
K_pitch_sig: finesse.knm.matrix.KnmMatrix
- K_yaw_sig
K_yaw_sig: finesse.knm.matrix.KnmMatrix
- P1o_id
P1o_id: ‘Py_ssize_t’
- PIj_2
PIj_2: ‘double complex’
- add_gouy_phase
add_gouy_phase: ‘bool’
- cvalues
cvalues: finesse.components.modal.laser.LaserValues
- fcar_sig_sb_idx
fcar_sig_sb_idx: ‘Py_ssize_t [2]’
- fsrc_car_idx
fsrc_car_idx: ‘Py_ssize_t’
- hom_vector
hom_vector: ‘double complex[::1]’
- lc
lc: finesse.components.modal.laser.LaserConnections
- node_car_id
node_car_id: ‘Py_ssize_t’
- node_sig_id
node_sig_id: ‘Py_ssize_t’
- phase_vector
phase_vector: ‘double complex[::1]’
- power_coeffs
power_coeffs: ‘double complex[::1]’
finesse.components.modal.lens module
- class finesse.components.modal.lens.AstigmaticLensValues
Bases:
BaseCValues- fx
fx: ‘double’
- fy
fy: ‘double’
- class finesse.components.modal.lens.AstigmaticLensWorkspace(owner, BaseSimulation sim)
Bases:
BaseLensWorkspace
- class finesse.components.modal.lens.BaseLensWorkspace(owner, BaseSimulation sim, BaseCValues values)
Bases:
KnmConnectorWorkspace- K12
K12: finesse.knm.matrix.KnmMatrix
- K12_loss
K12_loss: ‘double[::1]’
- K21
K21: finesse.knm.matrix.KnmMatrix
- K21_loss
K21_loss: ‘double[::1]’
- abcd_x
abcd_x: ‘double[:, ::1]’
- abcd_y
abcd_y: ‘double[:, ::1]’
- compile_abcd_cy_exprs(self)
- nr1
nr1: ‘double’
- nr2
nr2: ‘double’
- update_parameter_values(self)
- class finesse.components.modal.lens.LensConnections
Bases:
object- P1i_P2o
- P1i_P2o_idx
P1i_P2o_idx: ‘int’
- P2i_P1o
- P2i_P1o_idx
P2i_P1o_idx: ‘int’
- class finesse.components.modal.lens.LensValues
Bases:
BaseCValues- f
f: ‘double’
- class finesse.components.modal.lens.LensWorkspace(owner, BaseSimulation sim)
Bases:
BaseLensWorkspace
finesse.components.modal.mirror module
- class finesse.components.modal.mirror.MirrorOpticalConnections
Bases:
objectContains C accessible references to submatrices for optical connections for this element.
- P1i_P1o
- P1i_P1o_idx
P1i_P1o_idx: ‘int’
- P1i_P2o
- P1i_P2o_idx
P1i_P2o_idx: ‘int’
- P2i_P1o
- P2i_P1o_idx
P2i_P1o_idx: ‘int’
- P2i_P2o
- P2i_P2o_idx
P2i_P2o_idx: ‘int’
- class finesse.components.modal.mirror.MirrorSignalConnections
Bases:
MirrorOpticalConnectionsContains C accessible references to submatrices for optical, electrical, and mechanical connections for this element.
- P1i_Fpitch
- P1i_Fpitch_idx
P1i_Fpitch_idx: ‘int’
- P1i_Fyaw
- P1i_Fyaw_idx
P1i_Fyaw_idx: ‘int’
- P1i_Fz
- P1i_Fz_idx
P1i_Fz_idx: ‘int’
- P1o_Fpitch
- P1o_Fpitch_idx
P1o_Fpitch_idx: ‘int’
- P1o_Fyaw
- P1o_Fyaw_idx
P1o_Fyaw_idx: ‘int’
- P1o_Fz
- P1o_Fz_idx
P1o_Fz_idx: ‘int’
- P2i_Fpitch
- P2i_Fpitch_idx
P2i_Fpitch_idx: ‘int’
- P2i_Fyaw
- P2i_Fyaw_idx
P2i_Fyaw_idx: ‘int’
- P2i_Fz
- P2i_Fz_idx
P2i_Fz_idx: ‘int’
- P2o_Fpitch
- P2o_Fpitch_idx
P2o_Fpitch_idx: ‘int’
- P2o_Fyaw
- P2o_Fyaw_idx
P2o_Fyaw_idx: ‘int’
- P2o_Fz
- P2o_Fz_idx
P2o_Fz_idx: ‘int’
- Z_P1o
- Z_P1o_idx
Z_P1o_idx: ‘int’
- Z_P2o
- Z_P2o_idx
Z_P2o_idx: ‘int’
- pitch_P1o
- pitch_P1o_idx
pitch_P1o_idx: ‘int’
- pitch_P2o
- pitch_P2o_idx
pitch_P2o_idx: ‘int’
- yaw_P1o
- yaw_P1o_idx
yaw_P1o_idx: ‘int’
- yaw_P2o
- yaw_P2o_idx
yaw_P2o_idx: ‘int’
- class finesse.components.modal.mirror.MirrorValues
Bases:
BaseCValues- L
L: ‘double’
- R
R: ‘double’
- Rcx
Rcx: ‘double’
- Rcy
Rcy: ‘double’
- T
T: ‘double’
- misaligned
misaligned: ‘double’
- phi
phi: ‘double’
- xbeta
xbeta: ‘double’
- ybeta
ybeta: ‘double’
- class finesse.components.modal.mirror.MirrorWorkspace(owner, BaseSimulation sim)
Bases:
KnmConnectorWorkspace- K11
K11: finesse.knm.matrix.KnmMatrix
- K11_loss
K11_loss: ‘double[::1]’
- K12
K12: finesse.knm.matrix.KnmMatrix
- K12_loss
K12_loss: ‘double[::1]’
- K21
K21: finesse.knm.matrix.KnmMatrix
- K21_loss
K21_loss: ‘double[::1]’
- K22
K22: finesse.knm.matrix.KnmMatrix
- K22_loss
K22_loss: ‘double[::1]’
- K_pitch_sig
K_pitch_sig: finesse.knm.matrix.KnmMatrix
- K_yaw_sig
K_yaw_sig: finesse.knm.matrix.KnmMatrix
- abcd_p1p1_x
abcd_p1p1_x: ‘double[:, ::1]’
- abcd_p1p1_y
abcd_p1p1_y: ‘double[:, ::1]’
- abcd_p1p2_x
abcd_p1p2_x: ‘double[:, ::1]’
- abcd_p1p2_y
abcd_p1p2_y: ‘double[:, ::1]’
- abcd_p2p1_x
abcd_p2p1_x: ‘double[:, ::1]’
- abcd_p2p1_y
abcd_p2p1_y: ‘double[:, ::1]’
- abcd_p2p2_x
abcd_p2p2_x: ‘double[:, ::1]’
- abcd_p2p2_y
abcd_p2p2_y: ‘double[:, ::1]’
- car_p1i_idx
car_p1i_idx: ‘Py_ssize_t’
- car_p1i_rhs_idx
car_p1i_rhs_idx: ‘Py_ssize_t’
- car_p1o_idx
car_p1o_idx: ‘Py_ssize_t’
- car_p1o_rhs_idx
car_p1o_rhs_idx: ‘Py_ssize_t’
- car_p2i_idx
car_p2i_idx: ‘Py_ssize_t’
- car_p2i_rhs_idx
car_p2i_rhs_idx: ‘Py_ssize_t’
- car_p2o_idx
car_p2o_idx: ‘Py_ssize_t’
- car_p2o_rhs_idx
car_p2o_rhs_idx: ‘Py_ssize_t’
- car_p_num_hom
car_p_num_hom: ‘Py_ssize_t’
- compile_abcd_cy_exprs(self)
- field_to_F
field_to_F: ‘double complex’
- imaginary_transmission
imaginary_transmission: ‘bool’
- nr1
nr1: ‘double’
- nr2
nr2: ‘double’
- update_parameter_values(self)
- z_to_field
z_to_field: ‘double complex’
finesse.components.modal.modulator module
- class finesse.components.modal.modulator.ModulatorOpticalConnections
Bases:
objectContains C accessible references to submatrices for optical connections for this element.
- P1i_P2o
- P1i_P2o_idx
P1i_P2o_idx: ‘int’
- P2i_P1o
- P2i_P1o_idx
P2i_P1o_idx: ‘int’
- class finesse.components.modal.modulator.ModulatorSignalConnections
Bases:
ModulatorOpticalConnectionsContains C accessible references to submatrices for optical connections for this element.
- amp_P1o
- amp_P1o_idx
amp_P1o_idx: ‘int’
- amp_P2o
- amp_P2o_idx
amp_P2o_idx: ‘int’
- phs_P1o
- phs_P1o_idx
phs_P1o_idx: ‘int’
- phs_P2o
- phs_P2o_idx
phs_P2o_idx: ‘int’
- class finesse.components.modal.modulator.ModulatorValues
Bases:
BaseCValues- f
f: ‘double’
- midx
midx: ‘double’
- mod_type
mod_type: ‘int’
- order
order: ‘int’
- phase
phase: ‘double’
- positive_only
positive_only: ‘bool’
- class finesse.components.modal.modulator.ModulatorWorkspace(owner, BaseSimulation sim)
Bases:
KnmConnectorWorkspace- K12
K12: finesse.knm.matrix.KnmMatrix
- K12_loss
K12_loss: ‘double[::1]’
- K21
K21: finesse.knm.matrix.KnmMatrix
- K21_loss
K21_loss: ‘double[::1]’
- amp_signal_enabled
- carrier_frequency_couplings
- fill_quantum_matrix(self)
- nr1
nr1: ‘double’
- nr2
nr2: ‘double’
- phs_signal_enabled
- signal_frequency_couplings
finesse.components.modal.optical_bandpass module
- class finesse.components.modal.optical_bandpass.OpticalBandpassConnections
Bases:
objectContains C accessible references to submatrices for optical connections for this element.
- P1i_P2o
- P1i_P2o_idx
P1i_P2o_idx: ‘int’
- P2i_P1o
- P2i_P1o_idx
P2i_P1o_idx: ‘int’
- class finesse.components.modal.optical_bandpass.OpticalBandpassValues
Bases:
BaseCValues- bandwidth
bandwidth: ‘double’
- fc
fc: ‘double’
- class finesse.components.modal.optical_bandpass.OpticalBandpassWorkspace(owner, BaseSimulation sim, HOM_filter_index)
Bases:
KnmConnectorWorkspace- K12
K12: finesse.knm.matrix.KnmMatrix
- K12_loss
K12_loss: ‘double[::1]’
- K21
K21: finesse.knm.matrix.KnmMatrix
- K21_loss
K21_loss: ‘double[::1]’
- M
M: ‘double complex[:, ::1]’
- nr1
nr1: ‘double’
- nr2
nr2: ‘double’
finesse.components.modal.signal module
- class finesse.components.modal.signal.SignalGeneratorValues
Bases:
BaseCValues- amplitude
amplitude: ‘double’
- phase
phase: ‘double’
- class finesse.components.modal.signal.SignalGeneratorWorkspace(owner, sim)
Bases:
ConnectorWorkspace- rhs_idx
rhs_idx: ‘Py_ssize_t’
- scaling
scaling: ‘double’
- v
v: finesse.components.modal.signal.SignalGeneratorValues
finesse.components.modal.space module
- class finesse.components.modal.space.SpaceOpticalConnections
Bases:
object- P1i_P2o
- P1i_P2o_idx
P1i_P2o_idx: ‘int’
- P2i_P1o
- P2i_P1o_idx
P2i_P1o_idx: ‘int’
- class finesse.components.modal.space.SpaceSignalConnections
Bases:
SpaceOpticalConnections- H_P1o
- H_P1o_idx
H_P1o_idx: ‘int’
- H_P2o
- H_P2o_idx
H_P2o_idx: ‘int’
- SIGAMP_P1o
- SIGAMP_P1o_idx
SIGAMP_P1o_idx: ‘int’
- SIGAMP_P2o
- SIGAMP_P2o_idx
SIGAMP_P2o_idx: ‘int’
- SIGPHS_P1o
- SIGPHS_P1o_idx
SIGPHS_P1o_idx: ‘int’
- SIGPHS_P2o
- SIGPHS_P2o_idx
SIGPHS_P2o_idx: ‘int’
- class finesse.components.modal.space.SpaceValues
Bases:
BaseCValues- L
L: ‘double’
- computed_gouy_x
computed_gouy_x: ‘double’
- computed_gouy_y
computed_gouy_y: ‘double’
- nr
nr: ‘double’
- user_gouy_x
user_gouy_x: ‘double’
- user_gouy_y
user_gouy_y: ‘double’
- class finesse.components.modal.space.SpaceWorkspace(owner, BaseSimulation sim)
Bases:
ConnectorWorkspace- P1i_id
P1i_id: ‘Py_ssize_t’
- P1o_id
P1o_id: ‘Py_ssize_t’
- P2i_id
P2i_id: ‘Py_ssize_t’
- P2o_id
P2o_id: ‘Py_ssize_t’
- abcd
abcd: ‘double[:, ::1]’
- car_p1o_idx
car_p1o_idx: ‘Py_ssize_t’
- car_p2o_idx
car_p2o_idx: ‘Py_ssize_t’
- compile_abcd_cy_exprs(self)
- update_parameter_values(self)
- use_user_gouy_x
use_user_gouy_x: ‘bool’
- use_user_gouy_y
use_user_gouy_y: ‘bool’
finesse.components.modal.squeezer module
- class finesse.components.modal.squeezer.SqueezerConnections
Bases:
object- LOWER_P1o
- LOWER_P1o_idx
LOWER_P1o_idx: ‘int’
- UPPER_P1o
- UPPER_P1o_idx
UPPER_P1o_idx: ‘int’
- class finesse.components.modal.squeezer.SqueezerValues
Bases:
BaseCValues- angle
angle: ‘double’
- db
db: ‘double’
- f
f: ‘double’
- class finesse.components.modal.squeezer.SqueezerWorkspace(owner, BaseSimulation sim)
Bases:
ConnectorWorkspace- conns
conns: finesse.components.modal.squeezer.SqueezerConnections
- fcar_sig_sb_idx
fcar_sig_sb_idx: ‘Py_ssize_t [2]’
- fsrc_car_idx
fsrc_car_idx: ‘Py_ssize_t’
- hom_vector
hom_vector: ‘double complex[::1]’
- node_id
node_id: ‘Py_ssize_t’
- ns
ns: finesse.components.modal.squeezer.SqueezerNoiseSources
- qn_coeffs
qn_coeffs: ‘double complex[:, ::1]’
- qn_coeffs_diag
qn_coeffs_diag: ‘double complex[::1]’
- v
v: finesse.components.modal.squeezer.SqueezerValues
finesse.components.modal.variable module
finesse.components.modal.workspace module
- class finesse.components.modal.workspace.KnmConnectorWorkspace(owner, sim, *args, **kwargs)
Bases:
ConnectorWorkspace- flag_changing_beam_parameters(self, OrderedSet changing_mismatch_edges)
Iterate through all optical connections and checks/flag which optical connections need to having their scattering matrices recalculated. This occurs if the beam tracer traces some new q-parameters, or if an ABCD has a changing parameter, or if some optical path distortion map is changing.
Parameters
- changing_couplingstuple
Tuple of (node_in, node_out) which must be recomputed.
Notes
changing_couplings typically comes from the trace forest`s method trace_forest.find_potential_mismatch_couplings. Which determines potential changes in mode scattering parameters, from changing ABCD properties.
- o2o
- set_knm_info(self, connection, double[:, ::1] abcd_x=abcd_unity, double[:, ::1] abcd_y=abcd_unity, double nr_from=1, double nr_to=1, bool is_transmission=False, Parameter beta_x=None, double beta_x_factor=0, Parameter beta_y=None, double beta_y_factor=0, Parameter alpha=None, Map apply_map=None, double map_phase_factor=1, bool map_fliplr=False)
Python facing method to set how Knm calculations should be handled for a particular connection. When the workspace is being created this should be called if modal simualtions are being used. This then sets which ABCD matricies to use, various parameters required, and whether the connection is a transmission or reflection.
This method should only be called once with the required settings. Calling it again will rewrite settings for this connection.
Parameters
- abcd_x, abcd_ydouble[:,::1]
ABCD matrices that transform some input beam parameter to the output of this connection
- nr_from, nr_todouble
refractive index at the input and output of this connection
- is_transmissionbool
True if this connection represents a transmission through an element
- beta_x, beta_yParameter
Parameter objects that reference a yaw (beta_x) and pitch (beta_y) misalignment
- beta_x_factor, beta_y_factordouble
Scaling factor for misalignment parameters
- alphaParameter
Macroscopic angle of incidence parameter for the element
- apply_mapMap
When set this will apply the map object to this connection
- map_fliplrbool
When True the map is flipped left-to-right when computing the scattering coefficients
- update_map_data(self)
Module contents
Modal computation module
This module contains highly optimised code for each component for conducting modal simulations. Component workspaces should register these fill and calculation methods as required.