Problem with ploting involving function handle
69 ビュー (過去 30 日間)
古いコメントを表示
Hi all, I encounter the following error when I want to plot a function involving function handle with symsum, I cannot figure out the error. My code is as follows. In my matlab 2023b, I receive the following error:
Warning: Error updating FunctionLine.
The following error was reported evaluating the function in FunctionLine update: Undefined function 'symsum' for input arguments of type 'double'.
N= 600
sym ii
COMx_k = @(k) symsum(1.*exp(-2*pi*1i*(k/N)*ii), ii,1,N)
%k=0:0.1:300
fplot(COMx_k)
xlabel('k')
ylabel('COMx_k')
0 件のコメント
採用された回答
その他の回答 (1 件)
Walter Roberson
2024 年 10 月 13 日
sym ii
That is equivalent to
ans = sym('ii');
which creates the symbolic symbol ii but throws away the reference to the symbolic symbol.
What you probably wanted was
N= 600
syms ii
COMx_k = @(k) symsum(1.*exp(-2*pi*1i*(k/N)*ii), ii,1,N)
fplot(COMx_k)
xlabel('k')
ylabel('COMx_k')
However, this takes a fair amount of time to plot !!
1 件のコメント
Walter Roberson
2024 年 10 月 13 日
@(k) symsum(1.*exp(-2*pi*1i*(k/N)*ii), ii,1,N)
That is complex-valued when k is not an integer, and is 0 when k is an integer.
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!