matlab 出错 Warning:Rank deficient,rank = 38,tol = 6

发布时间:2021-02-26 09:18:01

matlab 出错 Warning:Rank deficient,rank = 38,tol = 6.841474e-11.clear x=-200:0.3:200;y=-200:0.1:200; [X,Y]=meshgrid(x,y); Z=X.*Y/sqrt(X.*X+Y.*Y);Warning:Rank deficient,rank = 38,tol = 6.841474e-11.这是代码.

网友回答

这只是警告,不是报错
实际上是计算矩阵相除的时候,因为计算出现奇异时,发出的警告
rank是矩阵的秩,tol是误差
不过从你的代码看,确实是错了
你的原来意思应该是
Z=X.*Y./sqrt(X.*X+Y.*Y);
|这里应该有个点
计算的是矩阵对应位置元素的除法运算
因为缺少了一个.所以变成了矩阵除法
这是最常见的错误,在乘、除、乘方中经常会少了一点导致错误
以上问题属网友观点,不代表本站立场,仅供参考!