(To be removed) Simulate multipath Rayleigh fading propagation channel
Multipath Rayleigh Fading Channel will be removed in a future release. Use SISO Fading Channel instead.
Channels
The Multipath Rayleigh Fading Channel block implements a baseband simulation of a multipath Rayleigh fading propagation channel. You can use this block to model mobile wireless communication systems. For details about fading channels, see the references listed below.
This block accepts a scalar value or column vector input signal. The block inherits sample time from the input signal. The input signal must have a discrete sample time greater than 0.
Relative motion between the transmitter and receiver causes Doppler shifts in the
signal frequency. You can specify the Doppler spectrum of the Rayleigh process using
the Doppler spectrum type parameter. For channels with multiple
paths, you can assign each path a different Doppler spectrum, by entering a vector of
doppler objects in the Doppler spectrum
field.
Because a multipath channel reflects signals at multiple places, a transmitted signal travels to the receiver along several paths, each of which may have differing lengths and associated time delays. In the block's parameter dialog box, the Discrete path delay vector specifies the time delay for each path. If you do not check Normalize gain vector to 0 dB overall gain, then the Average path gain vector specifies the gain for each path. When you check the box, the block uses a multiple of Average path gain vector instead of the Average path gain vector itself, choosing the scaling factor so that the channel's effective gain, considering all paths, is 0 dB.
The number of paths is implicitly indicated via the number of elements in Discrete path delay vector or Average path gain vector. If both of these parameters are vectors, then they must have the same length; if exactly one of these parameters contains a scalar value, then the block expands it into a vector whose size matches that of the other vector parameter.
The block multiplies the input signal by samples of a Rayleigh-distributed complex random process. The scalar Initial seed parameter seeds the random number generator and the block generates random numbers using the Ziggurat method.
Double-clicking this block during simulation or selecting Open channel visualization at start of simulation plots the channel characteristics using the channel visualization tool. For more information, see Channel Visualization.
A positive scalar value that indicates the maximum Doppler shift.
Specifies the Doppler spectrum of the Rayleigh process.
This parameter defaults to Jakes Doppler
spectrum. Alternatively, you can also choose any of the following types:
For all Doppler spectrum types except Jakes and
Flat, you can choose one or more parameters
to control the shape of the spectrum.
You can also select Specify as dialog parameter
for the Doppler spectrum type. Specify the Doppler
spectrum by entering an object in the Doppler spectrum
field. See the doppler function reference
for details on how to construct Doppler objects, and also for the meaning of
the parameters associated with the various Doppler spectrum types.
A vector that specifies the propagation delay for each path.
A vector that specifies the gain for each path.
Checking this box causes the block to scale the Gain vector parameter so that the channel's effective gain (considering all paths) is 0 dB.
The scalar seed for the Gaussian noise generator.
Select this check box to open the channel visualization tool when a simulation begins.
Select this check box to create a port that outputs the values of the complex path gains for each path. In this N-by-M multichannel output, N represents the number of samples the input signal contains and M represents the number of discrete paths (number of delays).
Select this check box to create a port that outputs the value of the delay (in samples) that results from the filtering operation of this block. This delay is zero if only one path is simulated, but can be greater than zero if more than one path is present. See Methodology for Simulating Multipath Fading Channels for a definition of this delay, where it is denoted as .
This implementation is based on the direct-form simulator described in Reference [1]. A detailed explanation of the implementation, including a review of the different Doppler spectra, can be found in [4].
Some wireless applications prefer to specify Doppler shifts in terms of the speed of the mobile. If the mobile moves at speed v making an angle of θ with the direction of wave motion, then the Doppler shift is
fd = (vf/c)cos θ
where f is the transmission carrier frequency and c is the speed of light. The Doppler frequency represents the maximum Doppler shift arising from motion of the mobile.
This example illustrates how to generate ideal theoretical BER results for a flat Rayleigh fading channel. The model reproduces known theoretical results and shows the correct BER performance for a flat Rayleigh fading channel. In this example, you will run the model and compare the simulation results to the Bit Error Rate Analysis app theoretical results for verification purposes. In the model, the EbN0 value for the AWGN block is 5 dB. You can change the noise power by double-clicking the AWGN block and entering another numeric value in the EbN0 parameter.
Opening the Model
To open the model, type doc_qpsk_rayleigh_derotated
at the MATLAB command line.
Running the Model and Comparing Results
To run the example, select Run in the Simulate of the Simulation, Debug, or Modeling tab.
After the model collects more than 5000 errors, click the stop button.
Close the three scopes.
In the Simulink model window, double-click the Transmitter Output block. In the mask window, click the Figure Properties tab, uncheck Open scope at start of Simulation, then click OK.

In the Simulink model window, double-click the Rayleigh Channel Output block. In the mask window, click the Figure Properties tab, uncheck Open scope at start of Simulation, then click OK.
In the Simulink model window, double-click the Noisy Rayleigh Channel Output block. In the mask window, click the Figure Properties tab, uncheck Open scope at start of Simulation, then click OK.
In the Simulink model window, double-click the Error
Rate Calculation block, check Stop
simulation, enter 5000 for
Target number of error, then click
OK.
Click the play button to rerun the example.
Open Bit Error Rate Analysis app by typing
bertool at the MATLAB command
line.
In Bit Error Rate Analysis app, click the Theoretical tab and make the following selections:

For Eb/No range enter
0:10
For Channel type, select
Rayleigh
For Modulation Type, select
PSK
For Modulation order, select
4
Click Plot.
Click on the 5 dB point on the BER Figure window curve to verify results from the Simulink® model are approximately equal to the theoretical probability of error.

[1] Jeruchim, Michel C., Balaban, Philip, and Shanmugan, K. Sam, Simulation of Communication Systems, Second edition, New York, Kluwer Academic/Plenum, 2000.
[2] Jakes, William C., ed. Microwave Mobile Communications, New York, IEEE Press, 1974.
[3] Lee, William C. Y., Mobile Communications Design Fundamentals, 2nd Ed. New York, Wiley, 1993.
[4] Iskander, Cyril-Daniel, A MATLAB-based Object-Oriented Approach to Multipath Fading Channel Simulation, a MATLAB Central submission available from www.mathworks.com.