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: