mokka.equalizers
Module implementing equalizers.
Equalizer blocks after channel before decoder/demodulator - in PyTorch.
- class mokka.equalizers.torch.Butterfly2x2(taps=None, num_taps=None, trainable=False)
Bases:
Module
Class implementing the 2x2 complex butterfly filter structure.
This typically used in dual-polarization fiber-optical communications for equalization.
- class mokka.equalizers.torch.Butterfly4x4(taps=None, num_taps=None, trainable=False)
Bases:
Module
Class implementing the 4x4 real-valued butterfly filter.
This structure typically used in dual-polarization fiber-optical communications. It is a simplification of the 2x2 complex-valued butterfly filter.
- class mokka.equalizers.torch.CD_compensation(dt, beta2, channel_length)
Bases:
Module
Class implementing chromatic dispersion compensation in the frequency domain.
- Parameters:
dt – sample time [s]
beta2 – dispersion coefficient of the optical fiber [ps^2/km]
channel_length – total length of the channel [km]
- forward(y, center_freq=0)
Peform chromatic dispersion compensation in the frequency domain.
- Parameters:
y – received complex single polarization signal y
- Returns:
equalized signal