-
sdr.LinearModulation(symbol_map: ArrayLike, phase_offset: float =
0.0
, sps: int =8
, pulse_shape: ArrayLike | 'rect' | 'rc' | 'srrc' ='rect'
, span: int | None =None
, alpha: float | None =None
) Creates a new linear phase/amplitude modulation object.
- Parameters:¶
- symbol_map: ArrayLike¶
The symbol mapping \(\{0, \dots, M-1\} \mapsto \mathbb{C}\). An \(M\)-length array whose indices are decimal symbols \(s[k]\) and whose values are complex symbols \(a[k]\), where \(M\) is the modulation order.
- phase_offset: float =
0.0
¶ A phase offset \(\phi\) in degrees to apply to
symbol_map
.- sps: int =
8
¶ The number of samples per symbol \(f_s / f_{sym}\).
- pulse_shape: ArrayLike | 'rect' | 'rc' | 'srrc' =
'rect'
¶ The pulse shape \(h[n]\) of the modulated signal.
npt.ArrayLike
: A custom pulse shape. It is important thatsps
matches the design of the pulse shape. See Pulse shaping."rect"
: Rectangular pulse shape."rc"
: Raised cosine pulse shape."srrc"
: Square-root raised cosine pulse shape.
- span: int | None =
None
¶ The span of the pulse shape in symbols. This is only used if
pulse_shape
is a string. IfNone
, 1 is used for"rect"
and 10 is used for"rc"
and"srrc"
.- alpha: float | None =
None
¶ The roll-off factor of the pulse shape. If
None
, 0.2 is used for"rc"
and"srrc"
.