SageMath
![Page d’aide sur l’homonymie](http://upload.wikimedia.org/wikipedia/commons/thumb/a/a9/Logo_disambig.svg/20px-Logo_disambig.svg.png)
Pour les articles homonymes, voir Sage (homonymie).
![Description de l'image Sage logo new.png.](http://upload.wikimedia.org/wikipedia/commons/thumb/d/d4/Sage_logo_new.png/120px-Sage_logo_new.png)
![Description de cette image, également commentée ci-après](http://upload.wikimedia.org/wikipedia/commons/thumb/e/e5/Sagemath-jupyter-screenshot.png/220px-Sagemath-jupyter-screenshot.png)
Développé par | William Stein et al. |
---|---|
Première version | ![]() |
Dernière version | 10.4 ()[1]![]() |
Dépôt | github.com/sagemath/sage![]() |
Écrit en | Python, Cython, C, C++ et Fortran![]() |
Système d'exploitation | Linux, Microsoft Windows et macOS![]() |
Environnement | Multiplate-forme |
Type | Système de calcul formel![]() |
Licence | Licence publique générale GNU version 2![]() |
Site web | sagemath.org |
modifier - modifier le code - voir Wikidata (aide)
SageMath (anciennement Sage) est un logiciel libre généraliste de calcul mathématique.
Le projet SageMath vise à « développer une alternative open source viable » aux systèmes de calcul formel Magma, Maple, et Mathematica ainsi qu'au logiciel de calcul numérique MATLAB[2].
SageMath dispose de fonctionnalités avancées dans des domaines tels que l'algèbre linéaire, l'algèbre commutative, la théorie des nombres ou encore la combinatoire algébrique.
En revanche, sa prise en charge du calcul symbolique classique (sommation et intégration symboliques, résolution d'équations différentielles, asymptotique...), point fort de systèmes comme Maple et Mathematica, est à ce stade limitée.
Une originalité architecturale importante de SageMath, vis-à-vis de la plupart des autres systèmes de calcul formel, est la manière dont il s'appuie sur des logiciels existants. Plutôt que de fournir un langage de commande spécifique, SageMath utilise Python, un langage de programmation généraliste préexistant. Les fonctionnalités mathématiques proprement dites s'appuient elles aussi largement sur d'autres logiciels, que SageMath inclut et dont il unifie l'interface.
Le système SageMath se compose ainsi à la fois d'une distribution de logiciels tiers, d'une bibliothèque Python de calcul mathématique dont une partie des fonctionnalités fait directement appel aux logiciels de la distribution, et d'interfaces utilisateur permettant l'utilisation interactive de cette bibliothèque.
SageMath est diffusé sous les termes de la licence publique générale GNU version 2.
Fonctionnalités
![](http://upload.wikimedia.org/wikipedia/commons/thumb/8/87/Fairytale_warning.png/17px-Fairytale_warning.png)
![](http://upload.wikimedia.org/wikipedia/commons/thumb/e/e9/SAGE_equation_solve.jpeg/220px-SAGE_equation_solve.jpeg)
Outre ses fonctionnalités mathématiques, SageMath fournit une interface Python pour les logiciels qu'il inclut, par exemple Maxima, PARI/GP et Singular, ainsi que pour différents logiciels mathématiques non-intégrés comme Fricas, gnuplot, GNU Octave, Maple, Magma et Mathematica.
Son interface en ligne de commande repose sur IPython. Un « préparseur » ajoute au langage Python quelques extensions syntaxiques qui facilitent l'utilisation interactive de la bibliothèque Sage. Par ailleurs, une interface graphique appelée le notebook (« bloc-notes »), qui fonctionne dans un navigateur web, permet de créer des feuilles de calcul mêlant texte et calculs effectués avec SageMath ou d'autres logiciels. Via cette interface web, il est possible de se connecter à un serveur SageMath installé sur un ordinateur distant. Plusieurs serveurs SageMath publics[3] permettent aujourd'hui d'utiliser SageMath sans l'installer sur son propre ordinateur.
Architecture
La bibliothèque SageMath est écrite pour l'essentiel dans les langages de programmation Python et Cython. Parmi les logiciels mathématiques externes sur lesquels elle s'appuie de façon majeure, on peut citer les bibliothèques MPIR, MPFR, Flint, NTL, ou encore Linbox, ainsi que les logiciels de calcul formel plus spécialisés GAP, Maxima, PARI/GP et Singular. Ceux-ci sont écrits notamment en C, C++, Python, Lisp et Fortran[4].
Voir aussi
Articles connexes
- NumPy
- MayaVi
- Enthought
- pythonxy
Liens externes
- Site officiel
- Mathematical Software and Me: A Very Personal Recollection, William Stein,
- Avec Sage, le Python est dans la boîte !, Paul Zimmermann,
- A. Casamayou, N. Cohen, G. Connan, T. Dumont, L. Fousse, F. Maltey, M. Meulien, M. Mezzarobba, C. Pernet, N. M. Thiéry, P. Zimmermann, « Calcul mathématique avec Sage » (consulté le )
Référence
- ↑ « Release 10.4 », (consulté le )
- ↑ https://raw.github.com/sagemath/sage/master/README.txt
- ↑ http://alpha.sagenb.org « Copie archivée » (version du sur Internet Archive) https://cloud.sagemath.com https://sagecell.sagemath.org
- ↑ Sage has significant components written in the following languages: C/C++, Python, Lisp, and Fortran. Fichier README.txt ; version 4.2
v · m Logiciels de calcul numérique | |
---|---|
Logiciel libre | |
Logiciel propriétaire | |
Comparaisons des logiciels d'analyse numérique |
v · m | |
---|---|
Commerciaux |
|
Open source | |
Disparus |
Portail de l’informatique
Portail des logiciels libres