Tapez votre calcul ou programme dans la ligne de commande en bas de la page
(attention, tapez 1.2 pour 1 virgule 2).
Cliquez sur l'icone de Xcas ou le bouton
Prog pour afficher des assistants
mathématiques ou algorithmiques, ou sur
123 pour le clavier scientifique.
Validez par la touche Entrée ou le bouton ✅ en vert.
Pour obtenir de l'aide sur une commande, tapez le début de son nom
puis cliquez sur le bouton ?.
Pour trouver les noms des commandes, cliquez sur un des thèmes
ci-dessous, ou consultez le
guide de Xcas
Vous pouvez échanger des sessions de calculs Xcas entre
plusieurs personnes par email. Renseignez une fois pour toutes
les champs e-mail de la
configuration (bouton Réglages en haut à gauche)
et validez.
Vous pouvez alors envoyer votre session à votre
correspondant en cliquant
sur le lien Mail, modifiez le destinataire si
nécessaire. Le destinataire
clique sur le lien du mail ce qui ouvrira un clone de votre
session dans son navigateur. Il peut alors modifier ou corriger
votre session, et si il clique sur le lien Mail, il vous
renvoie votre session avec les corrections.
Lorsqu'une session est envoyée par mail, le nom de la
session chez le destinataire est modifié par ajout
préfixé de l'adresse e-mail de l'envoyeur, sauf si
le nom de session contient @. Si le nom de session commence par @,
le caractère @ est supprimé.
Exemple: un enseignant envoie à ses élèves
une session énoncé. Il choisit un nom de session commencant
par @, par exemple @exercice, il crée
la session puis il clique sur le lien Mail
et met comme destinataire l'alias mail de la classe.
Les élèves font le travail et le renvoient en
cliquant sur le lien Mail, qui contient automatiquement
l'adresse mail de l'enseignant.
Le nom de session devient alors
mail_eleve@fournisseur@exercice ce qui permet à
l'enseignant de savoir qui il corrige.
L'enseignant corrige la session et la renvoie, le nom de session
reste inchangé.
Vous pouvez optionnellement installer
Xcas sur votre appareil, ce qui permet de l'utiliser
en mode avion.
Pour installer Xcas, téléchargez
xcashtml.zip, dézippez-le (par exemple avec Androzip sur Android),
cherchez le fichier xcasfr.html (sur Android depuis
ici) et ouvrez-le avec votre
navigateur.
Vous pouvez créer un raccourci sur votre écran
d'accueil depuis le menu de votre navigateur.
Voici quelques exemples de sessions illustrant des concepts
mathématiques ou algorithmiques au lycée.
Variables,
types, affectation, test, boucle, fonction, syntaxe
Xcas ou
Python
Seconde: tortue.
Cliquez sur le bouton pour voir des exemples.
Bases de Groebner
cyclic6.
Pour des calculs plus intensifs, installez Firefox version ≥ 58
et inspirez-vous de
cyclic7 modulaire.
Pour des calculs vraiment intensifs, utilisez la version native de Xcas.
Produit, quotient de polynômes à plusieurs variables
(pour navigateur compatible avec web-assembly, par exemple Firefox ≥ 58)
benchmark de Fateman n=20
Fractale de Newton ou bassins d'attraction des racines d'un polynome
Xcas,
Python
Cette feuille de calcul est composée du haut vers le bas de:
Un panel de boutons permettant de restaurer/sauvegarder
une session, et des aides à la saisie de commandes
(Xcas/math, programmation, clavier scientifique, documentation) .
Au lancement de Xcas, le panel est
réduit à insertion d'une session, consultation des
manuels, configuration et restauration de la session
précédente.
Dès que vous avez validé une commande, il apparait
un lien Clone (respectivement local)
qui permet de cloner une session existante
(respectivement localement).
A utiliser si le noyau de calcul formel a crashé ou
pour copier-coller dans une page web, ou pour exécuter
dans Xcas natif.
un lien Mail qui permet de partager
votre session par e-mail.
une zone d'aide, qui contient des courtes description des
commandes dont vous avez demandé la syntaxe. Vous pouvez
effacer l'aide avec le bouton d'effacement à droite du champ de recherche.
un historique qui contient 0 ou plusieurs
niveaux (0 au début). Un niveau est une paire
ligne de commande (en noir)/résultats (en
bleu), les boutons ↑ et ↓ permettent de déplacer un niveau
dans l'historique. Vous pouvez modifier une ligne
de commande de l'historique et valider en cliquant sur le bouton ✅
ou sur Entree en début de champ. Vous
pouvez placer un niveau dans la corbeille avec le bouton
d'effacement à droite du niveau. Pour le restaurer,
cliquez sur le bouton Restaure, pour l'effacer
définitivement cliquez sur le bouton Vide. Le lien +
à droite du bouton Vide permet d'ouvrir un nouvel onglet
sur une session vide.
une ligne de commande, on y tape des commandes
ou des programmes Xcas, et on
valide en cliquant sur le bouton ✅ ou en tapant Entree. Pour passer
à la ligne dans un programme, tapez Shift-Entree au clavier
ou utilisez le bouton \n.
Par exemple, tapez un calcul simple comme 1/2+1/3
ou sin(pi/4) ou sin(pi/4.0).
Pour vous aider à remplir la ligne de commande,
vous pouvez cliquer sur le bouton 123 qui fait apparaitre
le clavier scientifique et sur l'icone de Xcas
qui contient des commandes
fréquemment utiliées et des assistants
(déplacez la souris près des boutons pour
une description de leur action).
Si vous connaissez le nom d'une commande,
vous pouvez taper (le début) du nom d'une commande
(par exemple factor) puis
la touche
ou cliquer sur le bouton
pour obtenir une
aide courte sur la commande (si elle
est complète) ou des suggestions de noms de
commande (sinon).
Par exemple, cliquer sur le bouton math puis
reecr. puis
factor puis tapez sur ?, observez l'aide
en haut, cliquez sur un des exemples ou completez avec
x^4-1 puis tapez Entree.
Sur mobile, vous pouvez
sélectionner du texte en laissant le doigt appuyé
sur un mot, puis taper sur l'icone avec des ciseaux (pour couper) ou
avec deux feuilles (pour copier), pour coller le presse-papier,
laisser le doigt appuyé puis taper sur l'icone avec une
feuille. Vous pouvez aussi appuyer sur les boutons beg
et end pour marquer le début et la fin de la
sélection, puis optionnellement sur del pour
effacer, puis sur cp pour coller ce que vous aviez
sélectionné.
Vous pouvez entrer du texte commentant votre
session
en tapant une ligne de commande
commencant par // ou en cliquant sur le bouton
math puis texte. Vous pouvez utiliser des commandes de
balisage HTML dans un commentaire. Lorsque vous éditez un
commentaire, des boutons facilitent la saisie des commandes HTML pour
créer un titre, ou écrire en gras ou italique ou fonte
fixe. Vous pouvez aussi taper des mathématiques entre deux
signes dollar ($), il faut saisir un morceau de ligne de commande
valide, ce morceau de ligne de commande sera interprété
par Xcas sans etre évalué puis transformé en
MathML pour affichage 2d, par exemple $x[n+1]^2$ affichera x indice
n+1 exposant 2, $A=[[1,2],[3,4]]$ affichera une matrice (sans donner
de valeur à A), $integrate(sin(x),x,0,pi)$ affichera
l'intégrale de sinus x entre 0 et pi sans la calculer. Les
symboles des ensembles tels que ℤ,ℕ s'obtiennent par $ZZ$, $NN$.
une console qui affiche des messages du CAS :
erreurs de syntaxe mais aussi lors
d'un calcul en mode pas-à-pas, par exemple d'une
dérivée.
La console n'est pas visible si elle est vide.
Vous pouvez effacer la console ou ajuster sa taille verticale.
une zone affichant des graphes 3d
lorsqu'on exécute une commande
ayant une sortie graphique 3d. Cette zone n'est pas visible s'il n'y
a pas de graphique 3d.
A tout moment, vous pouvez sauvegarder l'historique,
avec le nom de session affiché à droite du bouton
Sauve
(par défaut session).
Une session sauvegardée
s'ouvre ensuite avec le bouton Charger.
Sur mobile, les sauvegardes sont faites dans localStorage.
Vous pouvez aussi exporter la feuille de calcul (sauf
sur mobile), l'export occupe plus de place mais
permet de publier le fichier HTML comme une page autonome.
Vous pouvez sauvegarder les graphes 2d au format SVG avec le bouton
save à droite du graphe. Le fichier SVG créé
est au format 1.2 (il utilise la balise
vector-effect="non-scaling-stroke" qui n'est pas compris
par tous les visualisateurs ou convertisseurs).
Sous Firefox, pour pouvoir
choisir l'emplacement de sauvegarde et écraser
une version antérieure : cocher Toujours demander...
dans Préférences,
Général, Téléchargements.
Vous pouvez ouvrir (partiellement) dans Xcas pour Firefox
une session existante Xcas natif en la clonant
(menu Fich, Clone du programme Xcas, ou en ligne de commande
xcas --online nom_fichier.xws)
Notez que Chrome (et plus généralement
le navigateur installé par défaut sur votre appareil)
est beaucoup plus lent que Firefox pour
faire les calculs (5 fois plus lent environ), en particulier le
premier calcul dure une bonne dizaine de secondes. De plus, Chrome
n'a pas de support natif pour afficher les formules en 2d en mathml,
il faut alors charger MathJax ce qui nécessite
un accès réseau.
Il est donc recommendé de télécharger
Firefox et d'exécuter Xcas depuis Firefox
Manuels de Xcas
La version "disque dur" est accessible en local sous Linux si vous avez
installé giac, sinon sélectionnez la version "Internet".
Xcasfr.html est une interface javascript optimisée pour Firefox
du système de calcul formel
Giac/Xcas
compilé par emscripten (l'éditeur de
programme de cette interface
utilise CodeMirror).
Il n'a pas besoin de serveur, il s'exécute localement
(avec le moteur javascript de votre navigateur qui doit être récent,
mettez-le à jour pour avoir de bonnes performances, il faut
aussi avoir au moins 300M de RAM disponible)
à partir du code du CAS (13M) qui est téléchargé
une fois. Le prix à payer pour cette simplicité
est la vitesse, le code est au moins 2 fois plus lent, parfois
beaucoup plus (par exemple 8 fois plus lent pour un calcul intensif
de bases de Groebner).
La plupart du temps, cela n'est pas vraiment
genant, mais
si vous devez exécuter un gros calcul, il
vaut mieux installer
Xcas!
Giac/Xcas (c) 2018 B. Parisse, R. De Graeve, Institut Fourier, Université
de Grenoble, sous licence GPL3, pour une licence commerciale nous
contacter.
Sortie mathml et SVG (c) code principalement écrit par J.P. Branchard.
Commandes d'optimisation écrites par Luka Marohnić.
Il n'existe pas de manière universelle de simplifier une
expression, parfois il vaut mieux développer, parfois factoriser,
parfois linéariser, etc., il est donc important de connaitre
quelques commandes de réécriture, que l'on peut
retrouver depuis le menu Math, réécr.
L'appui sur le bouton math puis réecr. puis simpl
insère
la commande
,
tapez ensuite
l'expression que
vous voulez développer et simplifier.
,
,
sont des versions moins puissantes mais plus rapides que simplify
(normal ne recherche pas de relations entre fonctions
trigonométriques et exponentielles, ratnormal n'effectue
que des simplifications rationnelles, reorder réordonne
selon une liste de variables).
factorise sur R,
sur C
décompose en éléments simples sur R,
sur C.
développe les expressions trigonométriques,
exponentielles et logarithmes,
linérise les exponentielles,
linérise les expressions trigonométriques.
permet de substituer une ou des variables par une ou des valeurs
Conversions trigo: ,
,
,
,
Autres: ,
,
Pour créer un vecteur, tapez ses coordonnées
séparées par des virgules entre 2 crochets [].
produit
scalaire de deux vecteurs, produit
vectoriel en dimension 2 ou 3.
Pour créer une matrice, utilisez l'assistant matrix
du menu math. Vous pouvez définir les coefficients par
une formule en fonction de la ligne et de la colonne ou
élément par élément
(vous pouvez entrer plusieurs coefficients en les séparant par
un espace et passer à la ligne suivante avec Entree). Pour
une matrice aléatoire, utilisez l'assistant alea.
Les indices de lignes et colonnes commencent à 0 avec une
seule paire de [] et à 1 avec une double-paire
[[]], par
exemple
ou .
Vous pouvez utiliser +,-,* et pour
effectuer les opérations usuelles sur les matrices.
transposée, : transconjuguée,
identité
système linéaire,
:
pivot de Gauss,
: déterminant,
: inverse,
: décomposition LU et application à
,
polynome caractéristique ou
minimal,
vecteurs et valeurs propres.
Factorisations
,
,
,
Normes
,
,
:
de matrice subordonnée
Les commandes fréquentes se trouvent dans le menu Math, bouton arit.
Certaines commandes agissent indifféramment sur les entiers
et sur les polynômes, par exemple gcd ou lcm,
d'autres commandes ont deux versions, celle qui agit sur des entiers
a comme initiale i, par exemple irem est le reste
euclidien pour des entiers, et rem pour des polynômes.
,
PGCD et PPCM
,
,
:
reste et quotient de la division euclidienne sur les entiers
identité
de Bézout sur les entiers,
solutions
de au+bv=c,
test de pseudo-primalité,
prochain nombre premier,
factorisation d'entier, indicatrice d',
puissance
modulaire rapide.
,
,
:
reste et quotient de la division euclidienne sur les polynomes. La
variable par défaut est x, sinon l'indiquer en
3ème argument
identité
de Bézout sur les polynomes,
solutions
de au+bv=c,
valeur en
un point par Horner,
interpolation
polynomiale.
Pour travailler dans ℤ/nℤ, utiliser le signe mod, par
exemple x^3+5x-11 mod 17 est un polynome a coefficients dans ℤ/17ℤ.
Pour travailler sur un corps fini non premier, utiliser la
commande
Depuis le bouton math
l'assistant solve
vous guidera pour résoudre une équation ou un
système
polynomial en mode exact ou approché sur les réels ou
les complexes (fonctions
)
Pour résoudre une équation différentielle,
cliquez sur analyse du menu Math,
pour un
calcul exact,
approché, ou cliquez sur graphe puis
pour un graphe de solution approchée.
Pour calculer le terme général d'une suite
récurrente (ou d'un système), cliquez sur u_n
du menu Math (commande
).
Le math contient des assistants pour
définir une fonction (bouton fonct),
déterminer le tableau de variations d'une expression
(f(x)),
travailler avec des suites (u_n),
calculer une somme (∑), des limites (limit),
des dérivées (∂),
des primitives et valeurs d'intégrales (∫),
des développement limités (series).
Par exemple pour définir une fonction algébrique
f d'une variable, cliquer sur
fonct de math puis
mettre f comme nom de fonction,
x comme liste des arguments et sin(x^2) comme
valeur renvoyéee :
.
On peut ensuite calcule la valeur
de f ou de sa dérivée par
.
Une dérivée se calcule avec
ou '.
Une primitive d'une
expression se calcule avec , par
exemple ,
pour une intégrale entre deux bornes
.
Enfin et
permettent de calculer une limite ou un développement de
Taylor, par exemple
Utiliser l'assistant al&ecute;a de math pour
générer des nombres pseudo-aléatoires.
Lois continues:
,
,
,
,
,
,
,
,
.
Lois discrètes :
,
,
,
.
Les distributions cumulées s'obtiennent en rajoutant le
suffixe _cdf ou par la commande , et les
inverses avec le suffixe _icdf ou par la commande .
La commande
permet de représenter un histogramme.
La commande permet
de décomposer une matrice de transition.
Utiliser les assistants du bouton math pour
créer un graphe d'une fonction d'une ou deux variables
(plot, voir aussi f(x) pour avoir un tableau
de variations),
une courbe ou surface paramétrique (param), un champ de tangentes
pour une équation différentielle (field).
Exemples
affiche
le graphe 2d des fonctions sin(x) et x-x^3/6, alors que
affiche un graphe 3d avec un plan, vous pouvez changer de point de
vue à la souris.
Vous pouvez aussi utiliser de nombreuses instructions
géométriques:
,
,
,
,
,
,
,
,
,
,
, ...
Si vous n'avez jamais programmé, vous pouvez apprendre
à le faire avec la tortue, cliquez sur le tutoriel
Tortue.
Le bouton Prog affiche des assistants
pour créer les structures de programmation
(test, boucle, fonction). Pour passer à la ligne dans un
champ d'entrée déjà validé que vous
modifiez, tapez Entree. Dans
la ligne de commande en bas de page, il faut
taper simultanément sur Shift-Entree ou utiliser le
bouton \n.
Pour indenter, utilisez le bouton →|.
Le bouton debug
permet d'exécuter une fonction en mode pas à pas
pour la mettre au point.
Plusieurs syntaxes sont acceptées,
dont une syntaxe en francais très proche du langage
algorithmique et une syntaxe compatible avec Python.
Vous pouvez afficher un
, regarder les sessions exemples ou lire le
manuel de
programmation lycée.
Voici un programme calculant
la somme des carrés de 1 à x écrit en syntaxe Xcas
fonction f(x)
local y,s;
si x > 100000 alors retourne "Nombre trop grand"; fsi;
s:=0;
pour y de 1 jusque x faire
s:=s+y^2;
fpour
retourne s;
ffonction:;
En syntaxe compatible Python def f(x):
# local y,s
if x > 100000:
return "Nombre trop grand"
s=0
for y in range(x+1):
s=s+y**2
return s
La tortue est un module pour apprendre à programmer,
utilisable dès le primaire. Il s'agit d'un robot
qui se déplace selon des commandes avec un crayon
qui marque son passage, avec une couleur donnée.
Cliquez sur le bouton Prog puis Tortue à droite,
puis sur le bouton nouveau de la ligne du dessous
pour créer un dessin tortue.
Deux champs d'entrée
sont créés,
le second sert à
saisir les commandes de déplacement de la tortue, en-dessous
de la commande efface.
La barre de bouton à droite du bouton nouveauav rec td ...
permet de saisir facilement les commandes de déplacement, comme
avance (la tortue avance de 10 pas ou de la longueur
indiquée en paramètre), reculetourne_droite
(la tortue tourne à droite, par défaut de 90
degrés), etc.
Par exemple, si vous cliquez juste en-dessous de efface,
puis sur le bouton av puis sur le bouton tg puis
validez la ligne, la tortue se déplacera de 10 pixels vers
la gauche puis s'orientera vers le haut.
Le premier champ d'entrée sert à définir des
fonctions regroupant plusieurs instructions de déplacement,
il peut contenir des tests et des boucles. Vous pouvez vous aider
des assistants test, boucle et fonct
pour créer une nouvelle fonction.
Voici un exemple de construction
de carrés et polygones réguliers
Xcas,
Python, ou
Joyeux Xcas,
Joyeux Xcas (version Python)
Le manuel
tortue de Xcas explique ces commandes et contient de nombreux
exemples d'activités dès le primaire.