The error-part is extended from another online patch from CMU and Rice Univ.
Cite from OAR site:
"Although the CMU implementation results in an accurate simulation of the wireless channel for each individual flow, the fading components of channels for different flows are identical, a scenario not encountered in practice. This arises due to the fact that the index into the pre-computed channel table (used to look-up the components of fading envelope) is chosen based on the simulator's time instant, which is identical for all flows. To more realistically model the wireless channel for multiple users we modified the implementation such that channel lookup indexes are a function of the flow and time."
How to use
File rice_table.txt maintains the table used by Ricean Fading Model.
Original Description from CMU package
III. USAGE There is a sample script in the simscript directory. You will need this and the file "rice_table.txt". You should be able to run the sample script "rjp-sample.tcl". This is just a slightly modified version of the example script wireless-mitf.tcl which is in the NS distribution. Parameters for the Ricean Fading: The fading model is used to modulate the output of a large-scale fading model. In this case, it uses TwoRayGround as the large-scale model. For the Ricean Fading model: MaxVelocity : This parameter determines the doppler spectrum. The value of this parameter is the maximum speed of any objects in the environment (could be nodes). It is NOT the speed of the nodes themselves. RiceanK : The Ricean K factor LoadRiceFile : The file containing a table of in-phase and quadrature-phase ricean components. This has to do with the computation of the fading enveloped and doesn't have to be changed. Just load the provided file "rice_table.txt" in the simscript directory. The provided script uses the NORT routing as the routing protocol (it is a NULL routing protocol). This is not provided with the NS distribution. You can add nort.cc and nort.h to a directory called nort/ in your NS source directory, add nort/nort.o to Makefile.in, run configure and then make to include support for this.I did some minor changes, and the three files can be downloaded here:
The files prop_ricean.* should be put in the directory of ./mobile of ns source tree and the ricean_table.txt should be put in the same directory with simulation tcl-script.
Some lines in Tcl to enable this new propagation model:
set val(prop) Propagation/Ricean ;# radio-propagation model
set prop_inst [$ns_ set propInstance_]
$prop_inst MaxVelocity 2.5;
$prop_inst RiceanK 6;
$prop_inst LoadRiceFile "rice_table.txt";
1. Rice OAR software (http://www.ece.rice.edu/networks/software/OAR/OAR.html)
2. CMU Additions to the NS network simulator to handle Ricean and Rayleigh fading http://www.ece.cmu.edu/wireless/downloads.html