有人能解释一下“托尔”对我来说ismembertol (A, B, tol),看看我可以用在这种情况下吗?

84(30天)
我工作在一个项目,我穿越过ismembertol函数。“x”是61年x61翻倍,我想提取数字最接近值参照线的向量。我可以用ismembertol (a, b, tol)吗?有更好的方法吗?也许使用逻辑操作?“托尔”部分是什么,它做什么,以及如何可以应用吗?
%如果没有精确匹配
%让我们给出矩阵x, y, z的地图
参照线= (0.0000:0.050:3.0000);
托尔=每股收益(0.5);% idk我在这里做的目的到底是什么。我在MathWorks看到它作为一个例子
idx2 =找到(ismembertol (x, xvalues tol));

接受的答案

史蒂文的主
史蒂文的主 2019年6月5日
ismembertol (A, B) 返回一个数组相同的大小输出的每个元素 真正的 如果相应的元素是“接近”的一个元素b·托尔的输入参数允许您指定什么是“接近”。
2的评论
史蒂文的主
史蒂文的主 2019年6月7日
每股收益 代表的距离下一个最大的双精度数字。所以 每股收益(0.5) 你需要添加0.5进入下一个更大的数量。这是非常小的。鉴于参照线矢量数据,默认1 e-12公差可能是足够的。
让我们用样本数据。
参照线= (0.0000:0.050:3.0000)
同时参照线 看起来像 它包含1.45其实并没有价值。
任何(参照线= = 1.45)
如果你想显示参照线的元素 看起来像 它应该等于1.45和1.45用十六进制格式显示 实际的比特的数据存储 ,你就会看到它在最后一点不同。
> >十六进制格式
> >(参照线(30);1.45)
ans =
3 ff7333333333334
3 ff7333333333333
> >格式变化百分比回默认的显示格式
使用 ismembertol 用默认的公差并找到参照线的元素30,是它和1.45之间的差异小于公差。
ismembertol(参照线,1.45,1 e-12)
参照线(ismembertol(参照线,1.45,1 e-12))

登录置评。

更多的答案(0)

类别

找到更多的在标签和注释帮助中心文件交换

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!