メインコンテンツ

p618Config

Create P.618 configuration object

    Description

    The p618Config object sets the P.618 configuration parameters required for the calculation of the Earth-space propagation losses, cross-polarization discrimination, and sky noise temperature, as defined in the ITU-R P.618-14 recommendation [1].

    Note

    If you are using MATLAB® in version R2025b or earlier, refer to the Tips section for instructions on how to run the examples by using ITU-R P.618-13.

    Creation

    Description

    cfgP618 = p618Config creates a P.618 configuration object with default property values.

    cfgP618 = p618Config(Name,Value) specifies Properties using one or more name-value pair arguments. Enclose each property name in quotes. For example, p618Config('GasAnnualExceedance',10,'AntennaEfficiency',0.65) configures a P.618 configuration object with 10% average annual time percentage of excess for gaseous attenuation and 0.65 antenna efficiency.

    example

    Properties

    expand all

    Signal frequency in Hz, specified as a scalar in the range [1e9, 55e9].

    Data Types: double | single

    Elevation angle in degrees, specified as a scalar in the range [5, 90].

    Data Types: double | single

    Earth station latitude in degrees, specified as a scalar in the range [-90, 90]. A positive value corresponds to a North latitude, and a negative value corresponds to a South latitude.

    Data Types: double | single

    Earth station longitude in degrees, specified as a scalar in the range [-180, 180]. A positive value corresponds to East longitude, and a negative value corresponds to West longitude.

    Data Types: double | single

    Average annual time percentage of excess for the gaseous attenuation, specified as a scalar in the range [0.01, 99]. This property calculates the gaseous attenuation, which satisfies the exceedance condition, in terms of the percentage of an average year.

    To understand how annual exceedance property ranges map to availability ranges, see Correlation Between Annual Exceedance and Availability.

    Note

    The fraction of time during which a preselected threshold is exceeded in an average year is referred to as the annual time percentage of excess.

    Data Types: double | single

    Average annual time percentage of excess for the cloud attenuation, specified as a scalar in the range [0.01, 99]. This property calculates the cloud attenuation, which satisfies the exceedance condition, in terms of the percentage of an average year.

    To understand how annual exceedance property ranges map to availability ranges, see Correlation Between Annual Exceedance and Availability.

    Data Types: double | single

    Average annual time percentage of excess for the rain attenuation, specified as a scalar in the range [0.001, 5]. This property calculates the rain attenuation, which satisfies the exceedance condition, in terms of the percentage of an average year.

    To understand how annual exceedance property ranges map to availability ranges, see Correlation Between Annual Exceedance and Availability.

    Data Types: double | single

    Average annual time percentage of excess for the tropospheric scintillation, specified as a scalar in the range [0.01, 50]. This property calculates the tropospheric scintillation, which satisfies the exceedance condition, in terms of the percentage of an average year.

    To understand how annual exceedance property ranges map to availability ranges, see Correlation Between Annual Exceedance and Availability.

    Data Types: double | single

    Average annual time percentage of excess for the total attenuation, specified as a scalar in the range [0.001, 50]. This property calculates the total attenuation, which satisfies the exceedance condition, in terms of the percentage of an average year.

    To understand how annual exceedance property ranges map to availability ranges, see Correlation Between Annual Exceedance and Availability.

    Data Types: double | single

    Polarization tilt angle in degrees, specified as a scalar in the range [-90, 90].

    Data Types: double | single

    Physical diameter of the earth station antenna in meters, specified as a positive scalar.

    Data Types: double | single

    Antenna efficiency of the earth station antenna, specified as a positive scalar.

    Data Types: double | single

    Object Functions

    expand all

    p618PropagationLossesCalculate Earth-space propagation losses, cross-polarization discrimination, and sky noise temperature

    Examples

    collapse all

    Create a default P.618 configuration object.

    cfg = p618Config;

    Specify the signal frequency as 25 GHz, elevation angle as 45 degrees, and antenna efficiency as 0.65. Set the time percentage of excess for the total attenuation per annum as 0.001.

    cfg.Frequency = 25e9;
    cfg.ElevationAngle = 45;
    cfg.AntennaEfficiency = 0.65;
    cfg.TotalAnnualExceedance = 0.001;  

    Set the earth station direction.

    cfg.Latitude = 30;   % North direction
    cfg.Longitude = 120; % East direction

    Display the properties of the configuration object.

    disp(cfg)
      p618Config with properties:
    
                            Frequency: 2.5000e+10
                       ElevationAngle: 45
                             Latitude: 30
                            Longitude: 120
                  GasAnnualExceedance: 1
                CloudAnnualExceedance: 1
                 RainAnnualExceedance: 1
        ScintillationAnnualExceedance: 1
                TotalAnnualExceedance: 1.0000e-03
                PolarizationTiltAngle: 0
                      AntennaDiameter: 1
                    AntennaEfficiency: 0.6500
    

    This example requires a MAT file with digital maps from ITU documents. If the MAT file is not available on the path, execute the following commands to download and extract it.

    matFile = exist('iturp618v14Maps.mat','file');
    if ~matFile
        if ~exist('ITURP618v14DigitalMaps.tar.gz','file')
            url = 'https://www.mathworks.com/supportfiles/spc/P618/ITURP618v14DigitalMaps.tar.gz';
            websave('ITURP618v14DigitalMaps.tar.gz',url)
            untar('ITURP618v14DigitalMaps.tar.gz')
        else
            untar('ITURP618v14DigitalMaps.tar.gz')
        end
        addpath(cd)
    end

    Create a default P.618 configuration object.

    cfg = p618Config;

    Specify the time percentage of excess for the rain attenuation per annum as 0.01 and the time percentage of excess for the total attenuation per annum as 0.001.

    cfg.RainAnnualExceedance = 0.01;
    cfg.TotalAnnualExceedance = 0.001;

    Calculate the propagation losses, cross-polarization discrimination, and sky noise temperature.

    [pl,xpd,tsky] = p618PropagationLosses(cfg)
    pl = struct with fields:
        Ag: 0.2278
        Ac: 0.2473
        Ar: 6.7981
        As: 0.2633
        At: 15.2643
    
    
    xpd = 
    32.8876
    
    tsky = 
    266.8455
    

    This example requires a MAT file with digital maps from ITU documents. If the MAT file is not available on the path, execute the following commands to download and extract it.

    matFile = exist('iturp618v14Maps.mat','file');
    if ~matFile
        if ~exist('ITURP618v14DigitalMaps.tar.gz','file')
            url = 'https://www.mathworks.com/supportfiles/spc/P618/ITURP618v14DigitalMaps.tar.gz';
            websave('ITURP618v14DigitalMaps.tar.gz',url);
            untar('ITURP618v14DigitalMaps.tar.gz');
        else
            untar('ITURP618v14DigitalMaps.tar.gz');
        end
        addpath(cd);
    end

    Create a P.618 configuration object that occupies a signal frequency of 20 GHz.

    cfg = p618Config(Frequency=20e9);

    Calculate the propagation losses in a light rainfall of 1 mm/hr with an earth station height of 0.75 km.

    pl =  p618PropagationLosses(cfg,RainRate=1,StationHeight=0.75)
    pl = struct with fields:
        Ag: 0.7170
        Ac: 0.4763
        Ar: 0.0177
        As: 0.3187
        At: 1.0361
    
    

    More About

    expand all

    Tips

    For MATLAB version R2025b or earlier, the p618Config object uses ITU-R P.618-13 for its calculations instead of ITU-R P.618-14.

    Use this code to download and unzip the MAT files containing digital maps from the ITU-R P.618-13 documents. The code also adds the extracted files to your MATLAB path.

    maps = exist('maps.mat','file');
    p836 = exist('p836.mat','file');
    p837 = exist('p837.mat','file');
    p840 = exist('p840.mat','file');
    matFiles = [maps p836 p837 p840];
    if ~all(matFiles)
        if ~exist('ITURDigitalMaps.tar.gz','file')
            url = 'https://www.mathworks.com/supportfiles/spc/P618/ITURDigitalMaps.tar.gz';
            websave('ITURDigitalMaps.tar.gz',url);
            untar('ITURDigitalMaps.tar.gz');
        else
            untar('ITURDigitalMaps.tar.gz');
        end
        addpath(cd);
    end
    To run the examples, replace the corresponding code fragment that downloads and unzips the latest digital maps from ITU-R P.618-14 in each example with this to ensure compatibility with ITU-R P.618-13.

    References

    [1] International Telecommunication Union, ITU-R Recommendation P.618 (08/2023).

    Extended Capabilities

    expand all

    C/C++ Code Generation
    Generate C and C++ code using MATLAB® Coder™.

    Version History

    Introduced in R2021a

    expand all