Scilab:“第一个和第二个输入参数在函数 histplot 的第 53 行必须是实数”
为什么这段代码在 Scilab 中失败?
N=1000;
U=rand(N, 1);
X=(9*U - 1)^(1/3);
histplot(200, X);
Why does this piece of code fail in Scilab?
N=1000;
U=rand(N, 1);
X=(9*U - 1)^(1/3);
histplot(200, X);
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
代码很可能会失败,因为
X
不是真实的。如果U
小于1/9
,就会发生这种情况,这意味着您要取负数的三次方根。您可以通过检查
X
中的值是否真实来找到有问题的U
值。Most likely the code fails because
X
is not real. This can happen ifU
is smaller than1/9
, which means that you take the third root of a negative number.You can find problematic values of
U
by checking for whether the values inX
are real.每个元素运算符是否缺少“
.
”?编辑:
正如 Jonas 指出的那样,Scilab histplot 不会接受复数值作为参数。另一方面,MATLAB 由于缺少“每个元素”运算符而失败。
Is there a '
.
' per element operator missing?EDIT:
As Jonas points out Scilab histplot won't accept complex values as argument. MATLAB on the other hand fails because of the missing 'per element' operator.