0% ont trouvé ce document utile (0 vote)
57 vues8 pages

Anal. Num

Transféré par

doumadongmo
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
57 vues8 pages

Anal. Num

Transféré par

doumadongmo
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

ENS Ydé. Mr NJEUTCHA P.

Jeudi, 16 Mars 2023.


CHAP 1 : CALCUL NUMERIQUE APPROCHE ET REPRESENTATION
DES NOMBRES EN MACHINE

GRANDS TITRES A RETROUVER LE LONG DU CHAPITRE :


 ARITHMETIQUE DES CALCULATEURS ET SOURCES D’ERREURS.
 EVALUATION DE L’ERREUR.
 LA MEMOIRE DE L’ORDINATEUR : LE STOCKAGE DES NOMBRES.
 LES OPERATIONS ARITHMETIQUES.
 CONDITIONNEMENT ET STABILITE NUMERIQUE.

I. ARITHMETIQUE DES CALCULATEURS ET


SOURCES D’ERREURS.
I.1 Définitions :
ANALYSE NUMERIQUE : C’est la branche des mathématiques appliquées
s’intéressant au développement d’outils et de méthodes numériques pour le calcul
d’approximations de solutions de problèmes difficiles voire impossible d’obtenir par
des moyens analytiques.
CALCUL SCIENTIFIQUE : Discipline qui consiste à l’étude de l’implémentation
des méthodes numériques dans des architectures de l’ordinateur et leur application
dans la résolution effective de problèmes issues de la physique, de la biologie, des
sciences de l’ingénieur ou encore de l’économie et de la finance.
CALCUL NUMERIQUE : Discipline qui traite de la définition, de l’analyse et de
l’implémentation d’algorithmes pour la résolution numérique des problèmes
mathématiques continus qui proviennent de la modélisation des problèmes réels.
ALGORITHME : Texte fini qui spécifie l’exécution d’une série finie d’opérations
élémentaires conçus pour résoudre les problèmes d’une classe ou d’un type
particulier.
Un calculateur ne peut fournir que de résultats approximatifs. Ces
approximations dépendent des contraintes physiques du calculateur :
*Espace mémoire (stockage).
*Vitesse de l’horloge (processeur).

INFO L1 1 ANALYSE NUMERIQUE


ENS Ydé. Mr NJEUTCHA P.

I.2 Evaluations de l’erreur :


Un nombre approché x* est un nombre légèrement différent du nombre
exact x et qui dans le calcul, remplace ce dernier. Si x*< x, on dit que x* est une
valeur approchée par défaut de x et réciproquement, si x*> x, on dit que x* est une
valeur approchée par excès de x. Dans les 2 cas, on note x*~ x.

I.2.1 Définitions :

 Erreur absolu �x d’un nombre x* : C’est la valeur absolue de x-x* donc


� x = |x-x*| (1)
 Ecart relatif de x*: C’est le rapport de (x*- x) par x. Donc φx = (x *- x)
/x (2). Ainsi, on obtient x* = x (1 + φx) (3).
 Erreur relatif εx d’un nombre x* : C’est la valeur absolue de l’écart
relatif φx soit εx = � x / |x|, avec x ≠ 0 (4).

Remarque : *Le pourcentage d’erreur est 100εx. %εx = 100εx (5).

*L’erreur relative fournit une information plus pertinente sur la


grandeur réelle de l’erreur. Cependant, elle n’est définie que pour x ≠ 0.

Exemple : x = 3,141592 � x = 0,000307346 ; εx = 9,78314 * 10^-5.


x* = 3,1419

y = 10^6 � y = 4 * 10^0 ; εy= 4* 10^-6 .


y* = 999996
I.3.2 Sources d’erreurs :
Les erreurs commises dans les problèmes mathématiques peuvent être en
principe classées en 5 catégories :
 Les erreurs de modélisation : Ce sont des erreurs dues à la façon même
dont est posé le problème.
 Les erreurs de mesure : Ces erreurs sont dues à la présence dans le modèle
mathématique des paramètres numériques dont les valeurs ne peuvent être
qu’approximatives suite à des mesures expérimentales.

INFO L1 2 ANALYSE NUMERIQUE


ENS Ydé. Mr NJEUTCHA P.

 Les erreurs de troncature ou d’approximation : Ce sont des erreurs


associées au processus infinis en analyse mathématique.
 Les erreurs d’arrondies : Ce sont des erreurs associées aux système de
numération. Elles sont dues au fait qu’un ordinateur ne peut prendre en
considération qu’un nombre fini de chiffres.
 Les erreurs de propagation et de génération : Ce sont des erreurs qui
apparaissent dans le résultat d’une opération comme conséquence des
erreurs des opérandes.

II. REPRESENTATION DES NOMBRES EN MACHINE :


Un ordinateur ne peut représenter qu’un sous ensemble fini de l’ensemble
des réels. Par conséquent, tout opération d’un ordinateur est entachée par des
erreurs d’arrondies.
Les notations machines les plus adaptées pour représenter les nombres
réels sur un ordinateur sont :
 La notation à virgule fixe ;
 La notation à virgule flottante.
II.1 Notation à virgule fixe :
Soit x un nombre réel donné. Sa représentation en virgule fixe est :

{ [x x x …x x , x x …x ] , b ,s } (6) . De ceci, il vient que :


n n-1 n-2 1 0 -1 -2 -m

- b € |N , b > 2, est appelé la base.


- s € {0 ;1} est le signe.
- xi € |N , 0 < xi < b , i = -m,…,n sont les symboles.
- m est le nombre de chiffres après la virgule.
- n + 1 est le nombre de chiffres avant la virgule.
x € |R,
x = (-1) s (∑n i=-m xi bi ) (7)

Remarque : Pour s = 0, le nombre x est positif et s = 1, x est négatif.


Exemple :

Soit b = 0, n=3, m=6, s=0. On a x = ∑3i = - 6 xi bi.
x = 0 * 10-6 + 0 * 10-5 + 0 * 10-4 + 1 * 10-3 + 2 * 10-2 + 4 * 10-1 + 0 * 100 + 3 * 101 + 0 * 102+ 0 * 103.

= 30, 421.
 x = [ 0000,043700] = 0,0437
INFO L1 3 ANALYSE NUMERIQUE
ENS Ydé. Mr NJEUTCHA P.

Bien que d’un point de vue théorique, sont soit équivalentes, les ordinateurs
possèdent 3 bases :
 b = 10 : Ceci est la base du système décimal. Ses symboles sont :
{0 ;1 ; … ;9}.
Remarque : Cette base est normalement utilisée pour l’affichage des résultats.
 b = 2 : Ceci est la base du système binaire. Ses 2 symboles sont : {0 ; 1}.
On rappelle que ces symboles sont appelés bit (binary digit) et que cette base
est utilisée pour stocker et effectuer des calculs sur machine.
 b = 16 : Ceci est la base du système hexa–décimal. Ses symboles sont : {0,
1, …,9, A, …, F}.
Remarque : Cette base permet une représentation compacte des nombres
binaires.
 Propriétés :
 Les nombres à virgule fixe sont équi–repartis le long de la droite réelle.
 L’écart entre 2 nombres consécutifs réels qui peut être représentée en
notation à virgule est b-m.
 L’utilisation de la notation en virgule fixe limite considérablement les valeurs
maximales et minimales des nombres représentés par l’ordinateur.
 La chaine de caractères nécessaire à la représentation d’un même nombre
est d’autant plus longue que la base est petite.

II.2 notation à virgule fixe :


Etant donné un nombre réel non-nul, sa représentation en virgule flottante est :

{[a a a …a a ] e, b, s} (8)
1 2 3 t-1 t

- b € |N , b > 2, est appelé la Base


- s € {0 ;1} est le signe.
- ai € |N , 0 < a1 < b , 0 < ai < b , i = 2 ,…,t sont les symboles.
- e € Z, L < e < U est appelé exposant.
- t est le nombre de chiffres significatifs.
- - La quantité m = m(x) = ∑ti = 1 ai bt-i est la mantisse.
- Nous ne considérons que le cas normalisé c’est-à-dire a1>0 alors ceci implique :
- bt-1 < m < bt-1 .
- La notation (7) est utilisée pour encoder le nombre réel.

x = (-1)s be ( ∑t i=1 ai b-i ) = (-1)s m be-t (9)


INFO L1 4 ANALYSE NUMERIQUE
ENS Ydé. Mr NJEUTCHA P.

Exemple : La notation à virgule flottante {[3,4] e = 1, b = 10, s=0}. Que désigne x ?


X = (-1)0 * (10)1 * (3*10-1 + 4*10-2) = 3,4 => X = 3,4

{[3,4] e = -1, b = 10, s=1} => X = 0,034.


II.3 Représentation des nombres réels (R) par des nombres
machines (F) :

Notons par F (b, t, L, U) l’ensemble des nombres réels qui sont représentés
par une représentation en virgule flottante en base b comportant t chiffres
significatifs et dont l’exposant varie dans l’intervalle [L,U] .

Remarque : - L’ensemble F ne contient pas le 0 si la représentation est normalisée.


- L’ensemble des nombres à virgule flottante est un sous – ensemble
finie de R.
- x € F (b, t, L, U)  bL-1 < |x| < bU(1-b-t) (10)
On montre que Card ( F ) = 2(b-1)bt-1(U-L+1) (11)
Exemple : Considérons un système de représentation à virgule flottante ou la
base b=10 et les bornes des exposants sont L = -1 ; U = 1 ; s = 0, le nombre de
chiffres significatifs est t = 1. Déterminons l’ensemble des nombres réels qui
peuvent être représentée dans ce système.
On retrouve donc card (F) = 54. On a donc 54 nombres compris entre 0.01 et 9.
Card (F) = 2(10-1)*100(1-(-1)+1) = 54. Min = 10-1-1 = 0,01 ; Max = 101(1-10-1) = 9.
[a1] e x
Là, nous avons les 27 valeurs positives. Pour
1 -1 0.01 les 27 autres valeurs, y ajouter des – devant la
2 -1 0.02 listes des positifs. Ceux-ci sont retrouvés en
3 -1 0.03 représentation normalisée. On retrouve chaque
… -1 … valeur de x ci – contre par la formule (8) :

x = (-1)s be ( ∑ti = 1 ai b-i )


9 -1 0.09
1 0 0.1
2 0 0.2
3 0 0.3
… 0 …
9 0 0.9
1 1 1
2 1 2
3 1 3 (5/8 )10 = (0,101)2
… 1 …
INFO L1 5 ANALYSE NUMERIQUE
ENS Ydé. Mr NJEUTCHA P.

9 1 9

o Précision machine : Elle est décrite par le nombre machine epsilon (esp ou ε).
ε est le plus petit nombre machine positif telque 1 + ε > 1.
C’est la distance entre l’entier 1 et le nombre machine le plus proche qui lui
est supérieur.

Exemple : Déterminons ε dans F (2,3,-1,2)

Sur une calculatrice, le système utilisé est la base 10. Il y’a 10 chiffres pour la
mantisse et 2 chiffres pour l’exposant. La valeur min de l’exposant (L) est -99 et sa
valeur max, +99 : xmax = 9,999999999 * 1099 et xmin = - 9,999999999 * 1099.
xmin positif = 1.000000000 * 10-99.

La distance relative entre 2 nombres consécutifs (xi € F et xi+1 € F) est donnée par
η(xi) = (xi+1 - xi) / xi. Cette distance peut être divisée en fonction des paramètres du
système de notation.
η(xi) = | (xi+1 - xi) / xi | = be-t / ( m(xi) * be-t)
η(xi) = 1 / m(xi) (12). m(xi) désigne ici la mantisse comme
définie en (8).
De même, bt-1 < m < bt  b-t < 1/m < b1-t (13).

On obtient donc ε / b < η(xi) < ε. (14). Ou ε est la précision – machine.

INFO L1 6 ANALYSE NUMERIQUE


ENS Ydé. Mr NJEUTCHA P.

II.4 LE SYSTEME IEEE 754 : NOMBRES FLOTTANTS :


Les différences de représentation des nombres flottants d’un ordinateur à un
autre obligeaient à reprendre les programmes de calculs scientifiques pour les
porter d’une machine à une autre pour assurer la compatibilité entre les machines,
depuis 1985, l’IEEE (Institut of Electrical and Electronic Engineers ). Il s’agit donc de
la norme 754. Bien attendu, avant cette norme, il existait bien d’autres notamment la
norme 5…. Le système IEEE est donc un standard pour la représentation des
nombres en virgule flottante en binaire. Il définit le format de la représentation des
nombres à virgule flottante (signe, exp, mantisse, nombres denormalisées).
Le bit de poids fort est le bit de signe. Cela signifie que si ce bit est 1, le
nombre est négatif et positif si ce bit est 0. Les Ne bits suivants représentent
l’exposant décalé. Et les Nn bits suivants représentent la mantisse. L’exposant est
décalé de 2Ne-1 – 1 (Ne étant le nombre de bits de l’exposant) afin de le stocker sous
forme d’un nombre signé.
i. Représentation en simple précision :
Un bit de signe, 8 bits d’exposant, 23 bits de mantisses soit au total 32 bits.
Comme l’exposant est décalé de 2Ne-1 – 1, alors on obtient pour Ne = 8, 127
chiffres de décalage en simple précision.
Exemple : Représenter x = -118,625 en simple précision.
Résolution : * On code ce nombre x en utilisant le système IEEE 754.
(1) C’est un nombre négatif, le bit de signe ici est 1.
(2) On écrit le nombre sans signe en binaire puis on obtient 1110110,101 .
(3)Maintenant, on retrouve la mantisse, celle-ci étant la partie à droite de la
virgule après décalage de cette dernière. On a donc :
m = 11101101010000000000000.
(4) L’exposant ici c’est 6, après décalage de 2Ne-1 – 1 = 127 , on a 126+6 =
133. Or (133)10 = (10000101)2
x dans le système simple précision IEEE vaut donc :
x = 1 10000101 11101101010000000000000
Exemple : x = - 6,5 & x = 6,5
NB : Ici, le plus petit nombre machine est 21-23 = 2-22. 23 étant la mantisse.
ii. Représentation en double précision :
Un bit de signe, 11 bits d’exposant, 52 bits de mantisses soit au total 64 bits.
L’exposant est décalé ici de 211-1 – 1 ou Ne = 11. On a 1022 chiffres de
décalage.
NB : Ici, le plus petit nombre machine est 21-52 = 2-51. 52 étant la mantisse.
INFO L1 7 ANALYSE NUMERIQUE
ENS Ydé. Mr NJEUTCHA P.

iii. Représentation en Matlab :


Les calculs réels sont en double précision par défaut. La fonction SINGLE
peut être utilisée pour convertir les nombres en simple précision. Pour voir la
représentation des nombres réels en Matlab, on peut les afficher au format
hexadécimal avec la commande « format hex».
NB : * Le système hexa-décimal est celui de la base 16, qui utilise les
symboles de 0 à 9 puis de A à F. La lecture s’effectue de droite à gauche, la
valeur vaut la somme des chiffres affectés de poids correspondant aux
puissances successives du nombre.
Ex : (5EB52)16 = 2 + 5 * 16 + 11 * 162 + 14 * 163 + 5 * 164
= (387922)10
*Pour passer du binaire au décimal, on regroupe la chaine binaire en
1 groupe de 4 chiffres et on convertit.

(387922)10 = (0101 1110 1011 0101 0010)2


=( 5 E B 5 2 )16

iv. Phenomène de wobbling :


Considérons cet ensemble IF(10,1,-1,1). Conformément à la formule (12),
les bornes inférieures et supérieures sont respectivement b-t = 0.1 et b1-t = 1. Le
phénomene d’oxcillations de distance relative η(xi) en fonction des réels xi € F
est connue sous le nom de wobbling – precision . Il est d’autant plus
prononcé que la base est grande. Raison pour laquelle on préfère employer de
petites bases dans les ordinateurs. Considérons un ordinateur utilisant la
notation à virgule flottante avec une base b

INFO L1 8 ANALYSE NUMERIQUE

Vous aimerez peut-être aussi