plot using matlab(parabolic)
44 次查看(过去 30 天)
显示 更早的评论
This is watt sepctrum equation, but i don't know why my plot is weired. The plot might be parabolic shape, but mine is not. Could you let me know what's the problem?
x = linspace(10,10^7);
y = 0.453 .* exp(-1.036 .* x) .* sinh((2.29.* x).^0.5);
plot(x,y);
0 个评论
回答(2 个)
John D'Errico
2023-1-25
It IS curved, though not truly parabolic. A parabola means something specific about the shape, as a polynomial curve. But you just need to look carefully at what you have done. I'll do this for fewer points.
x = linspace(10,10^7,20)
y = 0.453 .* exp(-1.036 .* x) .* sinh((2.29.* x).^0.5)
So what happened? you had numerical problems. Do you see the NaNs there?
3 个评论
Walter Roberson
2023-1-25
Note the exp(negative of large large number)
format long g
-1317311753049245359/134217728000
exp() of negative 10 million is going to be tiny.
John D'Errico
2023-1-25
编辑:John D'Errico
2023-1-25
Sorry. I had to end that answer before I was really finished writing. The point is, you are going out as far as 1e7 in x. What happens when x is REALLY REALLY large?
x = 1e7;
exp(-1.036 .* x)
So that subexpression underflows. But what is
sinh((2.29.* x).^0.5)
And that term overflows. What is the product of 0*inf? That is an indeterminate expression. We could come up with entirely valid arguments that result should be 0, inf, or any finite number. Therefore MATLAb is forced to call it a NaN,
0*inf
Thus an indeterminate result. It has no value you can assign to it.
In fact, this happens even for relatively small values of x in that interval. Even 1e5 is far too large to let you see anything. I'm not sure whay you are starting at x==10, but you can see stuff happening out there.
x = linspace(10,30);
y = 0.453 .* exp(-1.036 .* x) .* sinh((2.29.* x).^0.5);
plot(x,y)
As I said, this is not at all parabolic.
VBBV
2023-1-25
x = linspace(0.1,5,100); % may be parabolic
y = 0.453 .* exp(-1.036 .* x) .* sinh((2.29.* x).^0.5);
plot(x,y);
Parabolic probably depends on what range of parameter values you consider in the equation
0 个评论
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!