SymPy , la enciclopedia libre
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
[editar]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
[editar]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