amplitude_modulator

photonforge.abstract.amplitude_modulator(*, a0=0, a1=0, a2=, a3=, z0=50.0, insertion_loss=0, extinction_ratio=None, chirp=0, dloss_dv=.0, dloss_dv2=, f_3dB=0)[source]

Abstract amplitude modulator.

Based on photonforge.AmplitudeModTimeStepper. Maps an electrical drive voltage to an optical amplitude scaling factor via a cubic polynomial transfer function:

\[s_0 = a_0 + a_1 V + a_2 V^2 + a_3 V^3\]
Parameters:
  • a0 (Annotated[float, _]) – DC term of the polynomial transfer function.

  • a1 (Annotated[float, units='1/V']) – Linear coefficient of the polynomial transfer function.

  • a2 (Annotated[float, units='1/V²']) – Quadratic coefficient of the polynomial transfer function.

  • a3 (Annotated[float, units='1/V³']) – Cubic coefficient of the polynomial transfer function.

  • z0 (Annotated[complex, units='Ω']) – Characteristic impedance of the electrical port used to convert the input field amplitude to voltage.

  • insertion_loss (Annotated[float, minimum=0, units='dB']) – Optical insertion loss.

  • extinction_ratio (Annotated[float, minimum=0, units='dB'] | None) – Optical extinction ratio.

  • chirp (float) – Chirp parameter coupling amplitude to phase modulation.

  • dloss_dv (Annotated[float, units='dB/μm/V']) – Linear voltage-dependent optical loss coefficient.

  • dloss_dv2 (Annotated[float, units='dB/μm/V²']) – Quadratic voltage-dependent optical loss coefficient.

  • f_3dB (Annotated[float, minimum=0, units='Hz']) – -3 dB frequency cutoff for bandwidth limiting. Only active for positive values.

Return type:

Component