WaveguideGrooveGratingPeriod
- class picazzo3.wg.grating.cell.WaveguideGrooveGratingPeriod
Period for a waveguide with grooves etched in the core.
- Parameters:
- wg_template: PCell and _WaveguideTemplate
Waveguide template of start and end of the period (and ports)
- name: String that contains only ISO/IEC 8859-1 (extended ASCII py3) or pure ASCII (py2) characters
The unique name of the pcell
Views
- class Layout
- Parameters:
- groove_purpose: PatternPurpose
Purpose on which the groove is drawn.
- groove_process: ProcessLayer
Process on which the groove is drawn.
- relative_groove_width: ( bool, bool_ or int )
If True, the groove width is expressed as a fraction of the length.
- groove_length: float and number > 0
The length of the groove, perpendicular to the waveguide direction. By default, it extends halfway the cladding.
- groove_width: float and number > 0
The width of the block along the waveguide direction. If ‘relative_groove_width’ is True (default), this is expressed as a fraction of the period length (fill factor).
- length: float and Real, number and number >= 0
Length of the grating period.
- view_name: String that contains only alphanumeric characters from the ASCII set or contains _$. ASCII set is extended on PY3.
The name of the view
Examples
"""We make a grating with a shallow etched groove""" import si_fab.all as pdk # noqa: F401 from picazzo3.wg.grating import WaveguideUniformGrating, WaveguideGrooveGratingPeriod from picazzo3.traces.wire_wg import WireWaveguideTemplate import ipkiss3.all as i3 t1 = WireWaveguideTemplate(name="wire_t") t1.Layout(core_width=0.6, cladding_width=3.0) period = WaveguideGrooveGratingPeriod(name="period_g", wg_template=t1) period.Layout(length=0.31, groove_process=i3.TECH.PROCESS.FC) grating = WaveguideUniformGrating(name="my_groove_grating", period_cell=period, n_o_periods=12) layout = grating.Layout() layout.visualize(annotate=True)