Conversion to double from sym is not possible
Show older comments
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 Comment
Christopher Creutzig
on 17 Nov 2011
Works fine for me. Are you using exactly the commands listed above? Which MATLAB version are you using? What does symvar(x) tell you?
Answers (2)
Walter Roberson
on 14 Nov 2011
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)))
1 Comment
BecauseHElives
on 4 Feb 2014
I had the same problem. This answer works.
Shahid Iqbal
on 30 Jun 2019
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.
Categories
Find more on Conversion Between Symbolic and Numeric in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!