Dernière mise à jour
Septembre 2023, version stable 1.9.0-59.
Présentation de Xcas:
Résumé,
Fonctionnalités,
Fiches Xcas,
Documentation et ajouts,
Citations,
Benchmarks,
Nouveautés,
Xcas dans votre navigateur (Firefox, Safari) (compressé),
Télécharger Xcas pour :
Windows ,
Mac OS X,
Linux debian/ubuntu,
Linux RPM,
archlinux,
Linux binaires,
Free BSD.
Windows CE,
Linux ARM,
Code source
Dans votre navigateur
Xcas,
HTML interactif formel : latex+hevea+giac,
Swiftcalcs,
Smartcas,
Python/C++/Javascript/Java
Interface python,
C++ (info développeurs),
Giac compilé en Javascript,
Giac natif pour node.js,
Interface java JNI,
Client natif Chrome (taper chrome://flags et autoriser NaCl),
Calculatrices :
HP Prime, TI Nspire,
Casio, Numworks
Interfaces giac:
Console,
LaTeX,
Open/Libre Office plugin : description et module (C. Devalland),
module pour D-math (D. Dorange).
Xcas en ligne (J.P. Branchard),
rackmath (source, exerciseur secondaire, par rudimath),
interface Python simple (Windows Andrzej A. Stos),
Android,
Applications non libres pour iPhone/iPad,
Autour de Xcas :
FAQ,
Forum Xcas et bugs,
Site pédagogique,
Algorithmique,
Bac S,
Agrégation
externe,
interne,
Capes,
Pages web,
Livres,
Programmes,
Remerciements .
Giac/Xcas
est un système de calcul formel libre pour
Windows, Mac OSX et Linux/Unix (license GPL3, possibilité
d'obtenir une license pour inclusion dans un logiciel commercial:
nous contacter).
-
Xcas est une interface de Giac,
qui permet de faire du calcul formel, des représentations
graphiques dans le plan ou l'espace, de la géométrie
dynamique (dans le plan ou dans l'espace),
du tableur, des statistiques et de la programmation.
Xcas utilise la librairie graphique FLTK, il existe un
projet alternatif basé sur QT:
qcas.
- Xcas hors-ligne dans votre navigateur
est une interface de Giac un peu moins complète mais utilisable
sans aucune installation depuis un navigateur compatible, Firefox
est conseillé.
-
Giac, est le moteur de calcul de Xcas, il s'agit
d'une bibliothèque C++. On peut l'utiliser dans
des programmes C++ mais aussi depuis Python, Java et Javascript.
Exemples de logiciels utilisant Giac : Geogebra
(Java et Javascript), la calculatrice HP Prime (C++),
Pocket CAS (C++), CAS Calc P11 (C++). Giac peut optionnellement
etre utilisé depuis sage.
-
Giac/Xcas dispose d'un mode de compatibilité pour les
personnes habitués aux logiciels de calcul formel
Maple ou MuPAD ainsi que pour les utilisateurs
de calculatrices TI (TI89/TI92/Voyage 200/TI Nspire CAS).
-
Petit historique: le projet a commencé en 2000, à
la suite de l'écriture du logiciel de calcul formel
des calculatrices HP. Il comporte aujourd'hui un peu plus de 150 000
lignes de code C++ (principalement par B. Parisse),
plus de 1000 pages de documentation en francais
(principalement par R. De Graeve),
des interfaces en tant que moteur de calcul avec php, latex,
texmacs, java, javascript, python
(voir ci-dessus Giac), et des interfaces
pour utiliser les librairies C/C++ PARI, NTL, CoCoA, GSL, GMP, MPFR.
Les algorithmes de Giac sont particulièment
optimisés pour les opérations les plus
sollicitées (multiplication, division de polynomes, PGCD
a plusieurs variables sur Q, des extensions de Q,
bases de Groebner).
En 2007, Giac/Xcas a obtenu le 3ème prix des
Trophées du Libre
dans la catégorie logiciels scientifiques.
En 2013, Giac a été choisi comme moteur de
calcul formel par le logiciel bien connu Geogebra, ainsi
que par HP pour sa calculatrice HP Prime.
Pour télécharger Xcas, suivez ce lien.
Pour tester Xcas en ligne, suivez ce
lien.
-
calcul formel: arithmetique, integration, derivation, limites, ...
-
graphes de fonction, paramétrique, dans le plan et l'espace
-
tableur et statistiques: calcul approché et exact
-
geometrie interactive: dans le plan et l'espace
-
programmation: langage en francais ou syntaxe compatible Python
(versions >=1.4.9)
-
tortue logo
-
aide en ligne : documentation entièment en francais,
index des fonctions, syntaxe, exemples, recherche
par mot clef, complétion.
-
éditeur d'équation : affichage 2-d des expressions,
possibilité de travailler sur des sous-expressions.
-
unité physiques : opérations usuelles et conversion
Voir aussi la présentation des Trophées du Libre 2007:
version longue,
courte ou la
session Xcas.
|
Calcul formel:
Calcul en précision
arbitraire (entiers et flottants), arithmétique des
entiers et des polynomes (PGCD, Bézout, factorisation, ...),
simplification (fractions rationnelles, fonctions trigonométriques,...),
résolution d'équations, dérivation,
intégration (fraction rationnelle, méthodes
heuristiques, algorithme de Risch pour les fonctions transcendantes),
décomposition en éléments
simples de fractions rationnelles, limites, développement de
Taylor et asymptotiques, algèbre linéaire
(vecteurs, matrices,
réduction de Gauss, vecteurs et valeurs propres exactes et
approchées)...
|
|
Géométrie 2-d:
Points, segments,
droites, plans, triangles, quadrilatères, polygones, cercles, coniques,
courbes paramétrées et polaires,
intersections, tangentes, paramètres,
angles, affixes, ...
Géométrie interactive
Toutes les instructions de tracé sont programmables.
Les calculs peuvent etre faits de manière exacte en utilisant
le système de calcul formel, ce qui permet de faire des preuves
(de géométrie analytique).
|
|
Géométrie et graphes 3-d:
Points, segments,
droites, plans, triangles, quadrilatères, polygones, cercles, coniques,
sphères, cones, cubes, prismes,
courbes paramétrées et polaires, surfaces,
intersections, tangentes, paramètres,
angles, affixes, ...
Géométrie interactive.
Toutes les instructions de tracé sont programmables.
Les calculs peuvent etre faits de manière exacte en utilisant
le système de calcul formel, ce qui permet de faire des preuves
(de géométrie analytique).
|
|
Tableur:
références absolues et relatives,
calcul exact ou approché (les cellules peuvent etre des entiers
en précision arbitraire, des noms de variables, des expressions, ...),
accès complet aux fonctions
de programmation, interface pour les statistiques 1-d et 2-d (moyenne,
écart type, histogramme, covariance, corrélation...)
|
|
Programmation:
fonctions, variables locales, tests, boucles. Syntaxe
au choix (en francais, compatible Python,
Maple, MuPAD ou TI89). Possibilité dans des
cas favorables de lire et d'exécuter
des programmes Python, Maple, MuPAD ou TI89. Editeur intégré
pour de petits programmes. Débogueur interactif.
|
|
Plusieurs fonctionnalités utilisées simultanément.
|
Giac
Il existe plusieurs interfaces utilisant Giac compilé en Javascript:
Xcas pour Firefox,
Tableaunoir Xcas,
Calculatrice CAS simple
Pour utiliser Giac dans vos propres projets Javascript, vous pouvez récupérer
le fichier giacjs.tar.gz ou utiliser la
commande
npm install "https://www-fourier.univ-grenoble-alpes.fr/~parisse/giacjs.tar.gz"
puis lire le fichier README.md
dans le répertoire node_modules/giacjs et vous inspirer des fichiers
simple.html et giacsimple.js.
Frédéric Han a développé une interface
Python pour giac,
giacpy
pour Windows, Mac OS et Linux. Elle permet d'accéder
à toutes les fonctionnalités et perfomances
de Giac/Xcas depuis le langage Python (version 2.7, 3.2 ou 3.3) :
un complément
indispensable pour les élèves de classes
préparatoires qui veulent faire du calcul formel
en utilisant le langage au programme.
-
Installation Windows : installez Python puis
ouvrez "Invite de commande"
depuis le menu Accessoires. Tapez les commandes
python.exe -mpip install --upgrade pip
python.exe -mpip install wheel
python.exe -mpip install giacpy
-
Installation Mac: installez Xcas pour Mac
ou voir le site de F. Han
- Installation Linux debian compatible:
sudo apt-get install python-giacpy
ou sudo apt-get install python3-giacpy.
Exemple de commandes: lancez l'interpreteur python puis tapez:
from giacpy import *
ifactor(2**128+1)
x=giac('x')
f=factor(x**10-1)
d=plot(sin(x))
d.qcas()
help("giacpy")
normal.help()
Exemple de programme Python utilisant giac et giacpy :
ocapy par Didier
Gosseau, une calculatrice RPN.
Les versions Linux, Mac et Windows de Xcas contiennent une version
texte giac, utilisable directement
ou dans une session
texmacs
(qu'on peut tester sans installer avec
livetexmacs),
ou dans une session
emacs en mode mupad
(lire les instructions de mupacs, utiliser giac --emacs
comme programme à lancer au lieu de mupad -E/-R ...).
Alternative pour le mode emacs:
telecharger mupacs.tgz
le desarchiver depuis cd / ; tar xvfz chemin_vers/mupacs.tgz
ajouter (load "/usr/local/share/emacs/site-lisp/mupacs.el")
dans ~/.emacs, puis faire Echap-x mupad-run et remplacer
mupad -E/-R ... par giac --emacs.
Giac est le moteur de calcul formel natif de la calculatrice HP Prime
ainsi que des applications émulant la calculatrice sur tablettes,
smartphones, etc.
Documentation
du CAS
écrite par Renée De Graeve.
Il existe plusieurs méthodes pour appeler giac
automatiquement depuis un document LaTeX et lui déléguer
certains calculs.
-
Compiling LaTeX to computer algebra enabled HTML5
explique comment on peut ajouter des commandes Xcas à
un document LaTeX pour le compiler en HTML+MathML avec un
bon rendu des formules mathématiques et la possibilité
pour le lecteur de modifier et d'exé:cuter les commandes
depuis son navigateur. On peut également obtenir un fichier
PDF avec les calculs (et graphes) faits à la compilation.
- Sous linux, le programme giac (ou icas) peut
"filtrer" des fichiers latex pour generer du code HTML5 et du PDF avec des
calculs et des graphiques effectués par le moteur de calcul formel de giac
(ceci est inspiré de pgiac de Jean-Michel Sarlat décrit ci-dessous).
Il faut avoir installé hevea et pdflatex. Il suffit alors de taper dans
un terminal
giac nom_fichier
au lieu de pdflatex nom_fichier
(mettre l'extension .tex en cas de conflit de nom de fichier).
giac filtre les calculs, les effectue, cree des EPS des graphiques 2d,
ensuite giac appelle hevea -fix pour generer du HTML5
(à consulter depuis Firefox pour des performances optimales) et pdflatex
pour générer le PDF.
Les calculs se placent dans un fichier .tex normal où on a mis
(juste apres \begin{document}) \begin{giacjsonline}
et (juste avant \end{document})
\end{giacjsonline}.
Pour faire un calcul ou un graphe on utilise une commande du type
\giacinputbigmath{factor(x^4-1)} ou \giacinput{plot(sin(x))}.
Le lecteur pourra modifier et/ou exécuter la commande dans son navigateur
compatible (Firefox recommandé).
Voir le fichier
testfr.tex
pour des exemples types de commandes ou
methnum.tex
pour une utilisation en vraie grandeur.
- professor.sty
est une collection de fichiers de style pour créer
automatiquement des tableaux de variations, des statistiques, etc.
dans vos documents LaTeX. Par Denis Le Fur et Guillaume Connan
(contient le fameux
tablor.sty
de Guillaume Connan). Utilisable depuis texmacs via les plugins
professor et
tablor
par E. Corcelle.
- le script Perl
pgiac
de J.M. Sarlat permet
de créer des sources .w contenant des commandes
giac (les lignes commencant par .g et les
sections commencant par .g: et finissant par
.end), transformés après calculs en fichiers
.tex par la commande pgiac nom_fichier.w. Il suffit
alors de le compiler avec sa distribution LaTeX
préférée,
cf. le site
Syracuse.
- voir aussi les exemples de
source LaTeX utilisant giac pour les calculs
de G. Connan,
de
Yves Delhaye
(cf. aussi son générateur d'interrogations),
et d'
Alexandre
Boisseau
-
Fiches Xcas, l'essentiel pour
démarrer
-
Tutoriel xcas (R. De Graeve, B. Parisse, B.Ycart) au format
PDF ,
TeX
-
Interface xcas (R. De Graeve) au format
PDF
-
Présentation des possibilités de Xcas
avec des exercices corrigés
par Renée De Graeve.
-
Calcul formel par Renée De Graeve au format
PDF ,
LaTeX
-
Programmation par Renée De Graeve au format
PDF ,
LaTeX
-
Geometrie par Renée De Graeve au format
PDF ,
LaTeX
-
Simulation
par Renée De Graeve,
PDF ,
LaTeX ,
-
Tortue logo
par Renée De Graeve, guide de l'utilisateur
PDF et
LaTeX , exemples d'activités à l'école
PDF.
-
Exercices
par Renée De Graeve,
PDF et
LaTeX
-
Amusements
par Renée De Graeve,
PDF et
LaTeX
-
Puzzle de Dudeney,
par Renée De Graeve, source.
-
Xcas et les mathématiques de troisième
par Renée De Graeve,
-
Algorithmes
par Bernard Parisse,
PDF ,
LaTeX
-
Toute la documentation HTML en une
archive
Si vous souhaitez citer Giac/Xcas, vous pouvez y faire référence
de la manière suivante
Giac/Xcas,
Bernard Parisse et Renée De Graeve, version 1.2.3 (2017),
http://www-fourier.univ-grenoble-alpes.fr/~parisse/giac_fr.html
-
Guide du calcul avec les logiciels libres
XCAS, Scilab, Bc, Gp, GnuPlot, Maxima, MuPAD... , par G. Connan et
S. Grognet (Dunod ed.)
-
Initiation à l'algorithmique et à
la programmation pour le lycée
(Texas & Casio-Algobox & Xcas), par Luc Ponsonnet (ellipses)
- lycée Hachette:
2nde,
1re S
- lycée Bordas
1ere S
- lycée Nathan
2nde
- lycée Didier
math'x
- lycée Hatier
2nde,
1ere S
-
Mathématiques pour le DUT Génie Biologique Cours et Exercices Corrigés, par Cedric Noel, 2015, ellipses.
-
Bases de mathématiques pour la géologie et la géographie,
Cours et Exercices corrigés, par Sandrine Fleurant et Cyril Fleurant, 2016, Dunod.
- Geogebra: dans la
vue CAS
- Facilimaths
Exercices en lignes (niveau lycée),
propose aussi une extension PHP pour Giac.
Par Jean-Pierre Branchard.
- Tablor
par Guillaume Connan, un programme générant
automatiquement des tableaux de variations LaTeX, les calculs
sont effectués;s par Giac, cf.
le mode
d'emploi.
En combinant tablor avec pgiac et LaTeX,
on simplifie la rédaction de corrigés, comme sur cet exemple
de G. Connan:
PDF,
LaTeX.
-
Kruptor:
Kruptor est un paquetage de procédures écrites en xcas dans le style
Maple, qui permet de programmer facilement des démonstrations des
fonctionnements des systèmes cryptographiques. Un certain nombre
d'exemples sont fournis dans le paquetage.
Pour télécharger Xcas, suivez ce lien.
N.B.: Les captures d'écran de Xcas de cette page sont fournies
aux conditions de la GFDL (Gnu Free Documentation Licence).