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 environ 300M de RAM disponible)
à partir du code du CAS (12M) 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 le calcul de bases de
Groebner comme cyclic7).
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.
Session
précédente
ou
Tapez votre calcul dans la ligne de commande en bas de la page.
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 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 (ce qui peut servir si
le noyau de calcul formel a crashé ou pour copier-coller
vers un email ou une page web) et un lien E-mail qui permet de partager
votre session par e-mail.
La 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
(attention Entree ne valide pas mais ajoute un saut de ligne). Vous
pouvez placer un niveau dans la corbeille avec le bouton
d'effacement à droite du niveau (pour l'effacer
définitivement cliquer sur le bouton Vider de la Corbeille,
pour le restaurer cliquer sur le bouton Restaurer de la Corbeille).
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
(déplacez la souris près des boutons pour
une description de leur action) qui contient les commandes
fréquemment utiliées et des assistants.
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.
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.
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 et ne fonctionne qu'en local.
Il est donc recommendé de télécharger
Firefox et d'exécuter Xcas depuis Firefox
Optionnel : vous pouvez installer Xcas sur votre appareil,
dézippez
xcashtml.zip et
cherchez xcasfr.html, depuis ici (Android).
Utilisez le bouton menu puis sur simpl (commande
de simplification) ou
(commande de factorisation) puis tapez l'expression sur
laquelle appliquer la commande.
factoriser sur C
décomposition en éléments simples sur R,
sur C.
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,
,
,
:
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
Utilisez le bouton menu puis l'assistant solve
qui 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 récurrence cliquez sur rslv (commande
).
Le menu contient des assistants pour
définir une fonction, calculer des limites, développement
limités
(series), intégrales. Le bouton f(x)
calcule le tableau de variations d'une expression.
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.
Pour créer une matrice, utiliser l'assitant matrix
du menu. Ainsi
définit une matrice A ayant 2 lignes et 2 colonnes,
on donne les coefficients par lignes. Quelques instructions
(élément ligne 0 colonne 1),
(inverse),
(réduction sous forme échelonnée),
(résolution de système linéaire),
déterminant, matrice identité
ou
polynome caractéristique,
vecteurs et valeurs propres.
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:
,
,
,
,
,
,
,
,
,
,
, ...
Vous pouvez utiliser les assistants du menu
pour créer les structures de programmation
(fonction, test, boucle). Pour passer à la ligne,
tapez simultanément sur Shift-Entree ou utilisez le
bouton n du clavier scientifique 123 ou du
menu.
Plusieurs syntaxes sont acceptées,
dont une syntaxe en francais très proche du langage
algorithmique, par exemple voici un programme affichant les
carrés de 1 à x dans la console :
fonction f(x)
local y;
si x > 100 alors retourne "Nombre trop grand"; fsi;
pour y de 1 jusque x faire
afficher(y+"^2="+y^2);
fpour
ffonction:;
La commande
permet d'exécuter une fonction en mode pas à pas
pour la mettre au point.