In gsl_multiroot_function the prototype of the member function f is int f (gsl_vector * x, void * p, _matrix * f ). I am trying to avoid the use of the function gsl_vector_get ( x, 0 ); and supstitute it with pX = x->data; pX [ 0 ]; Is this safe? Is the stride of x always 1? Thank you.