I have a gsl_vector whose values are evenly space from -M_PI to M_PI.
I am using the GSL single dimensional root finding algorithm on a
single equation which gives me a value that is in the range of [-M_PI,
M_PI], but won't be exactly equal to any of the elements.  My goal is
to find the index of the element in my gsl_vector which is closest to
the solution from the root finding algorithm.  Here is an illustration
of situation:

v = {-1.0, -0.5, 0.0, 0.5, 1.0}
x_star = 0.3

Since the entry of v closest to x_star is 0.5, the index I would want
to obtain is i = 3.

I would imagine the function call to be something like:

i = get_nearest_index(v, x_star);

I can easily see how I would use a for loop from i = 0 to N, but I was
wondering if perhaps this code has already been implemented within GSL
more efficiently using other searching algorithms, like some sort of
binary search or something.

Also, is there a function already in GSL which generates evenly space
vectors?  A C equivalent of the Octave/Matlab v = 0:0.01:1 or
linspace(0, 1, 101).  If not, is there interest in these being
implemented and included in the gsl_vector library?

Thanks,
~Luke

_______________________________________________
Help-gsl mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/help-gsl

Reply via email to