Unable to find function @(fd)(1/(1​+A(fd/fdma​x2)^2)) within E:\matlab\bin\hw3.m.

2 views (last 30 days)
Why there is error : Unable to find function @(fd)(1/(1+A(fd/fdmax2)^2)) within E:\matlab\bin\hw3.m. ???
%Model B
v=1200;
c=3e8;
f2=2.4e9;
f5=5.25e9;
%For 2,4 GHz
fmax2=v*f2/c;
fdmax2=fmax2/5;%Doppler spread
Tc2=1/fdmax2;%Coherrence time for 2 GHz
A=9;
%For 5.25 GHz
fmax5=v*f5/c;
fdmax5=fmax5/5;%Doppler spread
Tc5=1/fdmax5;%Coherrence time for 5.25 GHz
%Plot Doppler sprectrum for Model B, 2 GHz
fd=(-fmax2).*rand(1000,1)+fmax2;
plot(Phih_B_2(fd),fd)
Unrecognized function or variable 'Phih_B_2'.
function Phih_B_2=g2(fd)
Phih_B_2=(1/(1+A(fd/fdmax2)^2));
end

Accepted Answer

Rik
Rik on 24 May 2023
As you can see, the error here is different than what you report.
Did you consider changing your function to have an output argument, and to make sure it doesn't attempt to create a variable with the same name as the function?
There are more issues with your function:
  • You are providing a vector as input, but you don't use element-wise operations.
  • You don't provide A or fdmax2 as input arguments.
  • You attempt to index A, but it is a scalar (and the indices are unlikely to be positive integers).
  4 Comments

Sign in to comment.

More Answers (0)

Tags

Products


Release

R2020b

Community Treasure Hunt

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

Start Hunting!