Can anyone explain the difference in results for rainpl function between R2016b and R2021a?

17 views (last 30 days)
I am getting very different results for the rainpl function for R2016b and R2021a
R2106b gives me:
L=rainpl(1000,10e9,2)
L = 0.0282
And R2021a gives me:
L=rainpl(1000,10e9,2)
L = 0.0686
The MATLAB help pages also give different results for the same examples between the two versions:
R2016b says:
Compute the signal attenuation due to rainfall for a 20 GHz signal over a distance of 10 km in light and heavy rain.
Propagate the signal in a light rainfall of 1 mm/hr.
rr = 1.0;
L = rainpl(10000,20.0e9,rr)
L =
0.7104
Propagate the signal in a heavy rainfall of 10 mm/hr.
rr = 10.0;
L = rainpl(10000,20.0e9,rr)
L =
7.8413
AND R2021a says:
Compute the signal attenuation due to rainfall for a 20 GHz signal over a distance of 10 km in light and heavy rain.
Propagate the signal in a light rainfall of 1 mm/hr.
rr = 1.0;
L = rainpl(10000,20.0e9,rr)
L = 1.3009
Propagate the signal in a heavy rainfall of 10 mm/hr.
rr = 10.0;
L = rainpl(10000,20.0e9,rr)
L = 8.1584
Both 2016b and 2021a purport to be applying “Radiocommunication Sector of International Telecommunication Union. Recommendation ITU-R P.838-3: Specific attenuation model for rain for use in prediction methods. 2005” to calculate path loss of signals propagating in a region of rainfall.
The 2016b results align more closely with the established literature of Skolnik (from Burrows and Attwood) and Currie, Dyer and Hayes, hence my concern.
Has anyone else noticed this issue or have I found a bug?

Answers (1)

Star Strider
Star Strider on 11 Apr 2024 at 12:30
The earliest available online information on rainpl is R2019a, so any changes between R2016b and R2019a are unavailable. (I don’t have any of the Toolboxes that use it.) Note that in the Toolbox you’re using, there are two possible functions, one being rainpl (introduced in R2016a) and the other being cranerainpl (introduced in R2020a). Beyond that, there’s no mention in the documentation for those functions that anything has changed.
I suggest that you Contact Support and also include a link to this thread so that you don’t have to repeat everything here in your note to them.
For what it’s worth, using the examples you provided, R2024a gives completely different results from those you posted —
% Propagate the signal in a light rainfall of 1 mm/hr.
rr = 1.0;
L = rainpl(10000,20.0e9,rr)
L = 1.3009
% Propagate the signal in a heavy rainfall of 10 mm/hr.
rr = 10.0;
L = rainpl(10000,20.0e9,rr)
L = 8.1584
% Propagate the signal in a light rainfall of 1 mm/hr.
rr = 1.0;
L = cranerainpl(10000,20.0e9,rr)
L = 2.2512
% Propagate the signal in a heavy rainfall of 10 mm/hr.
rr = 10.0;
L = cranerainpl(10000,20.0e9,rr)
L = 12.5988
These funcitons exist in several different Toolboxes. According to this result, they all share the same code for those functions —
which rainpl -all
/MATLAB/toolbox/shared/channel/rainpl.m
which cranerainpl -all
/MATLAB/toolbox/shared/channel/cranerainpl.m
.
  2 Comments
Karen White
Karen White on 11 Apr 2024 at 14:01
I couldn't find any reference to any known bugs, whether fixed or not, on the MATLAB Bug Fix lists for this issue either.
I'll follow your suggestion to contact customer support.
Thanks for your help.

Sign in to comment.

Tags

Products


Release

R2021a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!