Ir al contenido

SymPy

De Wikipedia, la enciclopedia libre
Esta es una versión antigua de esta página, editada a las 00:42 1 ago 2014 por Nicoguaro (discusión · contribs.). La dirección URL es un enlace permanente a esta versión, que puede ser diferente de la versión actual.
SymPy
Información general
Tipo de programa biblioteca de Python
Desarrollador Grupo independiente de personas
Lanzamiento inicial 2007
Licencia BSD
Información técnica
Programado en Python
Versiones
Última versión estable 1.13.318 de septiembre de 2024
Enlaces

SymPy es una biblioteca escrita en Python cuyo objetivo es reunir todas las características de un sistema de álgebra computacional (CAS), ser fácilmente extensible y mantener el código todo lo simple que sea posible. SymPy no requiere ninguna biblioteca externa, salvo para soporte gráfico.

Características

En su funcionalidad podemos distinguir entre:

  • Capacidades básicas, que incluyen:
    • manejo de enteros de precisión arbitraria y de números racionales,
    • simplificación básica, expansión, sustitución básica,
    • manejo de funciones sobre el cuerpo de los complejos,
    • derivación, expansión en series de Taylor o de Laurent,
    • símbolos no conmutativos.
  • Módulos que incorporan estas tareas:
    • más funciones (factorial, zeta, legendre, etc),
    • límites,
    • integración,
    • divisibilidad y factorización de polinomios,
    • resolución de ecuaciones algebraicas, diferenciales y sistemas,
    • operaciones con matrices simbólicas,
    • Álgebra de Dirac y de Pauli,
    • Representación gráfica (en 2D y en 3D).
  • O paquetes externos:
    • symbide: GUI en PyGTK

Ejemplo de uso

Nótese que, en contraste con otros CAS, es necesario declarar las variables simbólicas antes de utilizarlas.

>>> from sympy import *
>>> x,y = symbols('x,y') #declaramos las variables simbolicas
>>> f = x**2 / y + 2 * x - ln(y)
>>> diff(f,x)
2 + 2*x/y
>>> f.diff(x) #notacion alternativa como metodos para derivacion y otros operadores 
2 + 2*x/y
>>> diff(f,y)
-1/y - x**2*y**(-2)
>>> integrate(exp(-x), (x, 0, oo)) #oo es la clase que representa a infinito
1

Véase también

Enlaces externos