approximation de fonction ( cours math 4 usthb )

16

Click here to load reader

Upload: laperouse2008

Post on 08-Jun-2015

1.740 views

Category:

Documents


7 download

DESCRIPTION

les cours de math 4 ; allé les amis prifité bien et bien sur lissé des commantaires

TRANSCRIPT

Page 1: Approximation de fonction ( cours math 4 usthb )

1

Analyse NumériqueProblèmes Pratiques

Approximation de fonctions

Ph. Leray Analyse Numérique 1

Introduction 1/2

❚ Dans différentes disciplines scientifiques, besoinde résoudre de nombreux problèmes numériques :❙ …❙ …

❚ Résolution de ces problèmes❙ mise sous forme matricielle❙ résolution de systèmes linéaires de n équations à n

inconnues❙ besoin d'inverser des matrices

Page 2: Approximation de fonction ( cours math 4 usthb )

2

Ph. Leray Analyse Numérique 2

Introduction 2/2

❚ Quelques problèmes abordés dans ce cours :❙ approximation de fonctions❙ optimisation❙ résolution de f(x)=0

❙ intégration et dérivation❙ résolution d'équations différentielles❙ transformée de Fourier

Ph. Leray Analyse Numérique 30 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8

-4

-3

-2

-1

0

1

2

Approximation de fonctions 1/2

❚ Soit une fonction f (inconnue explicitement)❙ connue seulement en certains points x0,x1…xn

❙ ou évaluable par un calcul coûteux.

❚ Principe :❙ représenter f par une fonction simple, facile à évaluer

❚ Problème :❙ il existe une infinité de solutions !

Page 3: Approximation de fonction ( cours math 4 usthb )

3

Ph. Leray Analyse Numérique 4

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8-4

-3

-2

-1

0

1

2

Approximation de fonctions 2/2

❚ Il faut se restreindre à une famille de fonctions❙ polynômes,❙ exponentielles,❙ fonctions trigonométriques…

Ph. Leray Analyse Numérique 5

Quelques méthodes d'approximation

❚ Interpolation polynomiale❙ polynômes de degré au plus n

❘ polynômes de Lagrange❘ différences finies de Newton

❚ Interpolation par splines cubiques❙ polynômes de degré 3 par morceaux

❚ Interpolation d'Hermite❙ informations sur les dérivées de la fonction à approcher

❚ …

Page 4: Approximation de fonction ( cours math 4 usthb )

4

Ph. Leray Analyse Numérique 6

Interpolation polynomiale : Lagrange

❚ Théorème❙ Soient n+1 points distincts xi réels et n+1 réels yi,

il existe un unique polynôme p ∈ Pn tel quep(xi) = yi pour i = 0 à n

❚ Démonstration par construction❙

avec Li polynôme de Lagrange

❙ Propriétés de Li

❘ Li polynôme de degré n❘ Li(xi)=1 Li(xj)=0 (j ≠ i)

∑=

=n

0iii )x(Ly)x(p

( )( )∏

≠= −

−=

n

ij0j ji

ji xx

xx)x(L

Ph. Leray Analyse Numérique 7

01

01

10

10

10

01

10

10

10

0110

10

10

xx

xxy

xx

xxy

xx

xxy

xx

xxyy

xx

yxyxx

xx

yyy

−−

+−−

=−−

−−−

=

−−

+−−

=

❚ Exemple avec n=1❙ on connaît 2 points (x0,y0) et (x1,y1)❙ on cherche la droite y=ax+b (polynôme de degré 1)

qui passe par les 2 points :❘ y0 = a x0 + b a = (y0 - y1) / (x0 - x1)

❘ y1 = a x1 + b b = (x0 y1 - x1 y0) / (x0 - x1)

Lagrange : exemple n°1

L0(x) L1(x)

x0 x1

y1

y0

Page 5: Approximation de fonction ( cours math 4 usthb )

5

Ph. Leray Analyse Numérique 8

Lagrange : exemple n°2 1/2

❚ Exemple avec n=2❙ on connaît 3 points (0,1), (2,5) et (4,17)❙ polynômes de Lagrange associés :

( )( )8

4x2x)x(L0

−−= ( )8

2xx)x(L2

−=( )4

4xx)x(L1 −

−=

0 2 4

-

0 2 4 0 2 4

Ph. Leray Analyse Numérique 9

-1 0 1 2 3 4 50

5

10

15

20

25

30

Lagrange : exemple n°2 2/2

❙ calcul du polynôme d'interpolation

❘ p(x)=L0(x) + 5 L1(x) + 17 L2(x)

❘ en simplifiant, on retrouverait p(x)=x2+1

Page 6: Approximation de fonction ( cours math 4 usthb )

6

Ph. Leray Analyse Numérique 10

-1 0 1 2 3 4 5-10

0

10

20

30

40

50

60

Lagrange : exemple n°3 1/2

❚ Exemple avec n=2 (fonction à approcher y=ex)❙ on connaît 3 points (0,1), (2,7.3891) et (4,54.5982)❙ Polynôme d'interpolation

❘ p(x) =L0(x) + 7.3891 L1(x) + 54.5982 L2(x)

Ph. Leray Analyse Numérique 11

Lagrange : exemple n°3 2/2

❙ Erreur d'interpolation e(x) = f(x) - p(x)

-1 0 1 2 3 4 5-20

-10

0

10

20

30

40

50

60

Page 7: Approximation de fonction ( cours math 4 usthb )

7

Ph. Leray Analyse Numérique 12

Lagrange : erreur d'interpolation

❚ Théorème :❙ si f est n+1 dérivable sur [a,b], ∀ x ∈ [a,b], notons :

❘ I le plus petit intervalle fermé contenant x et les xi

❘ φ(x)=(x-x0)(x-x1)…(x-xn)

❙ alors, il existe ξ ∈ I tel que

❙ NB : ξ dépend de x

❚ Utilité❙ contrôle de l’erreur d’approximation❙ « réglage » de la qualité de l’approximation

( ) ( )( ) ( )x

!1n

fxe

)1n(

φξ+

=+

Ph. Leray Analyse Numérique 13

Lagrange : choix de n

❚ Supposons que l'on possède un nb élevé de pointspour approcher f … faut-il tous les utiliser ?❙ (calculs lourds)

❚ Méthode de Neville :❙ on augmente progressivement n❙ on calcule les Li de manière récursive❙ on arrête dès que l'erreur est inférieure à un seuil

(d’où l’utilité du calcul de l’erreur)

Page 8: Approximation de fonction ( cours math 4 usthb )

8

Ph. Leray Analyse Numérique 14

Lagrange : l’algorithme 1/2

❚ Méthode de Neuville (approche récursive)❙ Soient xj et xk deux points où la fonction est connue

❘ on a

❘ avec Qj(x) (resp. Qk(x)) polynôme d’interpolation obtenu avectous les points sauf xj (resp. xk)

❙ Soit Qjk(x) le polynôme d’interpolation de degré k obtenuavec les points xj-k à xj

❘ on a p(x) = Qii(x) polynôme d’interpolation de degré i

( ) ( ) ( ) ( )( )jk

kk

jj

xx

xQxxxQxx)x(p

−−−−

=

Ph. Leray Analyse Numérique 15

Lagrange : l’algorithme 2/2

❚ Interpolation en 1 point x :

Pour i allant de 1 à n

Pour j allant de 1 à i

FinPour

Approximation de degré i = Qii(x)

FinPour

❚ Complexité du calcul : n2

( ) ( ) ( ) ( )( )jii

1j,1ii

1j,ijiij

xx

xQxxxQxx)x(Q

−−−−

−−−−

=

Page 9: Approximation de fonction ( cours math 4 usthb )

9

Ph. Leray Analyse Numérique 16

Interpolation polynomiale : Newton

❚ Polynômes de Newton :❙ base = {1, (x-x0), (x-x0)(x-x1), …, (x-x0)(x-x1)…(x-xn-1)}

❙ on peut ré-écrire p(x) :p(x)=a0 + a1(x-x0) + a2(x-x0)(x-x1)+…+ an(x-x0)(x-x1)…(x-xn-1)

❙ calcul des ak : méthode des différences divisées

Ph. Leray Analyse Numérique 17

Newton : différences divisées 1/3

❚ Définition :❙ Soit une fonction f dont on connaît les valeurs en des

points distincts a, b, c, …❙ On appelle différence divisée d’ordre 0, 1, 2,...,n

les expressions définies par récurrence sur l’ordre k :❙ k=0 f [a] = f (a)

❙ k=1 f [a,b] = ( f [b] - f [a] ) / ( b - a )

❙ k=2 f [a,b,c] = ( f [a,c] - f [a,b] ) / ( c - b )

❙ … f [X,a,b] = ( f [X,b] - f [X,a] ) / ( b - a )a ∉ X , b ∉ X , a ≠ b

Page 10: Approximation de fonction ( cours math 4 usthb )

10

Ph. Leray Analyse Numérique 18

Newton : différences divisées 2/3

❚ Théorèmes :❙ détermination des coefficients de p(x) dans la base de

Newton :

f [x0, x1,…, xk] = ak avec k = 0 … n

❙ erreur d'interpolation :

e(x) = f [x0, x1,…, xn, x] φ(x)

Ph. Leray Analyse Numérique 19

Newton : différences divisées 3/3

a0

a1

a2

an

❚ Calcul pratique des coefficients :

x0 f [x0]

x1 f [x1] f [x0, x1]

x2 f [x2] f [x1, x2] f [x0, x1, x2]

… … … ...

… … … f [xn-3, xn-2, xn-1]

xn f [xn] f [xn-1, xn] f [xn-2, xn-1, xn] … f [x0, ..., xn]

Page 11: Approximation de fonction ( cours math 4 usthb )

11

Ph. Leray Analyse Numérique 20

❚ (ex. n°2) : n=2 (0,1), (2,5) et (4,17)

0 f [x0]=1

2 f [x1]=5 f [x0, x1]

=(1-5)/(0-2)=2

4 f [x2]=17 f [x1, x2] f [x0, x1, x2]

=(5-17)/(2-4)=6 = (2-6)/(0-4)=1

Newton : exemple

a0

a2

p(x)=1 + 2x + x(x-2) (et on retombe sur p(x) = 1 + x2)

a1

Ph. Leray Analyse Numérique 21

Newton : l’algorithme

❚ Interpolation en 1 point x :

Pour i allant de 1 à n

Pour j allant de 1 à i

FinPour

ai = Fi,i

FinPour

❚ Complexité du calcul : n2

jii

1j,1i1j,ij,i xx

FFF

−−−

−−

=

Page 12: Approximation de fonction ( cours math 4 usthb )

12

Ph. Leray Analyse Numérique 22

-6 -4 -2 0 2 4 6-6

-4

-2

0

2

4

6

A bas les polynômes

❚ Ex : y=2(1+tanh(x)) - x/10 avec 9 points❙ entre les points, le polynôme fait ce qu'il veut…

et plus son degré est élevé plus il est apte à osciller !

Ph. Leray Analyse Numérique 23

Interpolation par splines cubiques

❚ Principe :❙ on approche la courbe par morceaux (localement)❙ on prend des polynômes de degré faible (3)

pour éviter les oscillations

❚ Cas particulier des splines

Page 13: Approximation de fonction ( cours math 4 usthb )

13

Ph. Leray Analyse Numérique 24

Splines cubiques : définition

❚ Définition :❙ On appelle spline cubique d’interpolation une fonction

notée g, qui vérifie les propriétés suivantes :❘ g ∈ C2[a;b] (g est deux fois continûment dérivable),❘ g coïncide sur chaque intervalle [xi; xi+1] avec un polynôme de

degré inférieur ou égal à 3,❘ g(xi) = yi pour i = 0 … n

❚ Remarque :❙ Il faut des conditions supplémentaires pour définir la

spline d’interpolation de façon unique❙ Ex. de conditions supplémentaires :

❘ g"(a) = g"(b) = 0 spline naturelle.

Ph. Leray Analyse Numérique 25

Splines cubiques : détermination 1/4

❚ Détermination de la spline d’interpolation❙ g coïncide sur chaque intervalle [xi; xi+1] avec un

polynôme de degré inférieur ou égal à 3➨ g" est de degré 1 et est déterminé par 2 valeurs:

❘ mi = g"(xi) et mi+1 = g"(xi+1) (moment au noeud n°i)

❙ Notations :❘ hi = xi+1 - xi pour i = 0 … n-1

❘ δi= [xi; xi+1]

❘ gi(x) le polynôme de degré 3 qui coïncide avec g sur l’intervalle δi

Page 14: Approximation de fonction ( cours math 4 usthb )

14

Ph. Leray Analyse Numérique 26

Splines cubiques : détermination 2/4

❙ g"i(x) est linéaire :❘ ∀ x ∈ δi

❘ on intègre(ai constante)

❘ on continue(bi constante)

❙ gi(xi) = yi

❙ gi(xi+1) = yi+1

( )i

1ii

i

i1ii h

xxm

h

xxmxg

−+

−=′′ +

+

( ) ( ) ( ) ( ) iiii

31i

ii

3i

1ii bxxah6

xxm

h6

xxmxg +−+

−+

−= +

+

( ) ( ) ( )i

i

21i

ii

2i

1ii ah2

xxm

h2

xxmxg +

−−

−=′ +

+

i

2ii

i b6

hmy +=

iii

2i1i

1i bha6

hmy ++= +

+

1

2

Ph. Leray Analyse Numérique 27

Splines cubiques : détermination 3/4

❙ g'(x) est continue :

❙ et

❙ on remplace les ai dans :

❙ Rappel : on cherche les mi (n+1 inconnues)➨ on a seulement n-1 équations grâce à➨ il faut rajouter 2 conditions, par exemple

➨ m0 = mn =0 (spline naturelle)

( ) ( )i1i1i1i

iii

iii xga2

hma

2

hmxg −−

− ′=+=+−=′

( ) ( )i1ii

i1ii

i mm6

hyy

h

1a −−−= ++

3

1 2

3

( ) ( ) ( )

−−−=+++ −

−++−−− 1ii

1ii1i

i1iii1ii1i1i yy

h

1yy

h

16mhmhh2mh4

4

Page 15: Approximation de fonction ( cours math 4 usthb )

15

Ph. Leray Analyse Numérique 28

Splines cubiques : détermination 4/4

❙ Ex de résolution avec hi = xi+1 - xi constant :❘

❘ forme matricielle :

Tm=f

❘ T inversible (tridiagonale)

( ) ( ) ( )

−−−=+++ −

−++−−− 1ii

1ii1i

i1iii1ii1i1i yy

h

1yy

h

16mhmhh2mh4

( ) i1ii1i21ii1i fyy2yh

1mm4m =+−=++ +−+−

=

−− 1n

1

1n

1

f

f

m

m

41

141

141

014

ΛΛΟΟΟ

Ph. Leray Analyse Numérique 29

Splines cubiques : l’algorithme

❚ Calcul des moments par résolution d’un systèmelinéaire tridiagonal

❚ Algorithme = factorisation de Crout (LU « tridiagonal »)

❚ Complexité du calcul : n

Page 16: Approximation de fonction ( cours math 4 usthb )

16

Ph. Leray Analyse Numérique 30

Splines cubiques : exemple

❚ Ex : y=2(1+tanh(x)) - x/10 avec 9 points

-6 -4 -2 0 2 4 6-6

-4

-2

0

2

4

6

spline

polynôme de degré 8

Ph. Leray Analyse Numérique 31

Conclusion

❚ Interpolation polynomiale❙ évaluer la fonction en un point :

polynôme de Lagrange ➨ méthode de Neville❙ compiler la fonction (calcul des coefficients du polynôme) :

polynôme de Newton

❚ Interpolation polynomiale par morceau : splines❙ spline cubique d’interpolation❙ spline cubique d’approximation (on régularise)❙ b spline❙ spline généralisée : splines gaussiennes