Why is my plot blank ?
2 次查看(过去 30 天)
显示 更早的评论
>> syms y
>> syms U
>> A=(-U-U*exp(-y))./(exp(-y)-1)
A =
-(U + U*exp(-y))/(exp(-y) - 1)
>> B=(2*U)./(exp(-y)-1)
B =
(2*U)/(exp(-y) - 1)
>> f(U,y)= A+B*exp(-y)
f(U, y) =
(2*U*exp(-y))/(exp(-y) - 1) - (U + U*exp(-y))/(exp(-y) - 1)
>> plot(f(U,0.01),f(U,100))
Error using plot
Data must be numeric, datetime, duration or an array convertible to double.
((Trying to plot two versions of the function. One with y=0.01 and y=100.))
3 个评论
Rik
2019-12-3
I'm on mobile so I can't test it, but you probably need to divide this into 2 calls to plot. And is there a reason why you're using symbolic variables instead of anonymous functions (and fplot)?
回答(1 个)
Walter Roberson
2019-12-3
U is a symbolic variable, so f(U,0.01) is a symbolic expression involving the symbolic variable U
plot() can never plot symbolic expressions that contain unresolved symbolic variables.
Try fplot()
1 个评论
Walter Roberson
2019-12-3
Though now that I look at it again, you should probably be using fplot3(), like
fplot3( f(U, 0.01), f(U, 100), 0)
Provided, that is, that the idea is that you want to plot a parametric curve as the U values change.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Number Theory 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!