# Coupler1x2¶

class picazzo3.logical.coupler.cell.Coupler1x2(*args, **kwargs)

A logical 1x2 reciprocal waveguide coupler.

Transmissions and reflections and backcoupling can be set using the properties to arbitrary values without any enforcement of passivity.

Properties dealing with tranmission: straight_coupling1, straight_coupling2 Properties dealing with reflection: reflection_in1, reflection_out1, reflection_out2 Properties dealing with back coupling: back_coupling

The default behaviour of the coupler model assumes symmetry that allows the permutations (out_1 with out_2) in the first place. If your component uses this symmetry, properties only have to be specified for in and out_1, the ones relating to out_2 will be assuming this symmetry.

In the second place the coupler model assumes symmetry that allows the permutation of output ports with input ports.

Parameters: cell_instances: _PCellInstanceDict, optional name: optional The unique name of the pcell n_inputs: int and number > 0, locked Number of input channels. n_outputs: int and number > 0, locked Number of output channels.