stencil.mmi
mmi( length, width, num_ports, port_length, port_width, tapered_width=None, port_separation=None,)Create an MxN MMI.
Args
- length (float): MMI length.
- width (float): MMI length.
- num_ports (int | Sequence[int]): Number of ports on either side of the MMI.
- port_length (float | Sequence[float]): Length of the port sections.
- port_width (float | Sequence[float]): Width of the MMI ports.
- tapered_width (float | Sequence[float] | None): Width of the port sections at the MMI boundary.
- port_separation (float | Sequence[float] | None): Distance between port centers.
Note
Arguments num_ports, port_separation, port_length,
port_width, and tapered_width can be either a sequence of 2
values (one for each MMI side) or a single value (for both sides).
Returns
list[Rectangle | Polygon]: MMI structures.
Example
>>> mmi_1x2 = pf.stencil.mmi(... 6, 2, (1, 2), port_length=1.0, port_width=0.5, tapered_width=0.7... )>>> component = pf.Component().add(*mmi_1x2)