How can I find the indices where an array is closest to a certain value.

I have a periodic function stored as 'discrete' points in an array, and I need to find the indices of where they cross a certain point. I can't use == because they aren't ever equal (they would be if I was representing it continuously). Here's what I tried so far but it only detects some of the points.
Vc = .1; ERR = .012;
m = size(v); term = m(1,1);
c = 1;
for i = 2:term if v(i,1) >= Vc-ERR && v(i-1,1) <= Vc+ERR inds(c,1) = i; c = c+1; end end
Can someone suggest a better method?

Categories

Asked:

on 3 Dec 2012

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!