Is there a function that computes the Carrier-To-Interference Ratio in MATLAB 7.5 (R2007b)

6 views (last 30 days)
I would like to compute the Carrier-To-Interference ratio in MATLAB, but I cannot find a function that calculates this figure of merit.

Accepted Answer

MathWorks Support Team
MathWorks Support Team on 23 Feb 2012
There is no function in MATLAB that calculates the Carrier-To-Interference Ratio (CIR) directly. It is possible, however, to calculate the CIR using other information that is available in the MATLAB code that models the communication system. The calculation might proceed as follows:
1. Calculate the power in the transmitted signal, 'SignalPower':
If 'X' represents the transmitted signal waveform, then the
following MATLAB code will calculate the signal power:
N = length(X);
SignalPower = X*X'/N; % assumes X is row vector
2. Estimate the noise power based on the signal-to-noise ratio
specified in the AWGN function call. For example, in the Communication SystemToolbox , we can use
y = awgn(x,snr)
Where snr = SignalPower/Noise Power.
Since, we know Signal Power from 1 and know the value of snr from the AWGN function-call, the noise power can be calculate thereafter.
3. Calculate the total power in the received signal using the same
method as that for 'X' above.
4. Calculate the interference power as follows:
InterferePower = TotalPower - NoisePower - SignalPower;
5. Calculate the Carrier-To-Interference Ratio in dB as follows:
CIR = 10*log10(SignalPower/InterferePower);

More Answers (0)

Products


Release

R2007b

Community Treasure Hunt

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

Start Hunting!