View
45
Download
0
Category
Preview:
DESCRIPTION
PROGRAMMATION SCIENTIFIQUE EN C. PRO-1027. Les erreurs sur les calculs par ordinateur. Représentation des nombres réels Types d’erreurs Epsilon de la machine et nombre de chiffres significatifs d’une représentation Propagation des erreurs Approximation de fonctions par série de Taylor - PowerPoint PPT Presentation
Citation preview
PROGRAMMATION SCIENTIFIQUE EN C
PRO-1027
Les erreurs sur les calculs par ordinateur
Représentation des nombres réels Types d’erreurs Epsilon de la machine et nombre de chiffres
significatifs d’une représentation Propagation des erreurs Approximation de fonctions par série de
Taylor Travail pratique no. 1
Représentation des nombres réels
Représentation des réels courts (32 bits) selon la norme de l’IEEE
S Caractéristique Mantisse
31 30 23 22 0
Représentation des nombres réels
Représentation des réels longs (64 bits) selon la norme de l’IEEE
S Caractéristique Mantisse
63 62 52 51 0
Représentation des nombres réels
Un réel court en virgule flottante (S,C,M) a sa valeur décimale N donnée par
MN CS ,12)1( 127
• S: bit de signe• C: caractéristique • M: mantisse
Représentation des nombres réels
Représentation sous forme d’un réel court du nombre 87,125
210
210
210
001,1010111125,87
001,0125,0
101011187
Après normalisation
62 2010111001,1001,1010111
Représentation des nombres réels
Représentation sous forme d’un réel court du nombre 87,125
)6127133(:10000101
010111001
110
010111001,1
Mantisse avec le 1 implicite
Exposant
Mantisse entreposée
Caractéristique
Représentation des nombres réels
Représentation sous forme d’un réel court du nombre 87,125
0 100000101 01011100100000000000000
Types d’erreurs
Erreur absolue et erreur relative– Supposons que nous approximons un nombre x par
x’
– Les erreurs absolue et relative sont données par
xxx
xxe
xxe
r
a
/'1'
'
Types d’erreurs
Erreur absolue et erreur relative– Supposons que nous approximons par ’=3.1416
– Si la valeur de =3.14159265, les erreurs absolue et relative sont données par
6
6
1034.2'
1035.7'
r
a
e
e• L’approximation est précise à 4 décimales près• Avec 5 chiffres significatifs
Types d’erreurs
Erreur d’arrondi– Ce type d’erreur survient lorsque nous emmagasi-
nons des nombres dans un espace physique (mé-moire) de dimension finie
– Ce type d’erreur fait donc référence à la représenta-tion des nombres dans l’ordinateur
Types d’erreurs
Erreur d’arrondi– Considérons l’addition de 2 réels chacun avec 15
bits significatifs
1
7
2000101001111000,0
2100111111011011,0
2345.1
45,123
b
a
b
a
Types d’erreurs
Erreur d’arrondi– Alignement de b
001111000011111100101,0
011100000010000001001,0
100111111011011,0
2011100000010000001001,0 7
ba
b
Types d’erreurs
Erreur d’arrondi– Arrondissement du résultat
68,1242011111111100101,0
011111111100101,0
001111000011111100101,0
7
Types d’erreurs
Erreur de troncature– Ce type d’erreur survient quand par exemple nous
utilisons un nombre de termes finis pour faire l’approximation d’une série infinie (ex: série de Taylor)
– L’utilisation d ’un algorithme avec un nombre d’itérations discrets peut aussi causer ce type d’erreur
Epsilon de la machine et nombre de chiffres significatifs d’une représentation
Lorsque nous effectuons l’addition de 2 nombres réels le plus petit des 2 est décalé ce qui occasionne une perte de précision
Dans des cas extrêmes il peut arriver que le plus petit nombre n’ai aucune signifiance dans le calcul, ayant été décalé complètement vers la droite
Le nombre de décalages maximum que peut subir un nombre avant qu’il n’ai plus de signifiance corres-pond au nombre de chiffres significatifs de la repré-sentation
Epsilon de la machine et nombre de chiffres significatifs d’une représentation
Le plus petit nombre signifiant d’une représenta-tion est appelé epsilon de la machine
Ce nombre représente la plus petite valeur de x pour laquelle 1+x>1
Epsilon de la machine et nombre de chiffres significatifs d’une représentation
Algorithme qui trouve le epsilon de la machine et le nombre de chiffres significatifs (cas binaire)eps=1
n=0
TTQ 1+eps>1 FAIRE
eps = eps/2
n++
FIN TTQ
eps = eps * 2
n = n-1
imprimer eps et n
Propagation des erreurs
Lorsque une opération telle que l’addition est répétée il peut survenir un phénomène de propaga-tion des erreurs d’arrondis
Alors la sommation suivante peut dans certain cas ne pas donner 1
N
N1
/11
Propagation des erreurs
De plus, l’ordre des sommations a aussi une influence sur la propagation des erreurs
Par conséquent les 2 sommations suivantes devraient donner la même valeur mais ce n’est pas le cas quand N est le moindrement grand
1
1
/1/1Ni
nN
i
n ii
Propagation des erreurs
Algorithme de sommation successivesaut = 1/N
somme = 0
POUR i = 1 à N FAIRE
somme = somme + saut
FIN POUR
imprimer somme et erreur (1-somme)
Propagation des erreurs
Algorithme de sommation ascendantsomme = 0
POUR i = 1 à N par saut de 1 FAIRE
somme = somme + 1/in
FIN POUR
imprimer somme
Propagation des erreurs
Algorithme de sommation descendantsomme = 0
POUR i = N à 1 par saut de -1 FAIRE
somme = somme + 1/in
FIN POUR
imprimer somme
Approximation de fonction par série de Taylor
Le développement en série de Taylor premet de faire l’approximation de fonctions suffisamment différentiables
Nous pouvons évaluer la valeur d’une fonction dans le voisinage d’un point de référence par
!
)(......
!2
)('')(')()(
)(2
n
hafhafhafafhaf
nn
Approximation de fonction par série de Taylor
L’erreur de troncature découlant du développe-ment en série de Taylor avec n termes dérivés est donnée avec sa borne supérieure par
)!1(
)(max
)!1(
)(1)1(1)1(
n
htf
n
hcfnn
hata
nn
Approximation de fonction par série de Taylor
Pour la fonction cosinus avec a = 0 et un intervalle des valeurs de h [0,/2] et n=4
0
242
432
)!2(
)1(....
!4!21)cos(
...!4
)0cos(
!3
)0sin(
!2
)0cos()0sin()0cos()cos(
0
)cos()(
n
nn
n
xxxx
xxxxx
xh
a
aaf
Approximation de fonction par série de Taylor
Pour la fonction cosinus, l’erreur de troncature est bornée par le premier terme de la série omis, cette erreur de troncature est bornée par (n=4)
720120
)sin(max
65
0
hhtht
Recommended