abstract.awg
awg( *, num_channels: Annotated[int, exclusiveMinimum=0] = 8, channel_spacing: Annotated[ float, exclusiveMinimum=0, units='μm' ] = 0.0016, center_wavelength: Annotated[ float, exclusiveMinimum=0, units='μm' ] = 1.55, bandwidth: Annotated[float, exclusiveMinimum=0, units='μm'] = 0.00122, free_spectral_range: Annotated[float, minimum=0, units='μm'] = 0.0194, periodic_orders: Annotated[int, minimum=0] = 3, insertion_loss: Annotated[float, minimum=0, units='dB'] = 4.18, nonuniformity: Annotated[float, minimum=0, units='dB'] = 0.494, crosstalk: Annotated[float, units='dB'] = -12.68, order: Annotated[int, exclusiveMinimum=0] = 2,) -> photonforge.ComponentAbstract arrayed waveguide grating.
A demultiplexer with one common port and num_channels outputs, built
on MuxDemuxModel.
Args
- num_channels: Number of output channels.
- channel_spacing: Spacing between channel centres.
- center_wavelength: Centre of the channel comb.
- bandwidth: 3 dB bandwidth per channel.
- free_spectral_range: Response period, in μm. Zero disables aliasing.
- periodic_orders: How many grating orders each side of the design one are represented.
- insertion_loss: Loss of the centre channel.
- nonuniformity: Edge-to-centre transmission drop.
- crosstalk: Crosstalk floor.
- order: Butterworth order. 1 to 2 for a Gaussian-like passband, higher for flat-top.
Returns
Component with num_channels + 1 optical ports. The first is the
common port.