Les avantages de SymPy
- Gratuit : SymPy, distribué sous licence BSD, peut être utilisé librement et sans frais.
- Basé sur Python : SymPy est entièrement écrit en Python et s’utilise avec Python.
- Léger : SymPy ne dépend que de
mpmath, une bibliothèque Python pure pour les calculs en virgule flottante à précision arbitraire, ce qui le rend simple à utiliser.
- Bibliothèque : Au-delà d’un usage comme outil interactif, il peut être intégré dans d’autres applications ou étendu avec des fonctions personnalisées.
Projets qui utilisent SymPy
- Cadabra : système d’algèbre tensorielle et de théorie des champs (quantiques) qui utilise SymPy pour les opérations d’algèbre scalaire.
- ChemPy : paquet utile pour la chimie, écrit en Python.
- devito : DSL symbolique et compilateur just-in-time pour le calcul de stencils haute performance.
- EinsteinPy : paquet Python pour la relativité générale symbolique et numérique.
- galgebra : algèbre géométrique (anciennement
sympy.galgebra).
- LaTeX Expression project : facilite la composition LaTeX d’expressions algébriques, avec substitution automatique et calcul des résultats.
- Lcapy : paquet Python expérimental pour l’enseignement de l’analyse des circuits linéaires.
- OctSymPy : paquet symbolique pour Octave utilisant SymPy.
- Optlang : paquet Python pour résoudre des problèmes d’optimisation mathématique.
- PyDy : dynamique multicorps en Python.
- pyneqsys : défini symboliquement pour résoudre numériquement des systèmes d’équations non linéaires.
- pyodesys : intégration numérique simple de systèmes d’ODE en Python.
- PyTorch TorchInductor : TorchInductor utilise SymPy pour prendre en charge les formes et strides dynamiques.
- QMCPACK : Monte Carlo quantique en C++ ; utilise SymPy pour générer des valeurs de référence destinées aux tests unitaires et à une partie de la génération de code.
- Quantum Programming in Python : oscillateur harmonique simple quantique 1D et portes de mappage quantique.
- SageMath : système mathématique open source incluant SymPy.
- Scikit-fdiff : discrétisation par différences finies.
- SfePy : éléments finis simples en Python.
- Spyder : environnement de développement Python scientifique comparable à Rstudio ou MATLAB ; prise en charge complète de SymPy dans la console IPython de Spyder.
- Symbolic statistical modeling : ajoute des opérations statistiques à des modèles physiques complexes.
- yt : paquet Python pour analyser et visualiser des données volumiques (
unyt, le système d’unités de yt, utilise SymPy).
L’avis de GN⁺
- SymPy est une bibliothèque de calcul mathématique gratuite sous licence BSD, écrite en Python, et familière pour les utilisateurs de Python. Elle est particulièrement utilisée activement dans la communauté open source et présente des atouts applicables à de nombreux domaines scientifiques et d’ingénierie.
- SymPy est léger et s’intègre facilement dans d’autres applications, offrant aux utilisateurs la flexibilité nécessaire pour résoudre des problèmes mathématiques complexes ou l’étendre en ajoutant leurs propres fonctions.
- L’adoption de cette technologie nécessite une compréhension de base de Python, et elle montre particulièrement sa valeur dans les projets où la modélisation mathématique ou le calcul symbolique jouent un rôle important.
- Les bénéfices que l’on peut tirer de SymPy incluent des opérations mathématiques performantes, une extensibilité vers divers domaines, ainsi qu’une amélioration continue grâce au soutien de la communauté open source.
- Parmi les projets offrant des fonctions similaires figurent Mathematica, Maple et la Symbolic Math Toolbox de MATLAB, mais comme il s’agit de logiciels commerciaux, SymPy peut constituer une alternative gratuite et puissante.
1 commentaires
Commentaires Hacker News
transformetinvert.solve,expand,factor, etc.). Il existe un petit tutoriel pour les débutants, également disponible sous forme de notebook exécutable. Et pour ceux qui veulent essayer SymPy sans rien installer, il existe aussi un live shell SymPy permettant d’exécuter Python + SymPy dans le navigateur web.