Conversion to double from sym is not possible
49 ビュー (過去 30 日間)
古いコメントを表示
syms n;
t = (-300:1:300);
D_n = ((sin((pi*n)/2))./(pi*n));
y = (D_n).*exp((-j)*n*t*(pi/100));
x = symsum(y,n,-10,-1) + symsum(y,n,1,10);
plot(t,x);
I would like to plot t vs. x, however I get the error 'Conversion to double from sym is not possible'.
1 件のコメント
Christopher Creutzig
2011 年 11 月 17 日
Works fine for me. Are you using exactly the commands listed above? Which MATLAB version are you using? What does symvar(x) tell you?
回答 (2 件)
Walter Roberson
2011 年 11 月 14 日
Your x is a formula in terms of n, a variable you do not define a value for at any point.
Your t value has nothing to do with n.
You cannot plot a symbolic expression against an unrelated variable.
Perhaps what you want is
plot(t, double(subs(x,n,t)))
Shahid Iqbal
2019 年 6 月 30 日
syms n;
t = (-300:1:300);
D_n = ((sin((pi*n)/2))./(pi*n));
y = (D_n).*exp((-1i)*n*t*(pi/100));
x = symsum(y,n,-10,-1) + symsum(y,n,1,10);
plot(t,x);
work properly just replace -j with -1i , use updated version of MATLAB.
0 件のコメント
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!