27 connectés 3741 membres
Recherche :
Historique des modifications de ce cours:
Dernière version du 23.05.2008 03h40
1 Présentation 1.1 Téléchargement 2 Paramétrage de base 3 Calculs élémentaires 3.1 Arithmétique 4 Manipulation d'expressions algébriques ou numériques 5 Sommations 6 Expressions algébriques 7 Equations algébriques 8 Trigonométrie et nombres complexes 9 Analyse des fonctions 10 Equations différentielles 11 Algèbre linéaire
Xcas est l'interface graphique du logiciel de mathématiques formelles GIAC. GIAC est un logiciel de mathématiques formelles, et même plus, puisqu'il fait fonction de tableur, mais d'un tableur qui manipulerait non seulement des nombres décimaux, mais aussi des figures de géométrie et bien d'autres choses ! Il possède des fonctions spécifiques, par exemple pédagogiques, pour le lycéen et jusqu'au professeur candidat à l'Agrégation, ou pour faire de la physique, etc. GIAC est produit par une équipe universitaire de Grenoble. Nous ne considérerons que la fonction de logiciel de mathématiques formelles, pour laquelle GIAC est l'équivalent de Maple ou de Mathematica, qui eux sont payants et onéreux. Xcas est l'interface graphique de GIAC.
Pour le télécharger, aller à l'adresse http://www-fourier.ujf-grenoble.fr/…/giac_fr.html et télécharger l'installateur (Xcasinst.exe). Ensuite, l'installer normalement sur l'ordinateur.
1. Choisir Cfg → Mode (syntax) → Xcas. Il existe des modes Maple, MuPAD, etc., mais c'est imprécis. On n'obtient pas exactement la syntaxe de Maple. Aussi conseillons-nous de choisir le mode natif, où l'on a les meilleures garanties. 2. Choisir ou vérifier qu'on a bien Cfg → Cas configuration, et Integer basis 10 (numération à base décimale) coché : radian coché : sqrt (on peut cocher d'autres cases, mais ne rien dé-cocher) 3. Cfg → General configuration → choisir "calcul formel" Abordons à présent la prise en mains de Xcas :
1+3 <entrée> donne 4 3*4 <entrée> donne 12. Nous omettrons à partir d'ici la mention de <entrée>. 4/5 donne , mais suivi de evalf(ans()), donne 0,8. On peut aussi taper 4./5 ce qui donne 0.8 (en effet, 4. est un nombre en virgule flottante ; GIAC répond par un résultat en virgule flottante), ou evalf(4/5) ce qui donne 0.8 sqrt(2) donne , mais evalf(sqrt(2)) donne 1.414..., ou sqrt(2.) donne 1.414... 5^(1/2) donne , mais 5.^(1/2) donne 2.236... 5^(1/3) donne (soit ), mais 5.^(1/3) donne 1.7099... sin(pi/6) donne , et à l'inverse arcsin(1/2) donne (soit ) ln(e) donne 1 ln(10) donne , mais ln(10.) donne 2.30258... exp(1) donne e donne , mais exp(1.) donne 2,71828... pi donne evalf(pi) donne 3.14159265...
ifactor(2001) donne 3.23.29 (décompose en facteurs premiers) irem(a,b) donne le quotient de la division euclidienne de a par b iquo(a,b) donne le quotient de la division euclidienne de a par b iquorem(a,b) donne (q,r) résultat de la division euclidienne de a par b isprime(n) dit si n est premier (true) ou non (false) nextprime(n) donne le prochain nombre premier après n prevprime(n) donne le nombre premier précédant n ithprime(n) donne le nombre premier iegcd(a,b) donne l'identité de Bézout pour a et b ; par exemple iegcd(48,30) donne [2,-3,6], ce qui veut dire comb(n,p) donne binomial(n,p) donne la même chose que comb(n,p) perm(n,p) donne rand(n) donne un entier aléatoire tel que rand() donne un entier aléatoire tel que (et pour les ordinateurs 64 bits !) propfac fait apparaître la partie entière d'une fraction : propfac(234/71) donne root(n,a) donne , et root(n,a.) donne une valeur en virgule flottante gamma(n) donne la fonction Gamma d'Euler : beta(a,b) donne la fonction Beta d'Euler : zeta(x) donne la fonction Zeta de Riemann : signature([3,4,5,2,0,1]) donne -1 (signature de la permutation) perminv([1,2,0]) donne l'inverse de la permutation : [2,0,1]
expand[(x-2)*(x-3)] donne (attention, ce sont des parenthèses, pas des crochets) factor(x^2-x-6) donne (2 + x)(-3 + x)
sum(x,x,1,n) donne , soit après factorisation : . Attention ! Ne pas taper sum(i,i,1,n) car i est réservé (unité imaginaire) sum(x^2,x,1,n) donne , soit après factorisation :
canonical_form(ax^2+bx+c) donne la forme canonique simplify(expr) simplifie une expression, en tenant compte des identités trigonométriques, par exemple. subst(expr(a),a=2) par exemple, substitue 2 à a dans l'expression
solve(x^2-4=0) donne [2 -2] solve(x^2+a=0) donne solve(exp(x)=2) donne [ln(2)] Système d'équations solve([x+y=10,x-y=2],[x,y]) donne [6 4] zeros(expr) donne les zéros (ou racines) d'une expression cZeros(expr) donne les zéros complexes d'une expression
convert(cos(x),exp) donne , c'est-à-dire convert(exp(i*x),trig) donne mais assume(x,real) ; convert(exp(i*x),trig) donne norm(z) donne abs(z) donne la même chose. conj(z) donne evalc(z) donne z sous forme algébrique arg(z) donne l'argument de z cFactor factorise un polynôme en facteurs complexes : cFactor(x^2+1) donne (-i+x)(i+x)
f@g donne : (f@g)(x) donne f@@3 donne unapply(expr) transforme une expression p(x) en une fonction f(x):=x^2*sin(x) définit la fonction On peut aussi écrire f:x→x^2*sin(x) diff(f(x)) donne f'(x) int(f(x)) donne (primitive) int(f(x),x=a..b) donne arcLen donne la longueur d'un arc de courbe : arcLen(x^2,x,0,1) donne la longueur de larc d'équation avec fMax(expr,x) donne le maximum d'une expression fMin(expr,x) donne le minimum d'une expression diff(expr,[x,y,z]) donne le triplet diff(expr,x,y) donne diff(expr,x,y,y) donne
desolve(y'+2*y=0) donne , ce qui signifie desolve(y'-3*y=sin(x)) donne ce qui n'est certes pas très simplifié, et doit s'interpréter comme Dans la commande, on n'a même pas besoin de déclarer l'inconnue, y. Pour la dérivée seconde, taper deux fois "prime" : desolve(y''+4*y=0) donne bien , mais avec complexes.
donne det(M) donne -2 (c'est le déterminant) M^{-1} donne (inverse de M) charpoly(M,x) donne (x-1-4)x-2, soit , qui est le polynôme caractéristique de M. eigenvals(M) donne les valeurs propres de M. eigenvects(M) donne les vecteurs propres correspondants. matrix(2,3,(j,k)→j+k) donne , matrice à 2 lignes et 3 colonne dont les éléments sont éléments des indices. v:=([a,b,c]) définit le vecteur u*v donne le produit scalaire des deux vecteurs en base orthonormale (xx'+yy'...) cross(u,v) donne le produit vectoriel de u et v det(u,v,w) donne le déterminant de trois vecteurs de l'espace matrix([u,v,w]) donne transpose(M) transpose la matrice M concat(u,v) donne stack(u,v) donne si norm(M) donne , soit Pour un vecteur, on a aussi norm(u) donne
Dernière mise à jour: le 23.05.2008 à 04:40 Licence: Libre de partager, modifier - Devoir de citer la source - Pas d'utilisation commerciale Daskoo.org, partage de cours