I noticed a strange results of the find function today.
I am using the find function to extract the indices of a time serie that is contained inside a structure. The find function does find a result but it is however not the correct one and I do not understand why.
To be clearer here is the code I'm using:
t(1) = 10e-9;
t(2) = 25e-9;
t(3) = 35e-9;
t(4) = 40e-9;
Time_indices = find(abs([files(index).data.time]-t')< eps);
This gives the following result:
However, my time series array size is 401x1 double so the indices are wrong apart from the first one. However, if I run the same find function but in a for loop, discretizing the t values I get the expected result:
test(i) = find(abs([files(index).data.time]-t(i))< eps);
100 250 350 400
I'm not sure if I'm using find wrong or if there is an issue here, if someone has any insight into this that would be helpful for my understanding.