0.1 Premier calcul en ligne

Transcription

0.1 Premier calcul en ligne
AES-Misashs- Deuxième Année
2010-2011
Présentation du logiciel Sage
Premier pas avec Sage
On peut télécharger gratuitement ( c’est un logiciel libre développé pour la recherche et
l’enseignement) sur le site : http ://www.sagemath.org sous Linux, Windows ou Mac os X.
On peut travailler en ligne ( dans une fenêtre de Firefox par exemple ) ou charger le logiciel.
0.1
Premier calcul en ligne
Quelques informations pratiques :
- Pour obtenir l’aide faire suivre la commande d’un point d’interrogation.
- # précède un commentaire et n’est pas évalué.
- Un point virgule sépare les différentes instructions.
Les premières instructions :
Sage utilise = pour l’affectation et ==, <=,>=, < et > pour les comparaisons : taper les
instructions suivantes et comprendre ce qui se passe.
sage : a = 5
sage : a
sage : 2 == 2
sage : 2 == 3
sage : 2 < 3
sage : a == 5
On écrit :
sage : y = 3; y = 3 ∗ y + 1; y = 3 ∗ y + 1; y.
Quel va être à votre avis le résultat ? Vérifier.
Les opérations élémentaires :
+ ∗ − /
Faire ces opérations avec des nombres entiers, des nombres décimaux, des fractions.
Calculer une puissance ( avec ** ).
Evaluer 32 ∗ 4 + 2/5.
Que donne l’opération // ? Et % ? Faire des essais sur des nombres entiers.
Tester l’égalité : 4 ∗ (10//4) + 10%4 == 10.
Tapez sqrt(2) , sqrt(2).n(digits = 10). Que constatez-vous
?
√
Essayer de même avec π (écrire pi) et e2 au lieu de 2.
Regardons un peu les types évalués par le logiciel.
sage : a = 5
sage : type(a)
sage : a = 5/3
sage : type(a)
sage : a =0 hello0
sage : type(a)
1
Pour comprendre un peu mieux la notion de variable :
sage : a, b = 10, 20; temp = a; a = b; b = temp; a, b;
Que pensez vous du résultat ? 0n peut écrire plus simplement ce qui suit.
sage : a, b = 10, 20; a = b; b = a; a, b;
0.2
Opérations algébriques élémentaires
Sage sait faire la plupart des calculs algébriques, il faut toutefois savoir le lui demander
et connaı̂tre le type de résultats que l’on attend.
En particulier la fonction solve :
sage : solve(x2 + 3 ∗ x + 2, x)
x est la variable par défaut de sage, les autres lettres utilisées doivent être déclarées comme
variables.
On a : sage : a, b, c = var(0 abc0 ); solve([a ∗ x2 + b ∗ x + c == 0], x). Que reconnaissez-vous ?
Et pour les systèmes :
sage : solve([x + y == 6, x − y == 4], x, y)
Que faut-il ajouter pour éviter le message d’erreur dans la commande précédente ?
Mais attention sage : solve(x3 − 2 ∗ x2 + 3, x).
Que se passe t il ? Pourquoi trois solutions ?
Il faudrait donc mieux demander sage : f actor(x3 − 2 ∗ x2 + 3, x).
Donc plus de souci on peut factoriser et même développer ( utiliser alors ”expand”au lieu
de ”factor”).
Faire des essais sur des exemples dont vous connaissez les résultats et d’autres plus difficiles.
0.3
Définitions des fonctions
On peut définir une fonction, par exemple la fonction ”carré”
sage : f (x) = x2 ; f .
Calculer l’image de plusieurs entiers, de fractions, d’une racine carrée.
x3 + 7x + 4
.
De même définir la fonction g(x) =
x−1
Calculer g(4), g( 13 ) et g(1).
On peut aussi calculer des limites (on écrit oo pour +∞), par exemple :
limit(g(x), x = 1) et limit(g(x), x = oo).
Faire d’autres essais avec des fonctions connues ( exponentielle, logarithme népérien, la
fonction inverse etc).
Que peut-on faire encore avec des fonctions ?
Nous allons souvent avoir besoin de les dériver. Sage sait le faire.
La fonction derivative (qui a pour alias diff) permet de dériver une fonction. Il faut encore
spécifier la variable par rapport à laquelle on veut dériver. Cela sera d’ailleurs essentiel par la
suite car nous aurons des fonctions à plusieurs variables.
Retrouver les dérivées de fonctions connues ou pas. Utiliser des fonctions polynômes, des
fractions rationnelles des logarithmes...
On peut reprendre quelques exercices de la feuille 1 et retrouver les résultats sur machine.
2