half_ring#

half_ring(wl: Union[float, jax.Array, numpy.ndarray, numpy.bool_, numpy.number, bool, int, complex] = 1.55, width: float = 500.0, thickness: float = 220.0, radius: float = 10.0, gap: float = 100.0, sw_angle: float = 90.0) Dict[Tuple[str, str], jaxtyping.Complex[Array, '...']][source]#

Half of a ring resonator.

Uses a radius and a gap to describe the shape.

Half ring port numbering.
Parameters
  • wl (float or ArrayLike) – The wavelengths to evaluate at in microns.

  • width (float) – Width of waveguides in nanometers (valid from 400 to 600).

  • thickness (float) – Thickness of waveguides in nanometers (valid from 180 to 240).

  • radius (float) – Distance from center of ring to middle of waveguide, in microns.

  • gap (float) – Minimum distance from ring waveguide edge to straight waveguide edge, in nanometers (must be greater than 100).

  • sw_angle (float, optional) – Sidewall angle of waveguide from horizontal in degrees (valid from 80 to 90, defaults to 90).

Examples

>>> s = half_ring(wl, 500, 220, 5000, 100)