Introducción a la GSL (GNU Scientific Library) - Evaluar un polinomio
Recientemente he tenido que desarrollar un pequeño programa usando la librerÃa GSL (GNU Scientific Library). Esta es una potente librerÃa disponible en C para realizar complejos cálculos cientÃficos. Este artÃculo va a servir como introducción a dicha librerÃa.
Lo primero que necesitamos para trabajar con esta librerÃa en Ubuntu es el paquete libgsl0-dev. Si no me equivoco el paquete libgsl0dbl, necesario para ejecutar programas hechos con esta librerÃa, viene “de serie” en el sistema.
Vamos a ver el funcionamiento de la librerÃa evaluando el polinomio: 4×2+3x+2 cuando x = 2:
/* ejemplo_gsl.c */ #include <stdio.h> #include <gsl/gsl_poly.h> int main (void) { double coeficientes[] = { 2, 3, 4 }; double x = 2; double resultado = gsl_poly_eval (coeficientes, 3, x); printf ("4*x2 + 3*x + 2 = %f\n", resultado); return 0; }
El polinomio se evalúa usando la función gsl_poly_eval(), que tiene como parámetros:
- coeficientes: un array que contiene los coeficientes del polinomio.
- 3: es el tamaño del array de coeficientes.
- x: contiene el valor que queremos evaluar.
Para compilar el ejemplo bastarÃa con hacer:
gcc -o ejemplo_gsl ejemplo_gsl.c -lgsl -lgslcblasEste programa darÃa como resultado:
4*x2 + 3*x + 2 = 24.000000


