File Exchange

image thumbnail

Radio link coverage map

version 1.3.0.0 (424 KB) by François Beauducel
Computes a map of visibility (line of sight) on a topography.

4 Downloads

Updated 26 Dec 2009

View License

is program computes a map of visibility from a selected point on a topography. It has been written to help the search for radio relay best location. Because it considers only direct line of sight, it gives a good estimation for possible radio link for short distances only (less than 10 km), neglecting curvature of the Earth, Fresnel zone and atmospheric refraction on radio waves propagation. The program computes the relative elevation angle of the mask for each point (the angle is null or negative if the point is visible).

The function needs a digital elevation model Z and associated (X,Y) vectors or matrices of coordinates (same unit as Z), position of the point (X0,Y0), the antenna height H0 (for instance 4 m), and the hypothetic antenna height Ha on each topography points (for instance 3 m). When no output argument is given, the function plots a map of the results (color map of mask angles, and blank for visible points, see example screenshot).

The script is not fully optimized because it makes a global loop on the matrix elements to compute each profile of topography... (I didn't find (yet) a way to fully vectorize the problem), so it takes some time to compute, depending on the number of element of Z. However, I found a faster algorithm (about 2 times faster), giving approximate result but usefull to process a first map.

The function has interest with real topography ; try this example with the gradient modulus of PEAKS function (the point (x0,y0) is set on the secondary hill):

[x,y,z]=peaks(100);
[fx,fy]=gradient(z);
z=sqrt(fx.^2+fy.^2);
surf(x,y,z), shading flat, light, view(-24,74)
radiocover(x,y,z,-0.84,-0.27,.05,.05,'fast')

See help for syntax, and script comments for details.

Comments and Ratings (2)

Thanks David. I will update the file with a simple example as you suggest, using the gradient modulus of peaks.

Great, seems to work.
A suggestion: Why not supply a simple demo perhaps using peaks?

Updates

1.3.0.0

Adds some checks on input arguments, new default algorithm 3 times faster than before. 'fast' method is still 2 times faster than the default.

1.2.0.0

Adds an example with peaks Matlab's function (thanks David Wilson for suggestion). Adds an option 'fast' for a faster process (but approximative).

1.1.0.0

I added a simple example using gradient of peaks function (in the help text). By default, the function computes the real coverage map using interpolation; a faster approximate algorithm is available with 'fast' option.

MATLAB Release Compatibility
Created with R13
Compatible with any release
Platform Compatibility
Windows macOS Linux