【发布时间】:2012-04-12 10:47:34
【问题描述】:
dist=[1:100]; % distance
% conc. is concentration of size 1x100
conc=1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0.990000000000000 0.990000000000000 0.990000000000000 0.990000000000000 0.990000000000000 0.990000000000000 0.990000000000000 0.990000000000000 0.990000000000000 0.990000000000000 0.990000000000000 0.980000000000000 0.970000000000000 0.950000000000000 0.920000000000000 0.890000000000000 0.850000000000000 0.820000000000000 0.790000000000000 0.750000000000000 0.710000000000000 0.680000000000000 0.640000000000000 0.600000000000000 0.560000000000000 0.520000000000000 0.480000000000000 0.440000000000000 0.400000000000000 0.360000000000000 0.310000000000000 0.270000000000000 0.230000000000000 0.180000000000000 0.140000000000000 0.100000000000000 0.0700000000000000 0.0400000000000000 0.0200000000000000 0.0100000000000000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
我想在conc 中找到与浓度值 0.16(或最接近的值)和 0.84(或最接近的值)对应的索引。我将使用该索引在这些索引处找到dist。需要注意的一点是,conc 值在大小为 100 的向量中以非线性关系从 1 递减到 0。我知道我们可以使用 find(),但我不确定它如何用于什么我想做。
如果可能的话,我希望能够在不使用循环的情况下有效地做到这一点。这是因为我有很多集中注意力的向量,而且我的代码中已经有很多循环。谢谢。
【问题讨论】:
标签: matlab indexing find compare indices