Session_Xcas
Keywords: xcas, firefox, navigateur, calcul, formel, en, ligne, programmation, algorithmique

pour deficients visuels, English version.
Bienvenue dans Xcas pour Firefox ou navigateur compatible (c) 2017, B. Parisse et R. De Graeve, Institut Fourier, Université de Grenoble.
Si Xcas ne fonctionne pas, effacez complètement le cache du navigateur et rechargez.
Consultez le
sous l'icone de Xcas.

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) 2017 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.

## Configuration

Chiffres: Autosimplification:
, , , ,
, ,
Historique par Sortie par
Taille maximale de l'assistant matrice ,
Documentation online

| # Session précédente ou
session

- Tapez votre calcul dans la ligne de commande en bas de la page (attention, tapez `1.2` pour 1 virgule 2). Vous pouvez utiliser le clavier scientifique (bouton `123` au-dessus de la ligne de commande) et les assistants du bouton `menu`. Validez avec Entrée ou le bouton `ok` en vert.
  Pour obtenir de l'aide, tapez un nom de commande puis le bouton `?`. Pour trouver une commande, cliquez sur un des thèmes ci-dessous, ou consultez le guide des commandes de Xcas
- Cette feuille de calcul est composée du haut vers le bas de:
  - un logo Xcas et un panel de boutons permettant de restaurer/sauvegarder une session et de gérer l'historique, la corbeille et les variables. 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 qui permet de cloner une session existante. 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 E-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.
  - un historique (vide au début). Les lignes de commande y apparaissent en noir, les résultats en bleu, les boutons ↑ et ↓ permettent de déplacer un niveau dans l'historique, le bouton bleu ~ permet d'avoir une valeur numérique du résultat. Vous pouvez modifier une ligne de commande de l'historique et valider en cliquant sur le bouton ok ou la touche Entree. Vous pouvez placer un niveau dans la corbeille avec le bouton d'effacement à droite du niveau (pour le restaurer, cliquer sur le bouton Restaure, pour l'effacer définitivement cliquer sur le bouton Vide).
  - une ligne de commande, on y tape des commandes ou des programmes Xcas, et on valide en cliquant sur le bouton ok ou en tapant Entree. Pour passer à la ligne dans un programme, tapez Shift-Entree au clavier ou utilisez le bouton `\n` du clavier scientifique.
    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 le bouton menu 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
    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 `menu` puis sur le bouton `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 un commentaire en tapant une ligne de commande commencant par `//` (vous pouvez utiliser des commandes de balisage HTML dans un commentaire).
  - 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. Les sauvegardes sont faite dans les cookies du navigateur avec un nom de cookie commencant par `xcas__`, vous pouvez les effacer depuis la gestion de la Vie privée de votre navigateur (attention, la sauvegarde ne fonctionne pas en utilisation locale avec Chrome sauf si Chrome est lancé avec l'option `--enable-file-cookies`). Vous pouvez aussi exporter la feuille de calcul (sauf sur smartphone), 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) une session existante Xcas 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
  Remarque : Vous pouvez revenir travailler sur cette page meme si vous n'avez pas de réseau disponible, car les ressources nécessaires sont automatiquement placéees dans le cache de votre navigateur. Vous pouvez optionnellement installer Xcas sur votre appareil, dézippez xcashtml.zip et cherchez `xcasfr.html`, depuis ici (Android).
- 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.
  - L'appui sur le bouton `menu` 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, utiliser l'assistant `matrix` du `menu`. 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).
  - élément de A ligne 0 colonne 1,
    transposée,
    identité
  - Utiliser `+,-,*` et
    pour les opérations usuelles sur les matrices.
  - 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
- Lorsqu'un doute est possible, les commandes agissant sur les entiers ont comme initiale `i` pour les distinguer des commandes agissant sur les polynomes.
  - ,
    ,
    : reste et quotient de la division euclidienne sur les entiers
  - PGCD,
    identité de Bézout sur les entiers,
    solutions de au+bv=c,
  - test de primalitè,
    factorisation d'entier, indicatrice d'
  - ,
    ,
    : reste et quotient de la division euclidienne sur les polynomes. La variable par défaut est `x`, sinon l'indiquer en 3ème argument.
  - PGCD,
    identité de Bézout sur les polynomes,
    solutions de au+bv=c,
  - Pour travailler dans ℤ/nℤ, utiliser le signe `%`, par exemple `x^3+5x-11 % 17` est un polynome a coefficients dans ℤ/17ℤ.
  - Pour travailler sur un corps fini non premier, utiliser la commande
- Depuis le bouton `menu`
  - 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 `deslv` (exact
    , numérique
    , voir aussi la section graphes).
  - Pour une ou des suites récurrentes cliquez sur `rslv` (commande
    ).
- Le `menu` 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` du `menu` 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 `rand` du `menu` 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 `menu` 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:
  ,
  ,
  ,
  ,
  ,
  ,
  ,
  ,
  ,
  ,
  , ...
- Cliquez sur le bouton `prg` juste au-dessus de la ligne de commande, ceci affiche des assistants pour créer les structures de programmation (test, boucle, fonction). Pour passer à la ligne, tapez simultanément sur Shift-Entree ou utilisez le bouton `\n` du clavier scientifique `123` ou du `prg`.
  Plusieurs syntaxes sont acceptées, dont une syntaxe en francais très proche du langage algorithmique, on renvoie vers ce manuel de programmation pour un tutoriel d'apprentissage du langage.
  Par exemple voici un programme calculant la somme des carrés de 1 à x
  `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:;`
  La commande
  permet d'exécuter une fonction en mode pas à pas pour la mettre au point.
  - Listes:
  - Ensembles:
  - Chaines:

Manuels de Xcas

- Algorithmes de calcul formel et numérique: PDF disque dur, Internet, HTML disque dur, Internet,
- Programmation : disque dur, Internet,
- Géométrie : disque dur, Internet,
- Simulation : disque dur, Internet,
- Exercices : disque dur, Internet,
- Amusement : disque dur, Internet,

ou
ou ou
Moyenne, Ecart-type, Quartiles, Histogramme, Boite a moustache,
Nuage de points reliés, Régression linéaire
Risque α=

- Adéquation data/data : Chi2 , Kolmogorov , ou Wilcoxon
- Adéquation data/loi : normal ou Student : μ= (σ= optionnel),
  H1 <, ≠, >
- Intervalle de confiance : data, proportion (n=>30, p=), μσ (μ=, σ= n=)

Matrice : par
(j,k)-> (indices de 0 à taille-1)
Lignes - , colonnes -
Générer par nombres entiers ou selon une loi.
Entiers entre 0 et n ou n et -n avec n=
Loi actuelle , paramètres optionnels
Choisir une autre loi
Choisir type de boucle
ou
pour
de
jusque
pas optionnel
tantque
Tests :
Résoudre
l'équation ou le système
d'inconnue(s)
Choisir entre
ou
Relation(s) de récurrence
Suite(s) inconnue(s) u(n)
Conditions initiales u(0)=1
u_(n+1)=f(u_n) avec f(x):= et u(0)=
Nombre de termes n= 10
Représentation graphique entre 0 et 2
Équation différentielle
Variable t, inconnue y
Conditions initiales optionnelles
si
alors
sinon (optionnel)
Tests :
Nouvelle fonction
nom de la fonction f
liste des arguments x
variables locales
valeur renvoyée
Création d'une séquence ou tableau de valeurs,
expression
variable
de
jusque
Pas optionnel
Courbe en polaire
expression
variable θ t
θmin
θmax
θstep
Développement limité
expression
variable x
en
ordre
Polynome polynom
Limite de :
expression
variable x
en
Direction optionnelle
Intégrale de
expression
variable x
de (optionnel)
à (optionnel)
Somme de
expression
variable j
de (optionnel)
à (optionnel)
Dérivée de
expression
variable x
Nombre de dérivées 1
Choisir entre étude de
ou de
Étude de fonction (dans la console) et tracé de
f( x) :=
xmin -4
xmax 4
xstep 0.0625
Option : diff
.
x1 (t):=
y1(t):=
tmin -4
tmax 4
tstep 0.0625
Choisir un tracé de
ou
Expression
variable x
xmin -4
xmax 4
xstep 0.0625
Expression
1ère variable x=-3..3
2ème variable y=-3..3
xstep 0.25
ystep 0.25
Choisir un tracé de
ou
paramétrique.
x(t)=
y(t)=
variablet
tmin -4
tmax 4
tstep 0.0625
x(u,v)=
y(u,v)=
z(u,v)=
1ère variable u=-3..3
2ème variable v=-3..3
ustep 0.25
vstep 0.25
f(x,y)=
Variable xx=-3..3
Variable yy=-3..3
xstep 0.25
ystep 0.25
niveaux=
Champ des tangentes pour une équation dy/dt=f(t,y) ou un système autonome 2-d d[x,y]/dt=f(x,y)
f=
Variable t (ou x)t=-3..3
Variable yy=-3..3
xstep 0.25
ystep 0.25
init=

# Console

Downloading...