Average of a function handle
20 次查看(过去 30 天)
显示 更早的评论
can someone please help me with ploting the mean of the function below?
d0=1;% Free space reference distance in meters
c = 3e8; %% speed of light (m/s)
n = 2; % Path loss exponent (PLE)
SF = 4.0;% Shadow fading standard deviation in dB
f=3; %frequency
h_BS=35; % base station high
TXPower = 30;% Tx power
PL_dB =@(TRDistance)( 20*log(4*pi*d0*f*1e9/c) + 23.1*(1-0.03*((h_BS-35)/35))*log((TRDistance)) + SF*randn);
for TRDistance = linspace(1,500,30)%1 to 28 in 30 steps
% Calculate the received power
if PL_dB(TRDistance) < 0
Pr_dB = @(TRDistance) TXPower + PL_dB(TRDistance);
else
Pr_dB = @(TRDistance) TXPower - PL_dB(TRDistance);
end
end
fplot(Pr_dB, [1,500]);
0 个评论
采纳的回答
Walter Roberson
2020-11-15
d0=1;% Free space reference distance in meters
c = 3e8; %% speed of light (m/s)
n = 2; % Path loss exponent (PLE)
SF = 4.0;% Shadow fading standard deviation in dB
f=3; %frequency
h_BS=35; % base station high
TXPower = 30;% Tx power
PL_dB =@(TRDistance)( 20*log(4*pi*d0*f*1e9/c) + 23.1*(1-0.03*((h_BS-35)/35))*log((TRDistance)) + SF*randn);
TrDistances = linspace(1,500,30);
Pr_Db = zeros(size(TrDistances));
for didx = 1 : numel(TrDistances)
TrDistance = TrDistances(didx);
% Calculate the received power
pldb = PL_dB(TRdistance);
if pldb < 0
Pr_dB(didx) = TXPower + pldb;
else
Pr_dB(didx) = TXPower - pldb;
end
end
plot(TrDistances, Pr_dBmean);
Note: instead of the if you can use:
PR_db(didx) = TXPower - abs(PL_dB(TRdistance));
4 个评论
Walter Roberson
2020-11-15
编辑:Walter Roberson
2020-11-15
d0=1;% Free space reference distance in meters
c = 3e8; %% speed of light (m/s)
n = 2; % Path loss exponent (PLE)
SF = 4.0;% Shadow fading standard deviation in dB
f=3; %frequency
h_BS=35; % base station high
TXPower = 30;% Tx power
PL_dB =@(TRDistance)( 20*log(4*pi*d0*f*1e9/c) + 23.1*(1-0.03*((h_BS-35)/35))*log((TRDistance)) + SF*randn);
TrDistances = linspace(1,500,30);
Pr_dB = zeros(size(TrDistances));
for didx = 1 : numel(TrDistances)
TrDistance = TrDistances(didx);
% Calculate the received power
Pr_dB(didx) = TXPower - abs(PL_dB(TrDistance)); %Notice no @ anywhere here
end
plot(TrDistances, Pr_dB);
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
