-
sdr.PiMPSK(order: int, phase_offset: float =
0.0, symbol_labels: 'bin' | 'gray' | ArrayLike ='gray', sps: int =8, pulse_shape: ArrayLike | 'rect' | 'sine' | 'rc' | 'srrc' ='rect') Creates a new \(\pi/M\) PSK object.
- Parameters:¶
- order: int¶
The modulation order \(M = 2^k\), where \(k \ge 1\) is the bits per symbol.
- phase_offset: float =
0.0¶ The absolute phase offset \(\phi\) in degrees.
- symbol_labels: 'bin' | 'gray' | ArrayLike =
'gray'¶ The decimal symbol labels of consecutive complex symbols.
"bin": The symbols are binary-coded. Adjacent symbols may differ by more than one bit."gray":The symbols are Gray-coded. Adjacent symbols only differ by one bit.npt.ArrayLike: An \(M\)-length array whose indices are the default symbol labels and whose values are the new symbol labels. The default symbol labels are \(0\) to \(M-1\) for phases starting at \(1 + 0j\) and going counter-clockwise around the unit circle.
- sps: int =
8¶ The number of samples per symbol \(f_s / f_{sym}\).
- pulse_shape: ArrayLike | 'rect' | 'sine' | 'rc' | 'srrc' =
'rect'¶ The pulse shape \(h[n]\) of the modulated signal.
npt.ArrayLike: A custom pulse shape. It is important thatspsmatches the design of the pulse shape. See Pulse shaping."rect": Rectangular pulse shaping withspssamples per symbol, seesdr.rectangular()."sine": Half-sine pulse shaping withspssamples per symbol, seesdr.half_sine()."rc": Raised cosine pulse shaping withspssamples per symbol, roll-off factor of 0.2, and span of 10 symbols. This option is for convenience. Users can design their own RC pulse shape withsdr.raised_cosine()."srrc": Square-root raised cosine pulse shaping withspssamples per symbol, roll-off factor of 0.2, and span of 10 symbols. This option is for convenience. Users can design their own SRRC pulse shape withsdr.root_raised_cosine().