La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Calcul numérique (avec Maple)

Présentations similaires


Présentation au sujet: "Calcul numérique (avec Maple)"— Transcription de la présentation:

1 Calcul numérique (avec Maple)
Maplesoft Maple version 9.5

2 Le logiciel de calcul formel Maple
Sources utilisées pour ce cours : Raphaël Giromini M. Chare (cours-tds années précédant 2006). José-Marconi Rodrigues (tps précédant 2006).

3 Emploi du temps Mardi : Vendredi : ~8 cours, ~12 tds, 10 tps;
Cours : 13h h00 Amphi1 TD : 17h h30 s.312 Vendredi : TP (gp1, MI) : 14h - 16h00 s.512 TP (gp2; PC) : 16h - 18h00 s.512 ~8 cours, ~12 tds, 10 tps; Examen sans documents : mardi 13 mars, 13h30-15h00 (après 5CM, 5tds, 5tps). (dernier TDs : 2 heures)

4 Modalités d’évaluation
Après chaque TP vous enverrez vos résultats à l’une des deux adresses suivantes (en fonction du groupe dans lequel vous êtes): Les tps sont notés; critères d’évaluation : qualité, commentaires, exécution correcte...

5 Préambule

6 Préambule Maple est un logiciel de calcul formel :
Après évaluation l’expression 2/6 est réduite et exprimée de manière formelle par 1/3 Maple permet d’aider à la résolution de problèmes mathématiques et numériques : grâce à des fonctions permettant de résoudre des équations typiques (dérivées, intégrales, algèbre linéaire…) et d’évaluer graphiquement. grâce à la possibilité de programmer (imposer une suite de commandes) .

7 Chapitre 1 : Premiers pas avec Maple

8 Environnement de travail Maple

9 Environnement de travail Maple

10 Quelques commandes de base
Il y a à la fin de chaque commande : Soit un point-virgule ; Soit deux points : Le fait de taper sur la touche [entrée] indique à Maple qu’il faut évaluer l’expression (ou exécuter la commande).

11 Quelques commandes de base

12 Quelques commandes de base
Remarque : Si l’on tape simultanément sur [shift]+[entrée] on retourne à la ligne sans évaluation.

13 Quelques commandes de base
Le caractère pourcent (%) permet de rappeler la valeur du dernier calcul effectué par la machine (par Maple). %% permet de rappeler 2 calculs en arrière, %%% permet de rappeler 3 calculs en arrière, ...

14 Exercice Quel est l’affichage obtenu après évaluation par Maple ?
Comment cette série de commandes a-t-elle été saisie ? Remarque : length est une fonction qui calcule le nombre de décimales d’un nombre.

15 Exercice Comment cette série de commandes a-t-elle été saisie ? On tape simultanément [shift]+[entrée] après chaque instruction

16 Quelques commandes de base
Les opérations arithmétiques simples : Addition Soustraction - Multiplication * Division / Puissance ^

17 Exercice Évaluer les expressions suivantes : 2a+1a; 3*a/b+2*a/b+a^0;
3*x^2+2*x^0=2; sin(x)^2+cos(x)^2; 3!+2*x^0; ln(exp(1)); a^2+2*a*b+b^2;

18 Exercice

19 Quelques commandes de base
Lorsqu’une fonction vous est inconnue ou lorsque vous ne savez pas comment l’utiliser vous pouvez appeler l’aide en ligne en tapant point d’interrogation suivi du nom de la fonction. Exemple : >?sin

20 Quelques commandes de base
Aide en ligne : >?sin

21 Menu d’aide en ligne Ou taper >?

22 Quelques commandes de base
Lorsque l’on souhaite commenter un programme (suite de commandes) on utilise le dièse suivi du commentaire : Exemple : … tout ce qui ce trouve après le # n’est pas évalué

23 Quelques commandes de base
L’affectation et la notion de variable L’affectation (attribution d’une valeur à une variable) se fait en utilisant le := … c’est votre premier programme

24 Quelques commandes de base
Ré-initialisation de l’environnement : >restart; Les variables précédemment affectées sont « dé-assignées ». Ré-initialisation d’une variable particulière : > x:=2: unassign(‘x’);

25 Exercice Évaluer le programme suivant : restart; x:=1: a:=1: b:=1:
2a+1a; 3*a/b+2*a/b+a^0; 3*x^2+2*x^0=2; sin(x)^2+cos(x)^2; 3!+2*x^0; ln(exp(1)); a^2+2*a*b+b^2;

26 Exercice

27 Quelques notions de programmation

28 La conditionnelle Expression booléenne Instructions
> restart; #a et b sont deux valeurs, par exemple #a := 3; et b := 5; if (a > b) then Max:=a else Max:=b end if; Max; Expression booléenne Instructions On appelle ceci une structure de contrôle

29 La conditionnelle Imbrication de conditionnelle : > #...
if (a > b) then m:=a elif (b > c) then m:=b else m:= c end if; m;

30 La conditionnelle La conditionnelle de manière générale :
if <conditional expression> then <statement sequence> | elif <conditional expression> then <statement sequence> | | else <statement sequence> | end if

31 La notion de séquence : Une autre façon de voir l’itération (for, while …)
L’évaluation d’une expression avec différentes valeurs d’un paramètre* peut être effectuée via la commande seq > seq(i^2, i=1..5); 1, 4, 9, 16, 25 > seq(sin(Pi*i/6), i=0..6); * les différentes valeurs du paramètre sont consécutives

32 Séquences particulières
La somme : > a:=Sum(i, i=1..10); b:=sum(i, i=1..10); evalf(a); Le produit : > a:=Product(i^2, i=1..10); b:=product(i^2, i=1..10);

33 La notion d’itération Une approche plus algorithmique de la séquence
La boucle « for » : Exemple : > s:=0: #Initialisation de s for n from 1 to 10 #Début de la boucle for do s:=s+n #Instruction répétée #C’est le corps de la boucle od: #Fin de boucle s; #Affichage de la valeur de s 55

34 La notion d’itération Une approche plus algorithmique de la séquence
La boucle « for » : Exemple : > s:=0: #Initialisation de s for n from 1 to 10 #Début de la boucle for do s:=s+n #Instruction répétée #C’est le corps de la boucle od: #Fin de boucle s; #Affichage de la valeur de s 55 Le caractère ‘ : ’ ne se retrouve pas partout.

35 La notion d’itération Une approche plus algorithmique de la séquence
La boucle « for » : Exemple : > s:=0: #Initialisation de s for n from 1 to 10 #Début de la boucle for do s:=s+n #Instruction répétée #C’est le corps de la boucle od: #Fin de boucle s; #Affichage de la valeur de s 55 L’instruction s:=s+n est exécutée (évaluée) pour n valant 1, puis 2, puis 3 … Une fois que l’instruction s:=s+n a été exécutée 10 fois, la variable s contient la valeur 55.

36 La notion d’itération Une approche plus algorithmique de la séquence
La boucle « for » : Exemple : > s:=0: #Initialisation de s for n from 1 to 10 #Début de la boucle for do s:=s+n #Instruction répétée #C’est le corps de la boucle od: #Fin de boucle s; #Affichage de la valeur de s Consigne de programmation : Aller à la ligne après chaque commande Indentez vos programmes (décalez le code sur la droite lors de l’ouverture d’une structure de contrôle telle que for, while, if …) Alignez les commentaires,

37 La notion d’itération Une approche plus algorithmique de la séquence
Répétition de plusieurs instructions : s:=0: #initialisation u:=0: for i from 1 to 5 #Début de la boucle for do s:=s+i^2: #Instruction répétée u:=u+s* #Instruction répétée od: s; u; 55 210

38 La notion d’itération Une approche plus algorithmique de la séquence
Incrémentation différente de 1 : N:=21; somme:=0: for i from 1 to N by 2 do somme:=somme+i: od: somme;

39 La notion d’itération Une approche plus algorithmique de la séquence
La boucle « while » : > restart; S:=NULL: # Initialisation de S n:=1: # Initialisation de n NBITER:=5: # Constante NBITER while n < NBITER # Boucle while do S:=S,sin(n*Pi/7): n:=n+1: od: # Fin de la boucle while S; Remarque : sin(4*Pi/7) = sin(3*Pi/7)

40 Quelques fonctions de base
Conversion d’une expression en une autre. Exemple d’un changement de base : >convert(9, binary); #Decimal vers binaire 1001 >convert(11, decimal, binary); #Binaire vers décimal 3 convert - convert an expression to a different form Calling Sequence convert(expr, form, arg3, ...) Parameters expr any expression form name arg3, (optional) other arguments

41 Quelques fonctions de base
Savoir si un nombre est premier ? >isprime(11); true Arrondi au premier entier inférieur : >floor(10.7); 10 Arrondi au premier entier supérieur >ceil(10.2); 11 Arrondi à l’entier le plus proche : >round(10.1);


Télécharger ppt "Calcul numérique (avec Maple)"

Présentations similaires


Annonces Google