bend

photonforge.parametric.bend(*, port_spec=None, radius=None, angle=None, euler_fraction=None, active_model=None, technology=None, name=None, tidy3d_model_kwargs=None, waveguide_model_kwargs=None)

Waveguide bend section.

Parameters:
  • port_spec (str | PortSpec) – Port specification describing waveguide cross-section.

  • radius (float) – Central arc radius.

  • angle (float) – Arc coverage angle. If None, defaults to 90.

  • euler_fraction (float) – Fraction of the bend that is created using an Euler spiral (see photonforge.Path.arc()). If None, defaults to 0.

  • active_model (Literal['Tidy3D', 'Waveguide']) – Name of the model to be used by default; must be either "Tidy3D" or "Waveguide" (default).

  • technology (Technology) – Component technology. If None, the default technology is used.

  • name (str) – Component name.

  • tidy3d_model_kwargs (dict[str, Any]) – Dictionary of keyword arguments passed to the component’s photonforge.Tidy3DModel.

  • waveguide_model_kwargs (dict[str, Any]) – Dictionary of keyword arguments passed to the component’s photonforge.WaveguideModel.

Returns:

Component with the circular bend section, ports and model.

Return type:

Component

component = bend(port_spec="Strip", radius=5, euler_fraction=0.5)
bend