I've been working with hypergeometric series for the last couple of days, and after found a C-function to do this type of mathematical determination, and ensure that the limits of the function and the anomalies weren't include in the calculus..I found the next mess:
and the lines in my code are:gsl: hyperg_2F1.c:640: ERROR: domain error
Default GSL error handler invoked.
where w = -1...And I evaluated the function (with mathematica) and the result should be 1.
aa = -1/(3*w);
bb = (w-1)/(3*w);
cc = 1-(5/(6*w));
dd = -pow(a, -3*w)*(1-omegam)/omegam;
printf("valor de aa= %1.3e, bb = %1.3e, cc = %1.3e y dd = %1.3e\n", aa, bb, cc, dd);
/*lingro = gsl_sf_hyperg_2F1 (aa, bb, cc, -pow(a, -3*w)*(1-omegam)/omegam );*/
lingro = 1.0;
If anyone know wich it's the problem...I really appreciate your help :-)