Main Content

sigstrength

Calculate received signal strength at last node of link

    Description

    PISO = sigstrength(lnk) returns a history matrix of received isotropic power in dBW at the final node in each link defined in the vector, lnk. The rows of the matrix correspond to the link object in lnk and the columns correspond to the time sample.

    [PISO,PRI] = sigstrength(lnk) returns received isotropic power, PISO, and history matrix of the power at receiver input, PRI, in dBW at the final node in each link defined in the vector, lnk. The rows of the matrix correspond to the link object in lnk and the columns correspond to the time sample.

    example

    [___] = sigstrength(lnk,timeIn) returns one or both of the outputs as column vectors at the specified datetime timeIn. The elements in the vectors correspond to the links in lnk. If no time zone is specified in timeIn, the time zone is assumed to be Coordinated Universal Time (UTC).

    example

    [PISO,PRI,timeOut] = sigstrength(___) returns the received isotropic power, power at the receiver input, and the corresponding datetime in UTC.

    Examples

    collapse all

    This example computes the history of received isotropic power, power at receiver input, and the corresponding time samples of the satellite link.

    Create a satellite scenario object.

    startTime = datetime(2020,10,13,10,42,0);
    stopTime = datetime(2020,10,13,10,50,0);
    sampleTime = 60;                                      % seconds
    sc = satelliteScenario(startTime,stopTime,sampleTime);

    Add a satellite to the scenario.

    semiMajorAxis = 10000000;                                          % meters
    eccentricity = 0;
    inclination = 0;                                                   % degrees
    rightAscensionOfAscendingNode = 0;                                 % degrees
    argumentOfPeriapsis = 0;                                           % degrees
    trueAnomaly = 210;                                                 % degrees
    sat = satellite(sc,semiMajorAxis,eccentricity,inclination, ...
        rightAscensionOfAscendingNode,argumentOfPeriapsis,trueAnomaly);

    Add a transmitter to the satellite.

    tx = transmitter(sat);

    Add a ground station to the scenario.

    latitude = 0;                             % degrees
    longitude = 30;                           % degrees
    gs = groundStation(sc,latitude,longitude);

    Add a receiver to the ground station.

    rx = receiver(gs,MountingAngles=[0; 180; 0]);

    Add a link analysis to the transmitter.

    lnk = link(tx,rx);

    Obtain the history of received isotropic power, power at receriver input, and time samples.

    [PISO,PRI,timeOut] = sigstrength(lnk)
    PISO = 1×9
    103 ×
    
       -0.2770   -0.1509   -0.1461   -0.2630   -0.4950   -0.8299   -1.2512   -1.7398   -2.2756
    
    
    PRI = 1×9
    103 ×
    
       -0.5934   -0.1562   -0.1397   -0.5446   -1.3544   -2.5375   -4.0507      -Inf      -Inf
    
    
    timeOut = 1x9 datetime
    Columns 1 through 3
    
       13-Oct-2020 10:42:00   13-Oct-2020 10:43:00   13-Oct-2020 10:44:00
    
    Columns 4 through 6
    
       13-Oct-2020 10:45:00   13-Oct-2020 10:46:00   13-Oct-2020 10:47:00
    
    Columns 7 through 9
    
       13-Oct-2020 10:48:00   13-Oct-2020 10:49:00   13-Oct-2020 10:50:00
    
    

    This example computes the received isotropic power and the power at receiver input of the satellite link at a specified time.

    Create a satellite scenario object.

    startTime = datetime(2021,10,13,10,5,0);
    stopTime = startTime + days(1);
    sampleTime = 60;                                      % seconds
    sc = satelliteScenario(startTime,stopTime,sampleTime);

    Add a satellite to the scenario.

    semiMajorAxis = 10000000;                                          % meters
    eccentricity = 0;
    inclination = 0;                                                   % degrees
    rightAscensionOfAscendingNode = 0;                                 % degrees
    argumentOfPeriapsis = 0;                                           % degrees
    trueAnomaly = 210;                                                 % degrees
    sat = satellite(sc,semiMajorAxis,eccentricity,inclination, ...
        rightAscensionOfAscendingNode,argumentOfPeriapsis,trueAnomaly);

    Add a receiver to the satellite.

    rx = receiver(sat);

    Add a ground station to the scenario.

    latitude = 0;                             % degrees
    longitude = 30;                           % degrees
    gs = groundStation(sc,latitude,longitude);

    Add a transmitter to the ground station.

    tx = transmitter(gs,MountingAngles=[0; 180; 0]);

    Add a link analysis to the transmitter.

    lnk = link(tx,rx);

    Obtain the received isotropic power and power at receriver input on 13 October 2021 at 10:06 AM UTC.

    time = datetime(2021,10,13,10,6,0);
    [PISO,PRI] = sigstrength(lnk,time)
    PISO = -2.9142e+03
    
    PRI = -3.9716e+03
    

    Input Arguments

    collapse all

    Link analysis object, specified as a vector.

    Time at which the output is calculated, specified as a datetime scalar. If no time zone is specified in timeIn, the time zone is assumed to be UTC.

    Output Arguments

    collapse all

    Received isotropic power in dBW, returned as a matrix. This output is the power level just before the receiver antenna, after accounting for the transmitter effective isotropic radiated power and path loss. The rows of the matrix correspond to the link object in lnk and the columns correspond to the time sample.

    When the AutoSimulate property of the satellite scenario is true, the received isotropic power history from StartTime to StopTime is returned. Otherwise, the received isotropic power history from StartTime to SimulationTime is returned.

    Power at receiver input in dBW, returned as a matrix. This output is the power level after adding the receiver antenna gain in the direction of the received signal to PISO and subtracting PreReceiverLoss of the receiver. The rows of the matrix correspond to the link object in lnk and the columns correspond to the time sample.

    When the AutoSimulate property of the satellite scenario is true, the history of power at the receiver input from StartTime to StopTime is returned. Otherwise, the history of power at the receiver input from StartTime to SimulationTime is returned.

    Time samples of received isotropic power, PISO, and power at receiver input, PRI, returned as a datetime scalar. If time histories of PISO and PRI are returned, timeOut is a datetime row vector.

    Version History

    Introduced in R2022b