SymPy - Calcul symbolique

Le calcul symbolique fait référence au développement d'algorithmes pour manipuler des expressions mathématiques et d'autres objets mathématiques. Le calcul symbolique intègre les mathématiques à l'informatique pour résoudre des expressions mathématiques à l'aide de symboles mathématiques. Un système d'algèbre informatique (CAS) tel que SymPy évalue les expressions algébriques exactement (pas approximativement) en utilisant les mêmes symboles que ceux utilisés dans la méthode manuelle traditionnelle. Par exemple, nous calculons la racine carrée d'un nombre en utilisant le module mathématique de Python comme indiqué ci-dessous -

>>> import math 
>>> print (math.sqrt(25), math.sqrt(7))

La sortie de l'extrait de code ci-dessus est la suivante:

5.0 2.6457513110645907

Comme vous pouvez le voir, la racine carrée de 7 est calculée approximativement. Mais dans SymPy, les racines carrées de nombres qui ne sont pas des carrés parfaits ne sont pas évaluées par défaut, comme indiqué ci-dessous -

>>> import sympy 
>>> print (sympy.sqrt(7))

La sortie de l'extrait de code ci-dessus est la suivante:

sqrt(7)

Il est possible de simplifier et d'afficher le résultat de l'expression symboliquement avec l'extrait de code ci-dessous -

>>> import math
>>> print (math.sqrt(12))

La sortie de l'extrait de code ci-dessus est la suivante:

3.4641016151377544

Vous devez utiliser l'extrait de code ci-dessous pour exécuter la même chose en utilisant sympy -

##sympy output 
>>> print (sympy.sqrt(12))

Et la sortie pour cela est la suivante -

2*sqrt(3)

Le code SymPy, lorsqu'il est exécuté dans le notebook Jupyter, utilise la bibliothèque MathJax pour restituer des symboles mathématiques sous forme LatEx. Il est montré dans l'extrait de code ci-dessous -

>>> from sympy import * 
>>> x=Symbol ('x') 
>>> expr = integrate(x**x, x) 
>>> expr

Lors de l'exécution de la commande ci-dessus dans le shell python, la sortie suivante sera générée -

Integral(x**x, x)

Ce qui équivaut à

$ \ int \ mathrm {x} ^ {x} \, \ mathrm {d} x $

La racine carrée d'un carré non parfait peut être représentée par Latex comme suit en utilisant le symbole traditionnel -

>>> from sympy import * 
>>> x=7 
>>> sqrt(x)

La sortie de l'extrait de code ci-dessus est la suivante:

$ \ sqrt7 $

Un système de calcul symbolique tel que SymPy effectue toutes sortes de calculs (tels que des dérivés, des intégrales et des limites, résoudre des équations, travailler avec des matrices) symboliquement. Le package SymPy contient différents modules prenant en charge le traçage, l'impression (comme LATEX), la physique, les statistiques, la combinatoire, la théorie des nombres, la géométrie, la logique, etc.