| Communications Toolbox | ![]() |
Construct a Rician fading channel object
chan = ricianchan(ts,fd,k)
chan = ricianchan(ts,fd,k,tau,pdb)
chan = ricianchan
chan = ricianchan(ts,fd,k) constructs a frequency-flat ("single path") Rician fading channel object. ts is the sample time of the input signal, in seconds. fd is the maximum Doppler shift, in Hertz. k is the Rician K-factor. In this channel, the specular component has zero phase and the phase does not change with the Doppler shift. You can model the effect of the channel on a signal x by using the syntax y = filter(chan,x).
chan = ricianchan(ts,fd,k,tau,pdb) constructs a frequency-selective ("multiple path") fading channel object that models the first discrete path as a Rician fading process and each of the remaining discrete paths as an independent Rayleigh fading process. tau is a vector of path delays, each specified in seconds. pdb is a vector of average path gains, each specified in dB.
chan = ricianchan constructs a frequency-flat channel object with no Doppler shift and a K-factor of 1. This is a static channel. The sample time of the input signal is irrelevant for frequency-flat static channels.
The tables below describe the properties of the channel object, chan, that you can set and that MATLAB sets automatically. To learn how to view or change the values of a channel object, see Viewing Object Properties or Changing Object Properties.
Writeable Properties
| Property | Description |
|---|---|
| InputSamplePeriod | Sample period of the signal on which the channel acts, measured in seconds |
| MaxDopplerShift | Maximum Doppler shift of the channel, in Hz |
| KFactor | Rician K-factor (scalar) for first path |
| PathDelays | Vector listing the delays of the discrete paths, in seconds |
| AvgPathGaindB | Vector listing the average gain of the discrete paths, in dB |
| NormalizePathGains | If 1, the Rayleigh fading process is normalized such that the expected value of the path gains' total power is 1. |
| StoreHistory | If 1, channel state information is stored as the channel filter function processes the signal. The default value is 0. |
| ResetBeforeFiltering | If 1, each call to filter resets the state of chan before filtering. If 0, the fading process maintains continuity from one call to the next. |
Read-Only Properties
| Property | Description | When MATLAB Sets or Updates Value |
|---|---|---|
| ChannelType | Fixed value, 'Rician' | When you create object |
| PathGains | Complex vector listing the current gains of the discrete paths. When you create or reset chan, PathGains is a random vector influenced by AvgPathGaindB and NormalizePathGains. | When you create object, reset object, or use it to filter a signal |
| ChannelFilterDelay | Delay of the channel filter, measured in samples | When you create object or change ratio of InputSamplePeriod to PathDelays |
| NumSamplesProcessed | Number of samples the channel processed since the last reset. When you create or reset chan, this property value is 0. | When you create object, reset object, or use it to filter a signal |
The PathDelays and AvgPathGaindB properties of the channel object must always have the same vector length because this length equals the number of discrete paths of the channel. If you change the value of one of these properties, then MATLAB truncates or zero-pads the value of the other property if necessary to adjust its vector length.
If you change the value of PathDelays or AvgPathGaindB, MATLAB might also change the values of read-only properties such as PathGains and ChannelFilterDelay.
The characteristics of a channel can be plotted using the channel visualization tool. See for details.
The example in Quasi-Static Channel Modeling uses this function.
This function produces a model for a Rayleigh channel, adds a constant to the first path gain, and then normalizes to correct the set of average path gains. To learn about the algorithm for producing a Rayleigh channel model, see Algorithm on the rayleighchan reference page.
rayleighchan, filter, plot (channel), reset, Fading Channels
[1] Jeruchim, Michel C., Philip Balaban, and K. Sam Shanmugan, Simulation of Communication Systems, Second Edition, New York, Kluwer Academic/Plenum, 2000.
| reset (equalizer) | rls | ![]() |
© 1994-2005 The MathWorks, Inc.