DC2

class ipkiss3.cml.DC2

Basic behavioral directional coupler model based on a power coupling and insertion loss.

Insertion loss is deducted first, then cross and bar coupling are calculated.

Parameters:
cross_coupling: List[float]

Power fraction coupled to the cross port, as a polynomial of wavelength, centered around center_wavelength. Highest order coefficient first (constant term last).

insertion_loss: float [dB]

Insertion loss in decibels (positive = loss)

center_wavelength: float [um]

Center wavelength of the cross coupling (constant term)

Terms

Term Name

Type

#modes

in1

Optical

1

in2

Optical

1

out1

Optical

1

out2

Optical

1

Examples

import numpy as np
import ipkiss3.all as i3
import matplotlib.pyplot as plt

model = i3.cml.DC2(cross_coupling=[-0.5, 0.4], insertion_loss=0.1, center_wavelength=1.3)

wavelengths = np.linspace(1.25, 1.35, 101)
S = i3.circuit_sim.test_circuitmodel(model, wavelengths)

bar = 10 * np.log10(np.abs(S["out1", "in1"]) ** 2)
cross = 10 * np.log10(np.abs(S["out2", "in1"]) ** 2)

plt.figure()
plt.plot(wavelengths, bar, label="bar")
plt.plot(wavelengths, cross, label="cross")
plt.xlabel("wavelength [um]")
plt.ylabel("transmission [dB]")
plt.legend()
plt.title("Transmission as function of wavelength")
plt.show()
../../../_images/ipkiss3-cml-DC2-1.png