kaira.modulations.DBPSKModulator

Inheritance diagram of DBPSKModulator

Inheritance diagram for DBPSKModulator

class kaira.modulations.DBPSKModulator(*args: Any, **kwargs: Any)[source]

Bases: DPSKModulator

Differential Binary Phase-Shift Keying (DBPSK) modulator.

Methods

__init__

Initialize DBPSK Modulator.

forward

Modulate bit groups to DPSK symbols.

plot_constellation

Plot the DPSK constellation diagram.

reset_state

Reset the internal phase memory to the default state.

Attributes

bits_per_symbol

Number of bits per symbol.

constellation

bit_patterns

__init__(*args: Any, **kwargs: Any)[source]

Initialize DBPSK Modulator.

property bits_per_symbol: int

Number of bits per symbol.

forward(x: Tensor, *args, **kwargs) Tensor

Modulate bit groups to DPSK symbols.

Parameters:
  • x – Input tensor of bits with shape (…, K*N), where K is bits_per_symbol, or direct symbol indices with shape (…, N) where each value is < order

  • *args – Variable length argument list.

  • **kwargs – Arbitrary keyword arguments.

Returns:

Complex tensor of DPSK symbols with shape (…, N)

plot_constellation(**kwargs) Figure

Plot the DPSK constellation diagram.

Parameters:

**kwargs – Additional arguments passed to plot_constellation

Returns:

Matplotlib figure object

reset_state() None

Reset the internal phase memory to the default state.

constellation: torch.Tensor
bit_patterns: torch.Tensor