Skip to content

abstract.cw_laser

cw_laser(
*,
power: Annotated[float, minimum=0, units='W'] = 1,
rel_intensity_noise: Annotated[float, minimum=0, units='1/Hz'] = 0,
linewidth: Annotated[float, minimum=0, units='Hz'] = 0,
frequency: Annotated[float, minimum=0, units='Hz'] | None = None,
chirp_bandwidth: Annotated[float, minimum=0, units='Hz'] = 0,
chirp_period: Annotated[float, minimum=0, units='s'] = 0,
chirp_waveform: Literal['sawtooth', 'triangle'] = 'sawtooth',
phase: Annotated[float, units='°'] = 0,
reflection: complex = 0,
seed: Annotated[int, minimum=0] | None = None,
) -> photonforge.Component

Abstract CW Laser source.

Based on CWLaserTimeStepper.

Args

  • power: Mean optical output power.
  • rel_intensity_noise: One-sided relative intensity noise (RIN) power spectral density.
  • linewidth: Full-width at half-maximum (FWHM) of the laser’s Lorentzian shape.
  • frequency: Absolute laser frequency. If None, equals the carrier frequency. If detuned from the carrier by Δf, the output envelope is e−j2πΔf te^{-j2\pi\Delta f\,t}.
  • chirp_bandwidth: Total frequency excursion of a linear sweep, centered on frequency. Zero disables the chirp.
  • chirp_period: Duration of one complete sweep.
  • chirp_waveform: Sweep shape. A sawtooth ramps the optical frequency up over the period and resets; a triangle ramps it up over the first half of the period and back down over the second.
  • phase: Starting phase of the output envelope.
  • reflection: Reflection coefficient for incident fields.
  • seed: Random number generator seed to ensure reproducibility.