Error using plot Conversion to double from sym is not possible.
显示 更早的评论
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]);
回答(4 个)
Walter Roberson
2013-2-17
编辑:Walter Roberson
2013-2-17
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 个评论
Gandi Pirkov
2013-2-17
Walter Roberson
2013-2-19
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
2015-8-3
0 个投票
Error using plot Conversion to double from sym is not possible. need help to solve this problem, thank you
1 个评论
omayma mansouri
2015-8-3
编辑:omayma mansouri
2015-8-3
Error using plot Conversion to double from sym is not possible need help to solve this problem, thank you my code matlab
Steven Lord
2015-8-3
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);
类别
在 帮助中心 和 File Exchange 中查找有关 Common Operations 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!