abstract.mach_zehnder_modulator
mach_zehnder_modulator( *, drive: Literal['push-pull', 'dual'] = 'push-pull', v_pi: Annotated[float, units='V'] = 0, z0: Annotated[complex, units='Ω'] = 50.0, extinction_ratio: Annotated[float, minimum=0, units='dB'] | None = None, insertion_loss: Annotated[float, minimum=0, units='dB'] = 0, f_3dB: Annotated[float, minimum=0, units='Hz'] = 0, phase_bias: Annotated[float, units='°'] = 0, k2: Annotated[float, units='rad/V²'] = 0, k3: Annotated[float, units='rad/V³'] = 0, dloss_dv: Annotated[float, units='dB/V'] = 0, dloss_dv2: Annotated[float, units='dB/V²'] = 0,) -> photonforge.ComponentAbstract Mach-Zehnder modulator.
Based on MZMTimeStepper.
Args
- drive: Modulator drive selection: dual input from independent ports or from a single electrical port in push-pull configuration.
- v_pi: Half-wave voltage of the modulator, .
- z0: Characteristic impedance of the electrical port used to convert the input field amplitude to voltage.
- extinction_ratio: Optical extinction ratio for the Mach-Zehnder.
- insertion_loss: Optical insertion loss.
- f_3dB: -3 dB frequency cutoff for bandwidth limiting. Only active for positive values.
- phase_bias: Constant phase bias applied to the first arm.
- k2: Quadratic nonlinear phase coefficient.
- k3: Cubic nonlinear phase coefficient.
- dloss_dv: Linear voltage-dependent optical loss coefficient.
- dloss_dv2: Quadratic voltage-dependent optical loss coefficient.