Syntax
y =
modulate(x,fc,fs,'method'
)
y =
modulate(x,fc,fs,'method'
,opt)
[y,t] =
modulate(x,fc,fs)
Description
y =
modulate(x,fc,fs,'method'
)
and
y =
modulate(x,fc,fs,'method'
,opt)
modulate the real message signal x
with a carrier frequency fc
and
sampling frequency fs
, using one of the options
listed below for 'method'
. Note that some
methods accept an option, opt
.
Note:
Use modulate and demod in
the Signal Processing Toolbox™ with realvalued signals to obtain
realvalued outputs. modulate and demod are
not intended to accept complexvalued inputs or produce complexvalued
outputs. 
Method  Description 
amdsbsc
or am
 Amplitude modulation, double sideband, suppressed
carrier. Multiplies x by a sinusoid of frequency fc .

amdsbtc
 Amplitude modulation, double sideband, transmitted carrier.
Subtracts scalar opt from x and
multiplies the result by a sinusoid of frequency fc . y = (xopt).*cos(2*pi*fc*t)
If the opt parameter is
not present, modulate uses a default of min(min(x)) so
that the message signal (xopt) is entirely nonnegative
and has a minimum value of 0. 
amssb
 Amplitude modulation, single sideband. Multiplies x by
a sinusoid of frequency fc and adds the result
to the Hilbert transform of x multiplied by a phase
shifted sinusoid of frequency fc . y =
x.*cos(2*pi*fc*t)+imag(hilbert(x)).*sin(2*pi*fc*t)
This effectively removes the upper sideband. 
fm
 Frequency modulation. Creates a sinusoid with instantaneous
frequency that varies with the message signal x . y = cos(2*pi*fc*t + opt*cumsum(x))
cumsum is
a rectangular approximation to the integral of x . modulate uses opt as
the constant of frequency modulation. If opt is
not present, modulate uses a default of
opt = (fc/fs)*2*pi/(max(max(x)))
so
the maximum frequency excursion from fc is fc Hz. 
pm
 Phase modulation. Creates a sinusoid of frequency fc whose
phase varies with the message signal x . y = cos(2*pi*fc*t + opt*x)
modulate uses opt as
the constant of phase modulation. If opt is not
present, modulate uses a default of
opt = pi/(max(max(x)))
so
the maximum phase excursion is π radians. 
pwm
 Pulsewidth modulation. Creates a pulsewidth modulated
signal from the pulse widths in x . The elements
of x must be between 0 and 1, specifying the width
of each pulse in fractions of a period. The pulses start at the beginning
of each period, that is, they are left justified. modulate(x,fc,fs,'pwm','centered')
yields
pulses centered at the beginning of each period. y is
length length(x) *fs/fc . 
ppm
 Pulseposition modulation. Creates a pulseposition modulated
signal from the pulse positions in x . The elements
of x must be between 0 and 1, specifying the left
edge of each pulse in fractions of a period. opt is
a scalar between 0 and 1 that specifies the length of each pulse in
fractions of a period. The default for opt is 0.1 . y is
length length(x) *fs/fc . 
qam
 Quadrature amplitude modulation. Creates a quadrature
amplitude modulated signal from signals x and opt . y = x.*cos(2*pi*fc*t) + opt.*sin(2*pi*fc*t)
opt must
be the same size as x .

If you do not specify 'method'
, then modulate
assumes am
.
Except for the pwm
and ptm
cases, y
is
the same size as x
.
If x
is an array, modulate
modulates
its columns.
[y,t] =
modulate(x,fc,fs)
returns the internal
time vector t
that modulate
uses
in its computations.