SymPy
Aparença
Tipus | biblioteca Python, Sistema Algebraic Computacional i programari lliure |
---|---|
Versió inicial | 2007 |
Versió estable | |
Llicència | llicència BSD de 3 clàusules |
Característiques tècniques | |
Sistema operatiu | Unix-like |
Escrit en | Python |
Equip | |
Desenvolupador(s) | comunitat SymPy |
Fonts de codi | |
Més informació | |
Lloc web | sympy.org (anglès) |
Stack Exchange | Etiqueta |
Seguiment d'errors | Seguiment d'errors |
| |
SymPy és una biblioteca escrita en Python l'objectiu és reunir totes les característiques d'un sistema d'àlgebra computacional (conegut per les sigles en anglès CAS, Computational Algebraic System), ser fàcilment extensible i mantenir el codi tot el simple que sigui possible. SymPy no requereix cap biblioteca externa, excepte per a suport gràfic.
Característiques
[modifica]En la seva funcionalitat podem distingir entre:
- Capacitats bàsiques, que inclouen:
- Maneig d'enters de precisió arbitrària i de nombres racionals,
- Simplificació bàsica, expansió, substitució bàsica,
- Maneig de funcions sobre el cos dels complexos,
- Derivació, expansió en sèries de Taylor o de Laurent,
- Símbols no commutatius.
- Mòduls que incorporen aquestes tasques:
- Més funcions (factorial, zeta, Legendre, etc.),
- Límits,
- Integració,
- Divisibilitat i factorització de polinomis,
- Resolució d'equacions algebraiques, diferencials i sistemes,
- Operacions amb matrius simbòliques,
- Àlgebra de Dirac i de Pauli,
- Representació gràfica (en 2D i en 3D).
- Paquets externs:
- Symbide: GUI en PyGTK
Exemple d'ús
[modifica]Noteu que, en contrast amb altres CAS, cal declarar les variables simbòliques abans d'utilitzar-les.
>>> from sympy import *
>>> x,y = symbols('xy') #Es declaren les variables simbòliques
>>> f = x**2 / y + 2 * x - ln(y)
>>> diff(f,x)
2 + 2*x/y
>>> f.diff(x) #Notació alternativa per a mètodes com la derivació i altres operadors
2 + 2*x/y
>>> diff(f,y)
-1/y - x**2*y**(-2)
>>> integrate(exp(-x), (x, 0, oo)) #oo és la classe que representa infinit
1