- 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).
Unable to find function @(fd)(1/(1+A(fd/fdmax2)^2)) within E:\matlab\bin\hw3.m.
1 回表示 (過去 30 日間)
古いコメントを表示
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)
function Phih_B_2=g2(fd)
Phih_B_2=(1/(1+A(fd/fdmax2)^2));
end
0 件のコメント
採用された回答
Rik
2023 年 5 月 24 日
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:
4 件のコメント
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Detection, Range and Doppler Estimation についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!