SuivantBasNiv. sup.

1.1 Maxima 

Description 

Maxima est un programme de calcul formel généraliste, développé en Common Lisp. Il permet de calculer des dérivées, des intégrales indéfinies, des développements de Taylor, des limites et des séries. Il peut faire des simplifications et factorisations de polynômes et d'expressions trigonométriques, du calcul matriciel et tensoriel, et résoudre des systèmes linéaires et des équations différentielles. Il connaît également un grand nombre de fonctions spéciales, permet de faire du calcul numérique sur les réels ou les complexes et dispose d'un module de représentation graphique tridimensionnelle. Une description plus détaillée, avec quelques exemples, est donnée sur le site du CNDP.

Licence d'utilisation 

Maxima est une version libre du programme Macsyma (qui était devenu commercial au début des années 80, cf. sec. 2.2). Elle a été maintenue pendant de longues années par William F. Schelter, jusqu'à son décès en juillet 2001. Elle est distribuée depuis peu sous licence GPL. Dans un de ses derniers messages, daté du 17 juillet 2001, William Schelter expliquait ses motivations pour diffuser Maxima sous ce type de licence :

I think making publicity about free systems is of course important. I am a very poor publicist myself. Of course commercial systems pay money and advertise and it works, I just dont like to base my work on a commercial system. It is too likely to disappear, change in ways I dont want etc... Once one has the source under a free license one is protected. And after all learning to use a system or language is a substantial investment of time...

Téléchargement 

Maxima peut être téléchargé à partir de la page de William Schelter, à partir du nouveau site international, du site web de Michel Gosse, ou à partir du site ftp de l'association AsTeX. Ce dernier contient les fichiers :

Documentation 

Maxima dispose d'un manuel de référence, écrit en texinfo. Il est disponible sous formes dvi, html et info. Cette dernière forme est utilisée pour fournir la documentation en ligne sur toutes les commandes, via la commande spéciale describe.

Il existe également :

Interfaces (mod. 09/12/2001) 

Maxima peut être utilisé à partir de quatre interfaces :

  1.  L'interface XMaxima, écrite par W. Schelter. Elle est écrite en Tcl/tk de sorte qu'elle est facilement portable. Elle fonctionne sous Linux et Windows, entre autres. XMaxima peut être utilisé en conjonction avec l'assistant AsTeX, pour afficher certains résultats de manière plus lisible que l'affichage standard.
  2.  Les éditeurs Emacs et Xemacs, pour lesquels plusieurs modes ont été écrits : bookmode.el et maxima-mode.el, par W. Schelter, emaxima.el par Jay Belanger, et imaxima.el par Jesper Harder.
  3.  L'interface Symaxx, de Markus Nentwig. Elle est utilisable uniquement sous Linux.
  4.  L'interface TeXmacs de Joris van der Hoeven et Andrey Grozin. Elle est utilisable uniquement sous Linux.

Bibliothèques additionnelles (mod. 14/12/2001) 

La bibliothèque Format, de Bruce Miller, permet de formater automatiquement des expressions complexes sous une forme aussi compacte que possible. Pour l'installer, il faut compiler les fichiers format.lisp et coeflist.lisp, puis charger dans Maxima les fichiers-objet produits, format.o et coeflist.o, à l'aide de l'instruction load :

 load("format.o")
 load("coeflist.o")

Gcl (mod. 14/12/2001) 

Maxima nécessite un Lisp pour fonctionner. Il marche avec Gcl (GNU Common Lisp) ainsi qu'avec Clisp , Cmucl et Acl (Allegro Common Lisp, version commerciale). Clisp est interprété, alors que Gcl est compilé en C, ce qui fait qu'il est beaucoup plus rapide.

Le mainteneur actuel de Gcl est Camm Maguire. Gcl est disponible sous forme d'arbre cvs. Il est possible de s'inscrire sur la liste de discussion gcl-devel pour proposer des patchs, rapporter des bugs ou des résultats de tests.

Listes de discussion 

Il existe une liste de discussion internationale sur Maxima, sur laquelle on peut poser toute question liée à l'utilisation de Maxima. Il est nécessaire de s'inscrire. Cette liste est archivée. Une liste francophone a été créée pour discuter des problèmes liés à l'utilisation de Maxima en France : traduction et correction des documentations originales, francisation de l'interface, écriture de manuels (utilisation et tutoriel), archivage de procédures en vue d'étendre les bibliothèques existantes, etc. Pour s'incrire sur la liste, envoyer un message de contenu subscribe maxima au serveur de liste.

Maintenance (mod. 29/11/2001) 

Maxima est maintenu par une équipe internationale de volontaires. Le coordinateur du projet est actuellement James Amundson. Il est responsable de l'infrastructure (infrastructure referee) du nouveau site CVS sur sourceforge. Richard Fateman est responsable du contenu (content referee) du site. Une première liste de choses à faire a été proposée.

Interopérabilité 

Il est souhaitable, pour un logiciel de calcul formel généraliste, de pouvoir appeler des programmes écrits dans d'autres langages. Maxima possède cette propriété d'interopérabilité.

Historique 

Une copie d'un historique de Macsyma se trouve dans la section 2.1.

SuivantHautNiv. sup.