W1HeteroCavity

class picazzo3.phc.hetero.cell.W1HeteroCavity(*args, **kwargs)

Photonic Crystal Waveguide HeteroCavity consisting of a W1 waveguide with adjusted pitch in the cavity. The unit cells for the waveguide and the cavity can be chosen seperately, as well as the different lattice pitches.

Parameters:

cavity: PCell

The cavity child cell (autogenerated)

cavity_defect_unit_cell: PCell

The Photonic Crystal unit cell of the cavity lattice. By default it is empty.

cavity_unit_cell: PCell

The Photonic Crystal unit cell of the cavity lattice

mirror: PCell

The mirror child cell (autogenerated)

mirror_defect_unit_cell: PCell

The Photonic Crystal unit cell of the mirror waveguide. By default it is empty.

mirror_unit_cell: PCell

The Photonic Crystal unit cell of the mirror lattice

n_o_cladding_layers: int and number > 0

name:

The unique name of the pcell

Views

Layout
Parameters:

mirror_pos2:

view_name: str and ( Alphanumeric string or Contains _$ )

The name of the view

cavity_pitch: float and number > 0

cavity_pos: Coord2

mirror_pitch: float and number > 0

mirror_pos: Coord2

n_o_cavity_periods: int and number > 0

n_o_mirror_periods: int and number > 0

process_hfw: ProcessLayer

purpose_hfw: PatternPurpose

vertical_cavity_pitch: float and number > 0

off-axis pitch of the cavity lattice: default = matched to mirror)

vertical_mirror_pitch: float and number > 0

off-axis pitch of the mirror lattice: default = same as mirror_pitch)

Examples

""" We combine three photonic crystal lattices into a heterocavity"""
from technologies import silicon_photonics
from ipkiss3 import all as i3
from picazzo3.phc.generic import DodecHole

mirror_unit_cell = DodecHole(name="Hb1")
mirror_unit_cell.Layout(radius=0.13)
cavity_unit_cell = DodecHole(name="Hb2")
cavity_unit_cell.Layout(radius=0.14)

from picazzo3.phc.hetero import W1HeteroCavity
cell = W1HeteroCavity(name="my_heterophc_cavity",
                      mirror_unit_cell=mirror_unit_cell,
                      cavity_unit_cell=cavity_unit_cell,
                      n_o_cladding_layers=6)
layout = cell.Layout(mirror_pitch=0.43,
                     cavity_pitch=0.46,
                     n_o_mirror_periods=10,
                     n_o_cavity_periods=6
                     )

layout.visualize(annotate=True)
../../../../_images/picazzo3-phc-hetero-cell-W1HeteroCavity-1.png