PROGRAMMATION SCIENTIFIQUE EN C PRO-1027. Résolution de système déquations non- linéaires...

22
PROGRAMMATION SCIENTIFIQUE EN C PRO-1027

Transcript of PROGRAMMATION SCIENTIFIQUE EN C PRO-1027. Résolution de système déquations non- linéaires...

Page 1: PROGRAMMATION SCIENTIFIQUE EN C PRO-1027. Résolution de système déquations non- linéaires (racines déquations) u Méthode de la bissection u Analyse de.

PROGRAMMATION SCIENTIFIQUE EN C

PRO-1027

Page 2: PROGRAMMATION SCIENTIFIQUE EN C PRO-1027. Résolution de système déquations non- linéaires (racines déquations) u Méthode de la bissection u Analyse de.

Résolution de système d’équations non-linéaires (racines d’équations)

Méthode de la bissection Analyse de la convergence de la méthode de

bissection Travail pratique 2 a

– Recherche des zéros par la méthode de la bissection

– Recherche de plusieurs zéros

Page 3: PROGRAMMATION SCIENTIFIQUE EN C PRO-1027. Résolution de système déquations non- linéaires (racines déquations) u Méthode de la bissection u Analyse de.

Méthodes de la bissection

La méthode de la bissection permet la localisation d’une seule racine dans un intervalle donné

Conditions requises– La fonction f(x) est continue sur l’intervalle [a,b]

– SI f(a)f(b) < 0 => une racine dans l’intervalle Pour une précision équivalente, cette méthode est

généralement plus rapide (convergence)

Page 4: PROGRAMMATION SCIENTIFIQUE EN C PRO-1027. Résolution de système déquations non- linéaires (racines déquations) u Méthode de la bissection u Analyse de.

Méthodes de la bissection

Étapes de la méthodes de bissection– Pour un intervalle [a,b], calculer la position du cen-

tre de l’intervalle par: c = 1/2(a+b) = a+(b-a)/2

– Calculer f(a), f(b) et f(c)

– Calculer f(a)f(c) et f(c)f(b)

– Vérifier la convergence» Si les critères de convergence sont satisfaits, afficher la

valeur de la racine

» Sinon modifier les extrémités de l’intervalle, répéter les étapes précédentes

Page 5: PROGRAMMATION SCIENTIFIQUE EN C PRO-1027. Résolution de système déquations non- linéaires (racines déquations) u Méthode de la bissection u Analyse de.

Méthodes de la bissection

Page 6: PROGRAMMATION SCIENTIFIQUE EN C PRO-1027. Résolution de système déquations non- linéaires (racines déquations) u Méthode de la bissection u Analyse de.

Méthodes de la bissection

La méthode de la bissection converge si une racine se trouve dans un intervalle donné et trouve une seule racine si le nombre de racines dans un inter-valle est impair

Page 7: PROGRAMMATION SCIENTIFIQUE EN C PRO-1027. Résolution de système déquations non- linéaires (racines déquations) u Méthode de la bissection u Analyse de.

Méthodes de la bissection

Page 8: PROGRAMMATION SCIENTIFIQUE EN C PRO-1027. Résolution de système déquations non- linéaires (racines déquations) u Méthode de la bissection u Analyse de.

Méthode de la bissection

Algorithme de la bissectionBISSEC(float a, float b, int nbiterMAX, float delta, float eps)

u = f(a)

v = f(b)

e = b-a

imprimer a,b,u,v

SI u*v > 0 ALORS

imprimer un message indiquant l’absence d’une racine

SINON

nbiter = 0

w = MAXFLOAT

TANT QUE nbiter<nbiterMAX ET |e| > delta ET |w| > eps FAIRE

e = e/2

c = a+e

w = f(c)

imprimer nbiter, c, w, e

Page 9: PROGRAMMATION SCIENTIFIQUE EN C PRO-1027. Résolution de système déquations non- linéaires (racines déquations) u Méthode de la bissection u Analyse de.

Méthode de la bissection

Algorithme de la bissectionTANT QUE nbiter<nbiterMAX ET |e| > delta ET |w| > eps FAIRE

e = e/2

c = a+e

w = f(c)

imprimer nbiter, c, w, e

SI (u*w<0) FAIRE

b=c

v=w

SINON

a=c

u=w

FIN SI

nbiter++

FIN TANTQUE

FIN SI

Page 10: PROGRAMMATION SCIENTIFIQUE EN C PRO-1027. Résolution de système déquations non- linéaires (racines déquations) u Méthode de la bissection u Analyse de.

Méthode de la bissection

Cas ou les critères de convergence sont déficients

Racines multiples (échec du critère |b-a| < )

Page 11: PROGRAMMATION SCIENTIFIQUE EN C PRO-1027. Résolution de système déquations non- linéaires (racines déquations) u Méthode de la bissection u Analyse de.

Méthode de la bissection

Cas ou les critères de convergence sont déficients

Discontinuité (échec du critère |f(c)| < )

Page 12: PROGRAMMATION SCIENTIFIQUE EN C PRO-1027. Résolution de système déquations non- linéaires (racines déquations) u Méthode de la bissection u Analyse de.

Analyse de la convergence

Le critère de convergence peut être exprimé en valeur absolue par a = ck+1 - ck k étant le nombre d’itérations

Il peut aussi être exprimé en pourcentage de l’erreur relative

1001

1

k

kkr c

cc

La précision réelle de la solution est donnée

100

t

ktt c

cc

Page 13: PROGRAMMATION SCIENTIFIQUE EN C PRO-1027. Résolution de système déquations non- linéaires (racines déquations) u Méthode de la bissection u Analyse de.

Analyse de la convergence

Exemple de convergence avec la fonction

f(x) = 20 - x2 = 0 Avec comme solution ct = 4.4721359 sur l’intervalle

[0,6]

Page 14: PROGRAMMATION SCIENTIFIQUE EN C PRO-1027. Résolution de système déquations non- linéaires (racines déquations) u Méthode de la bissection u Analyse de.

Analyse de la convergence

Exemple de convergence

Page 15: PROGRAMMATION SCIENTIFIQUE EN C PRO-1027. Résolution de système déquations non- linéaires (racines déquations) u Méthode de la bissection u Analyse de.

Travail pratique 2 a

Utilisation de la méthode de bissection

Page 16: PROGRAMMATION SCIENTIFIQUE EN C PRO-1027. Résolution de système déquations non- linéaires (racines déquations) u Méthode de la bissection u Analyse de.

Travail pratique 2 a

Utilisation de la méthode de bissection

0sin

cos

)(sin

)cos(

sin)sin()(

sin

sin

21

22

1221

12

21

C

Cw

CA

CAw

dC

dl

C

w

CA

wllCl

CABC

wl

B

wl

Page 17: PROGRAMMATION SCIENTIFIQUE EN C PRO-1027. Résolution de système déquations non- linéaires (racines déquations) u Méthode de la bissection u Analyse de.

Travail pratique 2 a

Recherche de plusieurs zéros (exemple)– Cherchons les valeurs et les vecteurs propres associés

à une matrice A (ex: matrice de coefficients de corré-lation ou matrice variance-covariance)

– Si nous avons une matrice A de n x n nous pouvons écrire

xAx – Où x est un vecteur propre de A et une valeur propre de A

Page 18: PROGRAMMATION SCIENTIFIQUE EN C PRO-1027. Résolution de système déquations non- linéaires (racines déquations) u Méthode de la bissection u Analyse de.

Travail pratique 2 a

Recherche de plusieurs zéros (exemple)– Si nous avons une matrice A de n x n nous pouvons

écrire

0)(

xIA

IxAx

xAx

– Pour que soit une valeur propre il faut que la solution de la dernière équation soit non nulle. Pour que x soit non nulle il faut que

0 IA

Page 19: PROGRAMMATION SCIENTIFIQUE EN C PRO-1027. Résolution de système déquations non- linéaires (racines déquations) u Méthode de la bissection u Analyse de.

Travail pratique 2 a

Recherche de plusieurs zéros (exemple)– Si nous considérons un cas d’ordre 3, nous obtenons

0

333231

232221

131211

aaa

aaa

aaa

IA

– Le déterminant donne

0

0)(

)(

))((

012

23

3122322113

3123332112

3223332211

bbb

aaaaa

aaaaa

aaaaa

Page 20: PROGRAMMATION SCIENTIFIQUE EN C PRO-1027. Résolution de système déquations non- linéaires (racines déquations) u Méthode de la bissection u Analyse de.

Travail pratique 2 a

Recherche de plusieurs zéros (exemple)– Lorsque nous avons les valeurs propres, nous les

substituons une à une dans

(A-I) x = 0

pour trouver les vecteurs propres x

Page 21: PROGRAMMATION SCIENTIFIQUE EN C PRO-1027. Résolution de système déquations non- linéaires (racines déquations) u Méthode de la bissection u Analyse de.

Travail pratique 2 a

Recherche de plusieurs zéros (exemple)– Les vecteurs propres désignent chacun des axes

orthogonaux de variance maximale des données

– De plus, les valeurs propres donnent une mesure de la variabilité des données selon chaque axe

– Les vecteurs propres nous permettent alors par une transformation linéaire de passer d’un domaine où les données sont corrélées à un autre non corrélé

Page 22: PROGRAMMATION SCIENTIFIQUE EN C PRO-1027. Résolution de système déquations non- linéaires (racines déquations) u Méthode de la bissection u Analyse de.

Travail pratique 2 a

Recherche de plusieurs zéros (exemple)

x1

x2

**

**

**

**

***

**

*

*

**

*

*

*

*

**

*