-
sdr.CPM(order: int, index: float =
0.5
, symbol_labels: 'bin' | 'gray' | ArrayLike ='bin'
, phase_offset: float =0.0
, sps: int =8
, pulse_shape: ArrayLike | 'rect' ='rect'
, span: int =1
) Creates a new continuous-phase modulation object.
- Parameters:¶
- order: int¶
The modulation order \(M = 2^k\).
- index: float =
0.5
¶ The modulation index \(h\). The modulation index is the ratio of the frequency deviation to the symbol rate \(h = \Delta f / f_{sym}\). The phase change per symbol is \(\pi h\).
- symbol_labels: 'bin' | 'gray' | ArrayLike =
'bin'
¶ 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.
- phase_offset: float =
0.0
¶ A phase offset \(\phi\) in degrees.
- sps: int =
8
¶ The number of samples per symbol \(f_s / f_{sym}\).
- pulse_shape: ArrayLike | 'rect' =
'rect'
¶ The pulse shape \(h[n]\) of the instantaneous frequency of the signal. If a string is passed, the pulse shape is normalized such that the maximum value is 1.
npt.ArrayLike
: A custom pulse shape. It is important thatsps
matches the design of the pulse shape. See Pulse shaping."rect"
: Rectangular pulse shape.
- span: int =
1
¶ The span of the pulse shape in symbols. This is only used if
pulse_shape
is a string.
See also