forked from brian09088/NB-IoT-support-for-NTN
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcalculate_CNR.m
33 lines (23 loc) · 1.19 KB
/
calculate_CNR.m
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
% function for calculate CNR
function [cn] = calculate_CNR(txpower_dBW ,fc_GHz , Transmit_antenna_gain, d, G_T, data_rate)
cfg = satelliteCNRConfig;
cfg.TransmitterPower = txpower_dBW; % in dBW ()
cfg.TransmitterSystemLoss = 0; % in dB (FSPL)
cfg.TransmitterAntennaGain = Transmit_antenna_gain; % in dBi
cfg.Distance = d/1000; % in km (LEO sat altitude)
cfg.Frequency = fc_GHz; % in GHz
% Here, miscellaneous losses include polarization loss, interference
% loss, and antenna mispointing loss, respectively.
polLoss = 0;
intLoss = 0;
antLoss = 0;
cfg.MiscellaneousLoss = polLoss + intLoss + antLoss; % in dB
cfg.GainToNoiseTemperatureRatio = G_T; % in dB/K
cfg.ReceiverSystemLoss = 0; % in dB
% Among current NTN target performance scenarios
% IoT connectivity requires a data rate of 10 kbps or more
cfg.BitRate = data_rate; % in Mbps
disp(cfg)
% calculate satellite CNR
[cn,info] = satelliteCNR(cfg)
end