ploting a function handle

8 views (last 30 days)
Ca Mai
Ca Mai on 10 Jul 2020
Commented: Ca Mai on 10 Jul 2020
can someone help me out please. I'm trying to plot this code but it gives me some errors ı don't know how to solve. It's my first time to use handle function.
close all;
clear variables;
clc;
f =1:0.1:28;
SF=4.0;
d0=1;
c = 3e8;
h_BS = 15;
TRDistance= 20;
h_BS = 15;
TRDistance= 20;
TXPower=30;
lambda = @(f) (c/(f*1e9));
PL_dB = @(f)(20*log(4*pi*d0*f*1e9/c) + 23.1*(1-0.03*((h_BS-35)/35))*log((TRDistance)) + SF*randn);
Pr_dBm =@(f)( TXPower - PL_dB);
figure;
plot(f, Pr_dBm(f));
xlabel('f');
ylabel('Pr_dBm');

Accepted Answer

madhan ravi
madhan ravi on 10 Jul 2020
Edited: madhan ravi on 10 Jul 2020
SF=4.0;
d0=1;
c = 3e8;
h_BS = 15;
TRDistance= 20;
TXPower=30;
lambda = @(f) (c/(f*1e9));
PL_dB = @(f)(20*log(4*pi*d0*f*1e9/c) + 23.1*(1-0.03*((h_BS-35)/35))*log((TRDistance)) + SF*randn);
Pr_dBm =@(f) TXPower - PL_dB(f);
figure(1)
fplot(Pr_dBm, [1,28])
xlabel('f')
ylabel('Pr_dBm')

More Answers (1)

Arthur Roué
Arthur Roué on 10 Jul 2020
You are trying to subtract a variable with a function handle
Pr_dBm =@(f)( TXPower - PL_dB);
You should evaluate the function. This might work
Pr_dBm =@(f)( TXPower - PL_dB(f));

Categories

Find more on Spline Postprocessing in Help Center and File Exchange

Products


Release

R2013a

Community Treasure Hunt

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

Start Hunting!