abstract.mux_demux
mux_demux( *, frequencies: Annotated[ collections.abc.Sequence[Annotated[float, minimum=0, units='Hz']], minItems=1, ] = array( [ 1.937e14, 1.938e14, 1.939e14, 1.940e14, 1.941e14, 1.942e14, 1.943e14, 1.944e14, 1.945e14, 1.946e14, 1.947e14, 1.948e14, 1.949e14, 1.950e14, 1.951e14, 1.952e14, 1.953e14, 1.954e14, 1.955e14, 1.956e14, 1.957e14, 1.958e14, 1.959e14, 1.960e14, 1.961e14, 1.962e14, 1.963e14, 1.964e14, 1.965e14, 1.966e14, 1.967e14, 1.968e14, 1.969e14, 1.970e14, 1.971e14, 1.972e14, ] ), bandwidth: Annotated[float, minimum=0, units='Hz'] = 100000000000.0, order: Annotated[int, exclusiveMinimum=0] = 3, insertion_loss: Annotated[float, minimum=0, units='dB'] = 0.5, group_delay: Annotated[float, minimum=0, units='s'] = 0, reflection: complex = 0, temperature_sensitivity: Annotated[float, units='Hz/K'] = 0.0, temperature: Annotated[float, minimum=0, units='K'] = 293.0, reference_temperature: Annotated[float, minimum=0, units='K'] = 293.0,) -> photonforge.ComponentAbstract wavelength multiplexer/demultiplexer (WDM).
Based on MuxDemuxModel. Single-mode device with one common port
and one port per channel.
Args
- frequencies: Central frequency for each channel.
- bandwidth: 3 dB bandwidth per channel.
- order: Butterworth filter order for the passband shape.
- insertion_loss: Insertion loss per channel.
- group_delay: Constant group delay per channel.
- reflection: Reflection coefficient for incident fields.
- temperature_sensitivity: Temperature sensitivity for channel centers.
- temperature: Operating temperature.
- reference_temperature: Reference temperature.