electro_absorption_modulator

photonforge.abstract.electro_absorption_modulator(*, absorption=_eam_absorption, length=100.0, confinement_factor=1.0, bias=0.0, residual_loss=0.0, chirp=0.0, f_3dB=None, quantum_efficiency=1.0, n_group=0.0, n_eff=None, voltage_samples=401, z0=None)[source]

Abstract electro-absorption modulator (EAM).

Carries photonforge.AnalyticWaveguideModel with the absorption table for the frequency-domain response at bias and photonforge.ElectroAbsorptionModTimeStepper for time-domain runs. The component has 2 optical ports and 1 electrical port.

Parameters:
  • absorption (Interpolator) – Material absorption in 1/μm, as a photonforge.Interpolator over voltage and wavelength. The default is a Franz-Keldysh table from photonforge.franz_keldysh_absorption() for a 1.50 μm bandgap.

  • length (Annotated[float, exclusiveMinimum=0, units='μm']) – Interaction length.

  • confinement_factor (Annotated[float, maximum=1, minimum=0]) – Fraction of the optical mode overlapping the absorbing region.

  • bias (Annotated[float, units='V']) – Operating bias added to the voltage read from the electrical port. Reverse bias is negative.

  • residual_loss (Annotated[float, minimum=0, units='dB']) – Bias-independent insertion loss.

  • chirp (float) – Modulator chirp parameter \(\alpha_c\), defined by \({\rm d}\phi/{\rm d}t = (\alpha_c/2)\,{\rm d}\ln P/{\rm d}t\)

  • f_3dB (Annotated[Annotated[float, minimum=0, units='Hz'] | None, _]) – -3 dB cutoff of the junction RC low-pass on the drive. Only active for positive values.

  • quantum_efficiency (Annotated[float, maximum=1, minimum=0]) – Fraction of absorbed photons collected as photocurrent. Set to 0 to disable the photocurrent output.

  • n_group (Annotated[float, minimum=0]) – Group index for the optical transit delay, in both domains. A value of 0 disables the delay.

  • n_eff (Annotated[float, minimum=0] | None) – Effective index for the propagation phase. If None, no propagation phase is added.

  • voltage_samples (Annotated[int, minimum=2]) – Points used to resample the absorption against bias at the carrier during setup. The original sample points are always kept.

  • z0 (Annotated[complex, units='Ω'] | None) – Reference impedance of the electrical port.

Returns:

Component with model.

Return type:

Component