Source code for piel.models.frequency.photonic.mmi2x2
"""
Translated from https://github.com/flaport/sax or https://github.com/flaport/photontorch/tree/master
"""
import sax
__all__ = ["mmi2x2_50_50"]
[docs]def mmi2x2_50_50():
S = {
("o1", "o3"): (1 - 0.5) ** 0.5,
("o1", "o4"): 1j * 0.5 ** 0.5,
("o2", "o3"): 1j * 0.5 ** 0.5,
("o2", "o4"): (1 - 0.5) ** 0.5,
}
return sax.reciprocal(S)
def mmi2x2(splitting_ratio=0.5):
S = {
("o1", "o3"): (1-splitting_ratio) ** 0.5,
("o1", "o4"): 1j * splitting_ratio ** 0.5,
("o2", "o3"): 1j * splitting_ratio ** 0.5,
("o2", "o4"): (1-splitting_ratio) ** 0.5,
}
return sax.reciprocal(S)