Giac

Giac
Giac

Xcas (se prononce /ikskas/) est un logiciel libre et open source de calcul formel pour

Microsoft Windows

Apple macOS

Linux et Unix

FreeBSD

Android

en ligne

Xcas est une interface de Giac, une bibliothèque C++ de calcul formel libre (licence GPL). Giac dispose d'un mode de compatibilité avec les logiciels comme Maple, Matlab, WolframAlpha , Python, Mathematica, MuPAD, Yacas, Qcas, WordMat (pour Microsoft Word), CPMP-Tools, ExpressionsinBar (64 bit app pour macOS), les calculatrices TI CE, TI-89, TI-92, Voyage 200 et TI-Nspire. On peut donc utiliser Giac/Xcas aussi bien comme un logiciel gratuit compatible avec Maple, pour développer des algorithmes de calcul formel, ou l'utiliser dans un autre logiciel…

Xcas pour Firefox est une version de Xcas utilisable sans installation depuis un navigateur Web.

Xcas est intégré au complément CmathOOoCAS qui permet d'effectuer du calcul formel dans le tableur Calc et dans le traitement de textes Writer de la suite bureautique OpenOffice.org. Il est développé par Bernard Parisse et l'université Joseph-Fourier de Grenoble.

Giac/Xcas est la partie calcul formel du logiciel GeoGebra.

Giac/Xcas est porté sur certaines calculatrices sous le nom de KhiCAS:

Casio Graph 35+eii et Casio Graph 90

HP Prime (dont Giac est le moteur de calcul)

NumWorks où il est utilisable en tant qu'application externe (pas en mode examen).

TI-Nspire CX et CX II (à condition d'être compatible avec le jailbreak Ndless) - il est utilisable en mode examen sur les TI Nspire CX, mais pas sur les CX II.

TI-83 Premium CE / TI-84 Plus CE (sous forme d'app tierce non officielle)

Capacités

Voici un bref aperçu de ce que Xcas est capable de faire :

calcul formel ;

géométrie dans le plan ;

géométrie dans l'espace ;

tableur ;

statistiques ;

graphiques ;

programmation.

Quelques exemples

Simulation de la chute d'un objet

On utilise les fonctions préprogrammées suivantes :

int() qui renvoie la primitive d'une fonction.

unapply() qui permet d'évaluer une expression selon un paramètre.

solve() qui permet de résoudre une équation.

plot() qui permet de créer et afficher un graphique.

string() qui permet de transformer un objet (exemple : nombre entier) en une chaine de caractères.

diff() Différenciation de la fonction.

split((x+1)*(y-2),[x,y]) = [x+1,y-2] Séparation des variables.

desolve() résoudre l'équation différentielle (voir l'illustration).

factor() Polynôme d'affacturage.

nPr() calculer les permutations.

nCr() calculer des combinaisons.

sqrt() racine carrée.

cross([1,2,3],[4,3,2]) = [-5,10,-5] calculer le produit croisé de deux vecteurs

mean([3,4,2]) = 3 calculer la moyenne

stddev([3,4,2]) = sqrt(2/3) calculer l'écart type

variance([3,4,2]) = 2/3 calculer la variance

det([1,2],[3,4]) = -2 calculer le déterminant d'une matrice

extrema(-2*cos(x)-cos(x)^2,x) = [0],[pi] calculer les extrema locaux d'une fonction

line(x=1) = la ligne verticale x=1 tracez une ligne verticale dans le système de coordonnées

Trouver plus de commandes ici : http://www-fourier.ujf-grenoble.fr/~parisse/giac/cascmd_en.pdf

Premier modèle : Une chute sans frottement
Première méthode : fonction qui retourne un nombre (la vitesse à l'impact)

On sait que la gravité terrestre nous fournit une accélération de 9,81 m s−2, donc il suffit de l'intégrer deux fois pour avoir la position.

À la ligne 6, on remplit L avec deux solutions : une négative et une positive. On ne prendra que la solution positive, qui se trouve être la deuxième (on utilisera l'indice 1, c'est-à-dire L[1] (L'indice 0 étant la première solution)).

Code utilisé :On a donc ici l'appel de la fonction :Qui renvoie :Qui est bien sûr la vitesse (en m s−1) que l'objet atteint au niveau du sol après une chute sans frottement d'une hauteur de 9 m.

Deuxième méthode : fonction qui retourne une phrase et un graphique

On garde la même structure que la fonction vitesse_chute_1_1, mais on ajoute une phrase et un graphique. On met un moins devant la vitesse et la position, car l'objet tombe vers le bas, qui est considéré négatif (l'altitude étant positive vers le haut).

Code utilisé :On a donc l'appel de la fonction :Qui renvoie :

Ainsi qu'un graphique :

Deuxième modèle : Une chute dans l'air avec frottement du type proportionnel (à la vitesse) :

F

f

→

=

−

k

v

→

{\displaystyle {\overrightarrow {F_{f}}}=-k{\overrightarrow {v}}}

Cette fois ci, on prend en compte la force de frottement

F

f

→

=

−

k

v

→

{\displaystyle {\overrightarrow {F_{f}}}=-k{\overrightarrow {v}}}

: les fonctions donnant la vitesse et la position ont été calculées manuellement, grâce au principe fondamental de la dynamique.

On trouve les fonctions (du temps) suivantes :

v

x

(

t

)

=

τ

g

(

e

−

t

τ

−

1

)

{\displaystyle v_{x}(t)=\tau g(e^{-{\frac {t}{\tau }}}-1)}

Avec

{

τ

=

m

k

v

(

0

)

=

0

{\displaystyle {\begin{cases}\tau ={\frac {m}{k}}\\v(0)=0\end{cases}}}

x

(

t

)

=

τ

2

g

(

1

−

e

−

t

τ

)

−

τ

g

t

{\displaystyle x(t)=\tau ^{2}g(1-e^{-{\frac {t}{\tau }}})-\tau gt}

Avec

{

τ

=

m

k

x

(

0

)

=

0

{\displaystyle {\begin{cases}\tau ={\frac {m}{k}}\\x(0)=0\end{cases}}}

NB : On prend

k

=

12.4

{\displaystyle k=12.4}

en supposant que

m

=

70

{\displaystyle m=70}

et que la vitesse terminale (vitesse maximale lors de la chute) de cette masses est de 200 km h−1.

De plus, on ne met pas de moins devant la vitesse et la position, car le signe a déjà été pris en compte dans la réalisation des formules.

Code utilisé :On a donc l'appel de la fonction :Qui renvoie :(Qui est juste présent pour vérifier que la fonction a été lue jusqu'au bout.)

Ainsi qu'un graphique :

Superposition des deux modèles

On constate que les deux graphiques (avec et sans frottement) sont effectivement différents ; l'accélération n'est pas constante dans le cas du frottement : la vitesse (rouge) tend à se stabiliser (pour devenir horizontale).

Notes et références

Liens externes

Site officiel

Page du projet sur Sourceforge et téléchargement

Xcas pour Firefox et navigateurs compatibles, pour utiliser Xcas dans votre navigateur web sur un ordinateur, une tablette ou un smartphone.

Installer Xcas avec Ubuntu

Xcas en ligne (pour tester Xcas sans l'installer)

Portail des logiciels libres Portail de l’informatique

La liste des mots commençant par Giac est la suivante :