polarization_beam_splitter

photonforge.abstract.polarization_beam_splitter(*, t_0=1.0 + 0.0j, x_0=0.0 + 0.0j, t_1=1.0 + 0.0j, x_1=0.0 + 0.0j, r_00=0.0 + 0.0j, r_10=0.0 + 0.0j, r_20=0.0 + 0.0j, r_01=0.0 + 0.0j, r_11=0.0 + 0.0j, r_21=0.0 + 0.0j, mode_routing=(1, 2))[source]

Abstract polarization beam splitter (PBS).

Based on photonforge.PolarizationBeamSplitterModel. Three-port, two-mode device with no mode conversion.

Parameters:
  • t_0 (complex) – Mode-0 transmission amplitude to the preferred output.

  • x_0 (complex) – Mode-0 crosstalk amplitude to the other output.

  • t_1 (complex) – Mode-1 transmission amplitude to the preferred output.

  • x_1 (complex) – Mode-1 crosstalk amplitude to the other output.

  • r_00 (complex) – Reflection at P0, mode 0.

  • r_10 (complex) – Reflection at P1, mode 0.

  • r_20 (complex) – Reflection at P2, mode 0.

  • r_01 (complex) – Reflection at P0, mode 1.

  • r_11 (complex) – Reflection at P1, mode 1.

  • r_21 (complex) – Reflection at P2, mode 1.

  • mode_routing (Annotated[Sequence[int], maxItems=2, minItems=2]) – Maps each mode index to its preferred output port index.

Return type:

Component