TriangularPhCLayout

class picazzo3.phc.generic.cell.TriangularPhCLayout(*args, **kwargs)

Generic Photonic Crystal Layouting Cell on a Triangular lattice. The Layout of the cell is made up of a map, which is a multiline string representing the unit cells on a regular triangular lattice. The letters in the ‘map’ correspond to unit cells in the dictionary ‘cells’. The pitches can be defined as cartesian pitches using the property ‘pitches’, or using the property ‘lattice_pitches’ which specifies the lattice vector along the horizontal and the oblique axis, or using the property ‘pitch’, which just sets a uniform pitch along all lattice vectors.

Parameters:

name:

The unique name of the pcell

See also

PhCLayout, RectangularPhCLayout

Views

Layout
Parameters:

lattice_pitches: Coord2

Lattice constants along the horizontal and the oblique direction. Choose identical values for a regular grid. If ‘pitches’ is manually set, this property will be ignored. If this property is set, the property ‘pitch’ will be ignored.

pitch: float and Real, number and number >= 0

Lattice constant for a uniform triangular lattice. This property will be ignored if ‘lattice_pitches’ or ‘pitches’ are set manually

pitches:

Cartesian (X, Y) pitches of the lattice. If this is specified, the properties ‘lattice_pitches’ and ‘pitch’ will be ignored

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

The name of the view

cells: dict

dictionary of Unit Cells for a Photonic Crystal. The value should be of the form {‘x’: cell1, ‘y’: cell2}. The keys of the dictionary should be characters and each character can be used to identify the unit cell in the map

map: str

Map of the photonic crystal. This property accepts a multi-line string. Every character in the string represents a unit cell of the photonic crystal, which can be found in the property cells

ports_coordinates:

list of tuple with (coordinate (in pitches), angle, waveguide_template, [name])

process_hfw: ProcessLayer

process for underetching

purpose_hfw: PatternPurpose

drawing purpose for underetching

zero_line_y: float

line in the map which corresponds to the coordinate y=0. This can be a fractional number, and the unit is relative to pitches.y .