Error using plot Conversion to double from sym is not possible.
3 views (last 30 days)
Show older comments
plot([0,2],[0,0],'k');
plot([0,0],[0,2],'k');
sol=dsolve('D3y-3*D2y+y=-3*x','y(0)=0','Dy(0)=3','D2y(0)=0','x');
xx = 0:0.1:2;
yy = subs(sol,'t',xx);
plot(xx,yy);
axis([-1,2.5,-1,2.5]);
0 Comments
Answers (4)
Walter Roberson
on 17 Feb 2013
Edited: Walter Roberson
on 17 Feb 2013
plot(xx, double(yy))
If that gets you the same error then examine sol and you will likely find that it has at least one free variable other than t.
2 Comments
Walter Roberson
on 19 Feb 2013
That indicates that your dsolve() result has at least one free variable beyond the 't' that you substituted in. "A"'s response pointing out that you would likely not have a "t" looks reasonable to me.
A
on 19 Feb 2013
Edited: A
on 19 Feb 2013
Dear Gandi Pirkov,
the variable of your equation is x, why you are addressing t and xx?! I have modefied it, the following code works without error
plot([0,2],[0,0],'k'); plot([0,0],[0,2],'k');
sol=dsolve('D3y-3*D2y+y=-3*x','y(0)=0','Dy(0)=3','D2y(0)=0','x'); x = 0:0.1:2;
plot(x,subs(sol));
axis([-1,2.5,-1,2.5]);
Good Luck
0 Comments
omayma mansouri
on 3 Aug 2015
Error using plot Conversion to double from sym is not possible. need help to solve this problem, thank you
1 Comment
omayma mansouri
on 3 Aug 2015
Edited: omayma mansouri
on 3 Aug 2015
Error using plot Conversion to double from sym is not possible need help to solve this problem, thank you my code matlab
Steven Lord
on 3 Aug 2015
Change your SUBS call to substitute xx in for x not t, since you told DSOLVE that your independent variable is x by specifying it as the final input argument.
yy = subs(sol, 'x', xx);
0 Comments
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!