| Subcribe via RSS

Introducción a la GSL (GNU Scientific Library) – Evaluar un polinomio

Octubre 23rd, 2008 Posted in C/C++, programacion

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 -lgslcblas

Este programa daría como resultado:

4*x2 + 3*x + 2 = 24.000000


Entradas relacionadas

  1. Programación en C: Compilando con gcc
  2. Procesos en C: Ejemplo de un sencillo cronómetro con SIGALRM
  3. libCurl en PHP
  4. QT+MySQL (2ª parte): Comprobar si está disponible el driver MySQL para QT
  5. QT+Mysql (3ª parte): Conectando a una base de datos MySQL
Valoración:
1 Estrella2 Estrellas3 Estrellas4 Estrellas5 Estrellas (Sin calificar)
Loading ... Loading ...




One Response to “Introducción a la GSL (GNU Scientific Library) – Evaluar un polinomio”

  1. Antonio Says:

    No cambiar de ventana sin antes de decir: Muchas gracias por tu publicacion ;)

    No hallaba un ejemplo para saber que librerias “linkear”, y ya estaba por descartarla :P

    Saludos ;)


Leave a Reply