Calculate loss due to tropospheric lens effect
calculates the one-way loss due to the tropospheric lens effect using the International
Telecommunication Union (ITU) standard atmospheric model known as the mean annual global
reference atmosphere (MAGRA), which approximates the U.S. Standard Atmosphere 1976 with
insignificant relative error. The variation in refraction versus altitude makes the
atmosphere act like a lens with loss independent of frequency. Rays leaving an antenna are
refracted in the troposphere and the energy radiated within some angular extent is
distributed over a slightly greater angular sector, thereby reducing the energy density
relative to propagation in a vacuum.
L = lenspl(
specifies options using one or more name-value arguments in addition to the input arguments
in the previous syntax.
L = lenspl(___,Name,Value)
Plot Two-Way Lens Loss Curve
Calculate the two-way lens loss curve for a radar platform at sea level at an elevation angle of
0.03 deg over a slant range of
h = 0; % m el = 0.03; % deg R = (100:5000).*1e3; % m L = 2*lenspl(R,h,el); % Factor of 2 for two-way propagation
Plot the lens loss against the slant range.
plot(R.*1e-3,L); xlabel('Range (km)'); ylabel('Loss (dB)'); title('Two-Way Lens Loss');
R — Slant range
positive scalar | M-length real vector
Slant range, specified as a scalar or an M-length real vector. Units are in meters.
H — Altitude of radar platform
scalar in the range
Mean sea level (MSL) altitude of the radar platform, specified as a scalar from
100 km. Values outside the specified range
NaN output. Units are in meters.
EL — Elevation angle
scalar | M-length real vector
Elevation angle of the propagation path, specified as a scalar or M-length real vector. Units are in degrees.
Specify optional pairs of arguments as
the argument name and
Value is the corresponding value.
Name-value arguments must appear after other arguments, but the order of the
pairs does not matter.
Before R2021a, use commas to separate each name and value, and enclose
Name in quotes.
WaterVaporDensity — Standard ground-level water vapor density
7.5 (default) | positive scalar
Standard ground-level water vapor density, specified as a positive scalar. Applicable only for the default standard model (MAGRA). Units are in grams per meter cubed.
ScaleHeight — Altitude above mean sea level
2e3 (default) | positive scalar
Altitude above mean sea level (MSL), specified as a scalar. Applicable only for
the default standard model (MAGRA). For dry atmosphere conditions, set to
6e3 m. Units are in meters.
LatitudeModel — Reference latitude model
'Standard' (default) |
Reference latitude model, specified as one of these.
This model is the mean annual global reference atmosphere (MAGRA) that reflects the mean annual temperature and pressure averaged across the world.
This model is for low latitudes less than
This model is for mid latitudes between
This model is for high latitudes greater than
Season — Season
'Summer' (default) |
Season for the
models, specified as
models ignore this input. Defaults to
AtmosphereMeasurements — Custom atmospheric measurements
Custom atmospheric measurements for the calculation of the refractive index,
specified as an N-by-
4 matrix, where
N corresponds to the number of altitude measurements.
N must be greater than or equal to
first column is the atmospheric temperature in kelvins, the second column is the
atmospheric pressure in hPa, the third column is the water vapor density in
g/m3, and the fourth column is the MSL altitude of the
measurements in meters. When you use a custom model, all other name-value arguments
are ignored and the output refractive index is applicable for the input height.
The model used by
lenspl assumes geometrical optics
conditions, as a result anomalous propagation like ducting and subrefraction cannot
be present in provided measurements. If atmospheric measurements evidencing ducting
and subrefraction are provided, this function throws an error.
L — Lens loss
scalar | M-length real vector
The one-way lens loss, returned as a scalar or M-length real vector. Units are in decibels.
C/C++ Code Generation
Generate C and C++ code using MATLAB® Coder™.
Introduced in R2021a