straight

photonforge.abstract.straight(*, length=10, n_eff=2.4, n_group=None, reference_frequency=C_0 / 1.55, propagation_loss=0.0, dispersion=0.0, dispersion_slope=0.0, dn_dT=0.0, dL_dT=0.0, temperature=293.0, reference_temperature=293.0)[source]

Abstract waveguide section.

Based on photonforge.AnalyticWaveguideModel.

Parameters:
  • length (Annotated[float, minimum=0, units='μm']) – Waveguide length.

  • n_eff (complex) – Effective refractive index (loss can be included here by using complex values).

  • n_group (float | None) – Group index. If None, the value of n_eff is used.

  • reference_frequency (Annotated[float, minimum=0, units='Hz']) – Reference frequency dispersion coefficients.

  • propagation_loss (Annotated[float, minimum=0, units='dB/μm']) – Propagation loss.

  • dispersion (Annotated[float, units='s/μm²']) – Chromatic dispersion coefficient.

  • dispersion_slope (Annotated[float, units='s/μm³']) – Chromatic dispersion slope.

  • dn_dT (Annotated[complex, units='1/K']) – Temperature sensitivity for n_eff.

  • dL_dT (Annotated[float, units='dB/μm/K']) – Temperature sensitivity for propagation_loss.

  • temperature (Annotated[float, minimum=0, units='K']) – Operating temperature.

  • reference_temperature (Annotated[float, minimum=0, units='K']) – Reference temperature.

Return type:

Component