Error using plot Conversion to double from sym is not possible.
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]);
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
Gandi Pirkov
on 17 Feb 2013
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.
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
omayma mansouri
on 3 Aug 2015
0 votes
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);
Categories
Find more on Common Operations 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!