Mathématiques

Utiliser Maxima

Cet article a été mis à jour, vous consultez ici une archive de cet article!
Dernière mise à jour : 06/03/2026 à 20h28
Table des matières

Icone wxmaxima


Présentation


Maxima est un logiciel libre de calcul formel (ou calcul symbolique). Il manipule des expressions mathématiques de manière exacte, sans approximations numériques.

Une description des fonctionnalités
  • Calcul formel : dériver, intégrer des fonctions, développer, factoriser des expressions algébriques
  • Résolution d'équations : algébriques, différentielles, systèmes d'équations
  • Développements en séries (de Taylor, de Laurent… )
  • Visualisation : tracé de courbes 2D ou 3D
  • Algèbre linéaire : matrices, déterminants, valeurs propres
  • Arithmétique de précision arbitraire : calcul exact sur des entiers ou fractions très grands
  • Des packages disponibles pour des domaines spécifiques des mathématiques, de la logique, des statistiques… complétant le champ d’étude du logiciel
  • Programmable : par un langage de script intégré pour automatiser des calculs


wxMaxima est l'interface graphique la plus conviviale pour utiliser Maxima, avec des menus et une présentation typographique des formules.

Cependant Maxima peut s'utiliser en ligne de commandes.

Pour résumer Maxima, via wxMaxima, est une alternative libre et gratuite à Maple ou Mathematica.

Installation


Vous l'installerez
  • soit via le Centre de Contrôle de Mageia
  • soit en mode texte avec la commande
    urpmi wxmaxima


L'installation de
wxmaxima
entraine celle de
maxima
et
maxima-runtime-XXXX
.

maxima-gui
est une autre interface graphique en Tcl/Tk à Maxima. Disponible sous Mageia, elle est par contre moins riche, moins pratique.

Utilisation


Malheureusement, l'interface graphique n'est pas francisé entièrement. Ce qui est dommage, mais pas handicapant. L'anglais mathématique de l'interface reste compréhensible.

Prise en main


wxMaxima interface de Maxima



Une feuille de calcul dans Maxima se compose de cellules composées d'une entrée, input, et d'une sortie, output. Chaque ligne a un identifiant composé de
%i
suivi d'un numéro. Chaque ligne à aussi un identifiant composé de
%o
et du même numéro comme on peut le voir sur la capture d'écran.

L'exécution d'un calcul, de la ligne entrée d'une cellule se fait avec : Ctrl+Entrée. Un ";" est placé en fin de ligne et l'expression est évaluée.

La touche Entrée seule crée une nouvelle ligne dans la cellule.

Vade-mecum


Les conventions les plus fondamentales à connaître.
  • Le signe % représente le résultat du dernier calcul :
    (%i4)    diff(%o2,x,1);
    (%o4)    4*x-5
    (%i5)    %*2;
    (%o5)    2*(4*x-5)
  • Il est possible de récupérer un résultat quelconque pour l'insérer dans un calcul. Mettre le résultat de la ligne 4, %o4, au carré, et développé :
    (%i6)    expand((%o4)^2);
    (%o6)    16*x^2-40*x+25
  • Les constantes π, e, i sont représentées respectivement par
    %pi
    ,
    %e
    ,
    %i

    (%i6) %i^2;   
    (%o6)                                 - 1
    (%i7) cos(%pi);
    (%o7)                                 - 1
  • L'affectation d'une variable se fait avec le signe ":" .
    Exemple, l'instruction
    a:7
    , signifie que la variable a prend la valeur 7.
  • La définition d'une fonction se fait avec ":=". Cf la capture d'écran ci-dessus.
  • La commande
    ? solve
    affiche l'aide, détaillée environ 130 lignes, de la commande
    solve
    .
  • Le bouton Étendre, permet de développer, au sens mathématique,
  • Commande
    example
    .
    example(factor)
    affiche des exemples, une quinzaine, d'utilisation de l'instruction
    factor
    , des factorisations d'entiers, d'expressions algébriques.
  • La commande
    kill(all)
    réinitialise la session. Retour à la ligne numéro zéro :
    (%i8)    kill(all);
    (%o0)    done
  • Le signe de multiplication de matrices est le point, ., et pour l'exponentiation c'est ^^. Donc le produit des matrices A et B se note
    A.B
    , et le carré de A se calcule avec
    A^^2
    .


Configuration


Le menu Edition/Configuration permet de configurer à votre convenance wxMaxima : polices de caractères, couleurs, sauvegarde automatiques, etc.

Il y est possible de remplacer la validation de cellule, Ctrl+Entrée, par Entrée. Seulement, les deux textes, labels, sont identiques. Bogue (wxMaxima 22.12) ! Le label du haut est erroné. Il faut comprendre Entrée.

wxMaxima-Configuration-Ctrl+Entrée



Le menu View/Sidebars permet d'afficher ou non les panneaux avec des boutons pour des fonctions : Développer, Dériver…, Courbe 2D, 3D…, Caractères grecs…

Quelles remarques


Le menu contextuel propose une kyrielle de fonctions.

wxMaxima-Copier


Certaines, Copier comme SVG, comme image, ne semblent pas fonctionnelles.

Un exemple de graphique


La surface d'équation z = x² y² :

Surface_x2-y2_Maxima_GNUplot



Mode texte


Un court exemple de l'utilisation en console.
Code TEXT :
$ maxima 
Maxima 5.46.0 https://maxima.sourceforge.io
using Lisp SBCL 2.2.10-1.mga9
Distributed under the GNU Public License. See the file COPYING.
Dedicated to the memory of William Schelter.
The function bug_report() provides bug reporting information.
(%i1) 4+5;
(%o1)                                  9
(%i2) (a+b)^3;
                                          3i
(%o2)                              (b + a)
(%i3) expand(%);
                            3        2      2      3
(%o3)                      b  + 3 a b  + 3 a  b + a
(%i4) diff(2*x^3-4*x+7,x);
                                      2
(%o4)                              6 x  - 4
(%i5) ^Z
[2]+  Stoppé                 maxima


On quitte
maxima
avec Ctrl + Z.

La mention de Lisp rappelle que Maxima est programmé dans ce langage fonctionnel.

Interfaces


Outre la désuète interface maxima-gui , il y eut pymaxima qui est elle complétement abandonnée. En voici deux qui restent d'actualité.

TeXmacs


Il est possible d'insérer une session de calculs Maxima dans un document TeXmacs, traitement de texte orienté maths.
Un court exemple :

TeXmacs - Session Maxima


TeXmacs est disponible dans Mageia.

LabPlot


LabPlot est un logiciel de visualisation et d’analyse de données libre, open source et multiplateformes.
Il peut faire office d'interface pour Maxima

Session Maxima dans LabPlot



Sitographie