grating_coupler
grating_coupler#
- grating_coupler(wl: Union[float, jax.Array] = 1.55, pol: Literal['te', 'tm'] = 'te', thickness: float = 220.0, dwidth: float = 0) Dict[Tuple[str, str], jaxtyping.Complex[Array, '...']] [source]#
SiEPIC EBeam PDK grating coupler optimized for TE polarizations at 1550nm.
The grating coupler efficiently couples light from a fiber array positioned above the chip into the circuit. For the TE mode, the angle is -25 degrees [needs citation].
- Parameters
wl (float or Array) – The wavelengths to evaluate at in microns.
pol ({"te", "tm"}) – Polarization of the input/output modes.
thickness ({210.0, 220.0, 230.0}) – Thickness of the grating coupler silicon in nm. Useful for simulating manufacturing variability.
dwidth ({-20.0, 0.0, 20.0}) – Change in width from nominal of the gratings. Representative of manufacturing variability. Must be one of -20, 0, or 20.
- Raises
ValueError – If pol is not ‘te’ or ‘tm’.
ValueError – If thickness is not one of 210, 220, or 230.
ValueError – If dwidth is not one of -20, 0, or 20.
Notes
See also the PDK documentation: https://github.com/SiEPIC/SiEPIC_EBeam_PDK/blob/master/Documentation/SiEPIC_EBeam_PDK%20-%20Components%20with%20Models.docx