rectpulse
Rectangular pulse shaping
Syntax
y = rectpulse(x,nsamp)
Description
y = rectpulse(x,nsamp)
applies
rectangular pulse shaping to x
to produce an output
signal having nsamp
samples per symbol. Rectangular
pulse shaping means that each symbol from x
is
repeated nsamp
times to form the output y
.
If x
is a matrix with multiple rows, the function
treats each column as a channel and processes the columns independently.
Note
To insert zeros between successive samples of x
instead
of repeating the samples of x
, use the upsample
function instead.
Examples
To see this function in conjunction with modulation, see Modulation with Pulse Shaping and Filtering Examples.
The code below processes two independent channels, each containing
three symbols of data. In the pulse-shaped matrix y
,
each symbol contains four samples.
nsamp = 4; % Number of samples per symbol nsymb = 3; % Number of symbols s = RandStream('mt19937ar', 'Seed', 0); ch1 = randi(s, [0 1], nsymb, 1); % Random binary channel ch2 = [1:nsymb]'; x = [ch1 ch2] % Two-channel signal y = rectpulse(x,nsamp)
The output is below. In y
, each column corresponds
to one channel and each row corresponds to one sample. Also, the first
four rows of y
correspond to the first symbol,
the next four rows of y
correspond to the second
symbol, and the last four rows of y
correspond
to the last symbol.
x = 1 1 1 2 0 3 y = 1 1 1 1 1 1 1 1 1 2 1 2 1 2 1 2 0 3 0 3 0 3 0 3
Version History
Introduced before R2006a