Upload
trinhmien
View
229
Download
5
Embed Size (px)
Citation preview
Le calcul numérique : pourquoi et comment ?
Claude GomezDirecteur du consortium Scilab
16 juin 2009
Plan• Le calcul symbolique
• Le calcul numérique
• Le logiciel Scilab
• Scilab au lycée
Le calcul symbolique ou
calcul formel
Quelques logiciels de calcul symbolique
– Professionnels : Maple, Mathematica
– Parfois utilisé au lycée : Derive
– Gratuits : Maxima, Xcas, SAGE, …
Quelques exemples en Maple
Le calcul symbolique c’est super !
Trouver solution de ( ) 0f x =x
Résolution d’équations
Recherche de zéros de polynômes avec Maple
Mais dès le degré 5, pas de solution analytique générale
Résolution d’équations différentielles
Résolution avec Maple
Trouver solution de '( ) ( , ( ))y x f x y x=( )y x
– Là encore pas de solution analytique, même pour de simples équations différentielles
– La solution est donnée en fonction de fonctions spéciales elles-mêmes solutions d’équations différentielles !
– Sardines :
– Requins :
Résolution avec Maple
Système proie prédateur (Lotka Volterra)
( )x t( )y t
'( ) ( ) ( ) ( )'( ) ( ) ( ) ( )
x t a x t b x t y ty t d y t c y t x t
= −⎧⎨ = − +⎩
Le système :
Le système différentiel proie prédateur le plus simple :
Solution générale inutilisable : racine d’un polynôme avec une intégrale + fonction spéciale
Et si l’on met des conditions initiales et des valeurs aux paramètres, plus de solution !
Solution
– Utiliser des valeurs « approchées »
– Utiliser des algorithmes « approchés »
Qu’est-ce qu’une valeur « approchée » ?
Donc le calcul symbolique ne suffit pas
Le calcul numérique
La norme IEEE-754
Faire des calculs rapides
Utiliser des « mots machine »
Comment représenter les nombres dans ces « mots machine » ?
Nombre =
Nombre min =
Nombre max =
Précision = soit 16 chiffres max
Double précision = 2 X 32 bits
s = signe e = exposant m = mantisse
s e 1023( 1) 2 1.m−− × ×
3081,797... 10
3082,225... 10−
162,22... 10−
Définition d’un arrondi correct pour , , , ,+ − × ÷
Toutes les machines ont le même comportementnumérique pour l’arithmétique
Avantages
– Les fonctions élémentaires ne sont pas encore spécifiées– Restent les problèmes de précision
Inconvénients
Exemples en Scilab
-->sin(%pi)
ans =
1.224646799D-16
-->sin(%pi*10^10)
ans =
- 0.0000022393628
-->sin(%pi*10^15)
ans =
- 0.2362090532517
<= 10-16 équivaut ici à 0
<= ces puissances de πne sont pas assez précises
-->%eps%eps =
2.220446049D-16 -->format(20)-->1+%epsans =
1.00000000000000022 -->1+%eps/2ans =
1. -->(1+%eps/2+%eps/2)-
(1+%eps)ans =- 0.00000000000000022
<= précision minimale <= on affiche 20 chiffres
<= %eps/2 vaut 0 par rapport à 1
<= ((1+%eps/2)+%eps/2) vaut 1
Le numérique en précision arbitraire
Scilab
163 -262537412640768744eπExemple : calcul de
-->exp(%pi*sqrt(163))-262537412640768744ans =- 480.
Ce résultat est faux car le calcul de n’est pas fait avec assez de précision
163eπ
Maple
If faut faire un calcul avec 40 chiffres pour arriver à un résultat juste
Le calcul numérique en précision arbitraire est donc incontournable dans certains domaines :
• Résolution de systèmes d’équations polynomiales : robotique
Arithmétique d’intervalles, calcul certifié
Le logiciel Scilab
Les logiciels de calcul numérique
Avantages– Programmation facile– Algorithmes performants– Larges domaines d’application– Tracé de graphiques faciles
Ce sont ces logiciels qui sont utilisés par les ingénieurs, les universitaires, les chercheurs
– Matlab
– Scilab
:: commercial et chercommercial et cher
:: libre et gratuitlibre et gratuit
Caractéristiques importantes
– Pas de variables formelles
– Les objets de base sont les vecteurs et les matrices
– Tous les calculs sont numériques : ils suivent la norme IEEE-754
Le logiciel Scilab : qu’est-ce que c’est ?
• Fonctions mathématiques• Calcul matriciel, matrices creuses• Polynômes et fractions rationnelles• Simulation : systèmes d’équations différentielles• Commande classique et robuste, optimisation LMI• Optimisation différentiable et non différentiable
• Interpolation, approximation• Traitement du signal• Statistiques • Graphes et réseaux• Xcos : simulateur bloc diagramme pour les
systèmes dynamiques
Librairies de calcul : plus de 1700 fonctions
Utilisateur
Graphique 2D/3DAnimation
LangageInterpréteur
Aide en ligneÉditeur
Dernière version : Scilab 5.1.1 (avril 2009)
Statut de Scilab :Machines cibles :
– Gratuit– Windows 2000/XP/Vista
– Linux
– MacOSX
• Le nouveau consortium au sein de la fondation
– Un soutien fort de l’
– Un consortium de partenaires
– Participation à des projets collaboratifs et industriels
Le nouveau consortium Scilab
• Une structure adaptée
– Une équipe de R&D pérenne en fort développement et complètement dédiée au développement et à la promotion de scilab
0
5
10
15
20
25
2003 2004 2005 2006 2007 2008 2009
Nombre de personnes de l’équipe R&D
Le consortium Scilab aujourd’hui
Académiques Organismes publics
Industriels
Scilab au lycée
– La calculatrice
– Le tableur : Excel ou Calc
– Autres• Derive, Maple, Mathematica,…
Les outils de calcul actuels dans les lycées
Géométrie dynamique• Geoplan, Geospace, Geogebra…
Avantages
• C’est pas cher• Bien adapté aux programmes de lycées
La calculatrice
Tout le calcul numTout le calcul numéérique fait avec une calculatrice rique fait avec une calculatrice peut être fait peut être fait «« en mieuxen mieux »» avec Scilabavec Scilab
Inconvénients
• C’est cher car en général pas utilisée après le lycée• Pas toujours performant• Graphique peu lisible• Langage peu facile à manipuler
Un tableur doit être utilisé comme un tableur :
– Pour « voir » des valeurs évoluer en fonction de paramètres– Pour gérer une petite base de données
Le tableur : Excel ou Calc
Un tableur « n’est pas fait » pour faire :
– Du calcul numérique– De la programmation numérique => pas de « vrai langage »
Tout le calcul numTout le calcul numéérique fait avec un tableur peut rique fait avec un tableur peut être fait être fait «« en mieuxen mieux »» avec Scilabavec Scilab
Scilab utilisé en classes de BCPSTScilab utilisé dans les classes de STS CIRA
Utilisation de Scilab dans le secondaire en mathématiques
• Expérimentation en 2007 dans l’académie de Lille
• Dans le cadre de l’épreuve pratique de mathématiques du bac S
– Sujets et solutions sur www.scilab.org/lycee
Formations Scilab depuis cette annFormations Scilab depuis cette annéée dans le dans l’’acadacadéémie mie de Versaillesde Versailles
Avantages de Scilab
Logiciel gratuit : peut être installé partout– Par les enseignants et les élèves au lycée– Par les enseignants et les élèves à la maison
Logiciel puissant :– Super calculateur graphique simple et rapide– Programmation facile
Logiciel utilisé dans la vie professionnelle– À l’université et dans les écoles d’ingénieur, dans la
recherche, dans les entreprises
Réforme des lycées ? instaurer une instaurer une continuitcontinuitéé entre le lycentre le lycéée et le et l’’universituniversitéé
–Fonction : notions de variablesfunction y=f(x);
y=sin(x^2)+x;endfunction
Les structures de base pour la programmation
–Test :if x>10 then
y=x;else
y=x^2;end
–Boucle :for i=1:10
x(i)=i^2;end
Encadrement d’une intégrale :• Valeur approchée par la somme des aires des rectangles
Ajustement affine interactif :• Trouver la droite de régression de y en x par la méthode des
moindres carrés pour une série statistique et calcul de la somme des carrés des distances
Une version Scilab pour les lycées
Des activités à montrer aux élèves
Le curseur qui donne la pente et l’erreur correspondante
La courbe de régression correspondante :
– Analyse : ln
– Arithmétique :• pair, impair• quotient, reste• pgcd, ppcm• premier, liste_premiers, numero_premiers,
factorise, diviseurs
– Graphique :• orthornorme, quadrillage, graduations• cliquer
Les fonctions Scilab adaptées au lycée
-->l=liste_premiers(1000000);-->pgcd(1931911,4288507)ans =
541. -->factorise(10291181709984)ans =
2. 2. 2. 2. 2. 3. 7. 541. 3571. 7927. -->diviseurs(12456)ans =
column 1 to 141. 2. 3. 4. 6. 8. 9. 12. 18. 24. 36. 72. 173. 346.
column 15 to 24519. 692. 1038. 1384. 1557. 2076. 3114. 4152. 6228. 12456.
Exemples d’arithmétique
– Probabilités et statistiques :• factorielle, arrangement, combinaison• tirage_entier, tirage_reel, frequence, frequence_tirage_entier,
• moyenne, moyenne_ponderee, ecart_type, ecart_type_pondere, mediane, mediane_ponderee, quartiles, quartiles_ponderes, deciles, deciles_ponderes
• loi_exp, loi_normale• regression_y_en_x• histogramme
-->a=[0,10,15,20,40]a =
0. 10. 15. 20. 40. -->n=[8,6,13,10]n =
8. 6. 13. 10. -->histogramme(a,n,"r")
Exemple de statistiques
– Ensembles :• ensemble, ajouter, enlever• inclus, appartient• difference, intersection, union• tirage_ensemble• valeur
-->p=ensemble("a(20)","b(20)","a(50)","a(100)","b(100)","a(200)");-->n=1000; f=0;-->for i=1:n--> t=tirage_ensemble(2,p);--> if sum(valeur(t))>150 then f=f+1; end-->end-->f/nans =
0.394
Exemples de calculs sur les ensembles :- On tire au hasard 2 billets parmi un ensemble
de 2 billets de 20 euros, 1 billet de 50 euros, 2 billets de 100 euros et 1 billet de 200 euros
- On calcule la probabilités pour que la somme des billets tirés soit supérieur à 150 euros
- Simulation sur 1000 tirages
• Scilab 5.0 avec les fonctions pour les lycées :– Utilisation directe à partir du cédérom sous Windows– Installation sous Windows, Linux et Max OS X
• Un document de familiarisation à Scilab
• Un document d’exemples sur l’utilisation en mathématiques dans le secondaire
Une page Web dédiée : www.scilab.org/lycee
Une mailing list : [email protected]
Le CDROM Scilab pour les lycées
Conclusion
www.scilab.org