Interpolation polynômiale et extrapolation

Documents pareils
Méthodes de quadrature. Polytech Paris-UPMC. - p. 1/48

Exercices - Polynômes : corrigé. Opérations sur les polynômes

FONCTIONS DE PLUSIEURS VARIABLES (Outils Mathématiques 4)

Résolution d équations non linéaires

Calcul fonctionnel holomorphe dans les algèbres de Banach

Exercices - Fonctions de plusieurs variables : corrigé. Pour commencer

Suites numériques 4. 1 Autres recettes pour calculer les limites

3 Approximation de solutions d équations

I. Polynômes de Tchebychev

NOMBRES COMPLEXES. Exercice 1 :

Image d un intervalle par une fonction continue

Sujet proposé par Yves M. LEROY. Cet examen se compose d un exercice et de deux problèmes. Ces trois parties sont indépendantes.

Chapitre 2 Le problème de l unicité des solutions

Optimisation non linéaire Irène Charon, Olivier Hudry École nationale supérieure des télécommunications

Pour l épreuve d algèbre, les calculatrices sont interdites.

Amphi 3: Espaces complets - Applications linéaires continues

De même, le périmètre P d un cercle de rayon 1 vaut P = 2π (par définition de π). Mais, on peut démontrer (difficilement!) que

8.1 Généralités sur les fonctions de plusieurs variables réelles. f : R 2 R (x, y) 1 x 2 y 2

Souad EL Bernoussi. Groupe d Analyse Numérique et Optimisation Rabat http ://

Différentiabilité ; Fonctions de plusieurs variables réelles

Équations non linéaires

Comparaison de fonctions Développements limités. Chapitre 10

Sur certaines séries entières particulières

Correction de l examen de la première session

Moments des variables aléatoires réelles

Capes Première épreuve

Nombre dérivé et tangente

Intégration et probabilités TD1 Espaces mesurés Corrigé

Fonctions de plusieurs variables et applications pour l ingénieur

Problème 1 : applications du plan affine

Simulation de variables aléatoires

OM 1 Outils mathématiques : fonction de plusieurs variables

Première partie. Préliminaires : noyaux itérés. MPSI B 6 juin 2015

Chapitre 3. Quelques fonctions usuelles. 1 Fonctions logarithme et exponentielle. 1.1 La fonction logarithme

Continuité et dérivabilité d une fonction

Fonctions de plusieurs variables

Université Paris-Dauphine DUMI2E 1ère année, Applications

Théorème du point fixe - Théorème de l inversion locale

EXERCICE 4 (7 points ) (Commun à tous les candidats)

Fonctions de plusieurs variables, intégrales multiples, et intégrales dépendant d un paramètre

Continuité d une fonction de plusieurs variables

3. Conditionnement P (B)

Quelques contrôle de Première S

Formes quadratiques. 1 Formes quadratiques et formes polaires associées. Imen BHOURI. 1.1 Définitions

Limites finies en un point

Extrait du poly de Stage de Grésillon 1, août 2010

CCP PSI Mathématiques 1 : un corrigé

Dérivées d ordres supérieurs. Application à l étude d extrema.

Exercices Alternatifs. Quelqu un aurait-il vu passer un polynôme?

Exercices Alternatifs. Quelqu un aurait-il vu passer un polynôme?

Chapitre 7 : Intégration sur un intervalle quelconque

La fonction exponentielle

Exercices - Nombres complexes : corrigé. Formes algébriques et trigonométriques, module et argument

Capacité d un canal Second Théorème de Shannon. Théorie de l information 1/34

Développements limités. Notion de développement limité

Chapitre 3. Mesures stationnaires. et théorèmes de convergence

Calcul différentiel sur R n Première partie

Cours d analyse numérique SMI-S4

Fonctions de plusieurs variables. Sébastien Tordeux

Calcul Différentiel. I Fonctions différentiables 3

Calcul différentiel. Chapitre Différentiabilité

Introduction à l étude des Corps Finis

Polynômes à plusieurs variables. Résultant

Exo7. Matrice d une application linéaire. Corrections d Arnaud Bodin.

Continuité en un point

Résolution de systèmes linéaires par des méthodes directes

Chapitre 2. Matrices

Programmation linéaire

Cours d Analyse I et II

Chapitre VI Fonctions de plusieurs variables

INTRODUCTION. 1 k 2. k=1

Commun à tous les candidats

Calcul matriciel. Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes.

Rappels et compléments, première partie : Nombres complexes et applications à la géométrie

IV- Equations, inéquations dans R, Systèmes d équations

Chapitre 6. Fonction réelle d une variable réelle

Théorie et codage de l information

TP 1 Introduction à Matlab Février 2009

Optimisation, traitement d image et éclipse de Soleil

Programmation linéaire et Optimisation. Didier Smets

Chapitre 0 Introduction à la cinématique

Chapitre 7. Statistique des échantillons gaussiens. 7.1 Projection de vecteurs gaussiens

Développements limités, équivalents et calculs de limites

Chapitre 7. Récurrences

Fonctions de deux variables. Mai 2011

Algorithmes pour la planification de mouvements en robotique non-holonome

La classification automatique de données quantitatives


Feuille TD n 1 Exercices d algorithmique éléments de correction

Chp. 4. Minimisation d une fonction d une variable

TD1 Signaux, énergie et puissance, signaux aléatoires

Fonctions de plusieurs variables

Texte Agrégation limitée par diffusion interne

Mathématiques I Section Architecture, EPFL

Cours arithmétique et groupes. Licence première année, premier semestre

ÉTUDE ASYMPTOTIQUE D UNE MARCHE ALÉATOIRE CENTRIFUGE

Filtrage stochastique non linéaire par la théorie de représentation des martingales

LES MÉTHODES DE POINT INTÉRIEUR 1

Optimisation des fonctions de plusieurs variables

CHAPITRE V SYSTEMES DIFFERENTIELS LINEAIRES A COEFFICIENTS CONSTANTS DU PREMIER ORDRE. EQUATIONS DIFFERENTIELLES.

Transcription:

Chapitre 5 Interpolation polynômiale et extrapolation Sommaire 5. Interpolation de Lagrange.................. 2 5.. Formulation barycentrique.................. 4 5..2 Formule de Newton...................... 5 5..3 estimation d erreur...................... 7 5..4 Convergence de p n vers f.................. 9 5.2 Interpolation d Hermite.................... 0 5.3 Interpolation par morceaux................. 5.3. Interpolation affine...................... 5.3.2 Interpolation par fonctions splines............. 2 Deux problèmes classiques ) Interpolation : on considère une aile d avion, qu on soumet à des vents de 0, 50, 00, 200 km/h, et dont on calcule les déformations pour ces valeurs. On veut savoir comment elle résistera à un vent de 50km/h 2) Extrapolation : on connaît la population française de 800 à 200 et on veut en déduire une estimation de la population française dans les 0 prochaines années. Une solution est de déterminer un polynôme dont la courbe s approche le plus possible (ou passe par) ces points, et de prendre sa valeur aux nouveaux points. C est le but de ce chapitre. Le problème mathématique est le suivant : on se donne n + mesures f 0,, f n en n+ points distincts x 0,, x n et on cherche à calculer un polynôme q de degré

inférieur ou égal à m, avec m n, qui approche les mesures f 0,, f n. La première approche est quand m = n : c est le polynôme d interpolation. 5. Interpolation de Lagrange Théorème 5. ) Il existe un unique polynôme p n P n (espace vectoriel des polynômes de degré inférieur ou égal à n) tel que 2) Il s écrit sous la forme p n (x) = i, 0 i n, p n (x i ) = f i. (5.) n f i l i (x), avec l i (x) = j i x x j x i x j. (5.2) Les l i sont les polynômes d interpolation de Lagrange. p n est le polynôme d interpolation aux points x i pour les mesures f i. n Démonstration )Notons p n (x) = a k x k, x R. Résoudre (5.) est équivalent à résoudre un système linéaire dont les inconnues sont les coefficients a k : k=0 Ay = b avec x 0 x n 0 a 0 f 0 A =...., y =., b =., x n x n n a n f n A est une matrice de Vandermonde. Elle est inversible ce qui conclut la partie ). 2) l i est un polynôme de P n, et vérifie l i (x j ) = δ ij. On vérifie que ce polynôme convient. Fig. 5. polynôme d interpolation 2

Lorsque les fi sont les valeurs d une certaine fonction f aux points x i, on parle de p n comme de l interpolant d f et on la note Π n f. Fig. 5.2 interpolant En principe il suffit de résoudre le système linéaire pour calculer les a i, puis de calculer en chaque nouveau point x f(x) = (a 0, a,...,a n ) x. Mais le système est très mal conditionné. Il vaut mieux utiliser le programme suivant. x n function [yy] = lagint(x, y, xx) % LAGINT uses the ponts (x_i, y_i) for the Lagrange Form of the % interpolating polynomial and iterpolates the values % yy_i = P_n(xx_i) n = length(x); nn = length(xx); for i = :nn, yy(i) = 0; for k =:n yy(i) = yy(i)+y(k)*prod((xx(i) - x([:k-,k+:n])))... /prod((x(k) - x([:k-,k+:n]))); end; end; 3

5.. Formulation barycentrique Utiliser la formulation (5.2) mène à O(n 2 ) opérations pour chaque x. Nous définissons les coefficients λ i = j i (x i x j ). et nous réécrivons ( ) n p n (x) = λ i x j )f(x i ) = j i(x ( n ) λ i (x x j ) f(x i ) x x j i Puisque la formule est exacte pour les polynômes d degré 0, on peut écrire pour f : ( n ) et donc = j (x x j ) (x x j ) = ce qui nous donne la formule barycentrique j n λ i x x i λ i x x i p n (x) = n λ i f(x i ) x x i n λ i x x i Pour l utiliser nous calculons d abord les λ i en O(n 2 ) opérations, function [lambda] = coeffbary(x) % COEFFBARY computes the coefficients for the barycentric % representation of the interpolating polynomial through % the points (x_i, y_i) n = length(x); x=x(:); for k = :n, lambda(k) = / prod(x(k) - x([:k-,k+:n])); end; puis pour chaque x nous calculons les poids µ i = λ i x x i et p n (x) = seulement O(n) opérations. n µ if(x i ) n µ i en 4

function [yy] = intbary(x, y,lambda, xx) % INTBARY evaluates the interpolating polynomial % through (x_i, y_i) for the values xx: yy = P_n(xx) x=x(:); y=y(:); xx = xx(:); nn = length(xx); for i = :nn, z = (xx(i)-x) + e-30; % prevents a division by zero mue = lambda./z; yy(i) = mue*y/sum(mue); end; 5..2 Formule de Newton On se donne les n + points x 0,, x n. Pour tout k plus petit que n, on note p k le polynôme d interpolation de f aux points x 0,, x k. On a p k p k = C(x x 0 ) (x x k ) Définition 5. Pour k + points y 0,, y k, on note f[y 0,, y k ] le coefficient de degré k du polynôme d interpolation de f aux points y 0,, y k. Lemme 5. Démonstration p k p k = f[x 0,, x k ](x x 0 ) (x x k ) Théorème 5.2 (Formule de Newton) n p n (x) = f(x 0 ) + f[x 0,, x k ](x x 0 ) (x x k ) (5.3) k=0 Démonstration Il suffit de sommer la formule de récurrence précédente. Lemme 5.2 (Formule des différences divisées) k, f[x 0,, x k ] = f[x,, x k ] f[x 0,, x k ] x k x 0 (5.4) 5

Démonstration D où la table de calcul Voici l algorithme matlab Fig. 5.3 table des différences divisées function [d,d] = coeffnewton(x, y) % COEFFNEWTON computes the divided differences needed for % constructing the interpolating polynomial through (x_i,y_i) n = length(x)-; % degree of interpolating polynomial The Interpolation Polynomial 335 % divided differences for i=:n+ D(i,) = y(i); for j = :i- D(i,j+) = (D(i,j)-D(i-,j))/(x(i)-x(i-j)); end end d = diag(d); Une fois les d i calculés, pour les utiliser nous couplons avec l algorithme de Hörner, en réécrivant le polynôme p n sous la forme p n (x) = d 0 + (x x 0 )(d + (x x )(d 2 + + (x x n 2 )(d n + (x x n )d n ))) 6

function y = intnewton(x,d,z) % INTNEWTON evaluates the Newton interpolating polynomial % at the new points z: y = P_n(z) using the Horner form % and the diagonal d of the divided difference scheme. n = length(x)-; y = d(n+) for i= n:-: y = y.*(z-x(i))+d(i); end; En fait ces différences divisées sont des approximations des dérivées : il existe un ξ dans l intervalle (inf(x i ), sup(x i )) tel que f[x 0,, x n ] = f(n+) (ξ) (n + )! En Matlab, on utilise la fonction polyfit pour l interpolation polynomiale. Cette fonction utilise une interpolation au sens des moindres carrés discrets (voir partie 3). 5..3 estimation d erreur Théorème 5.3 si f C n+ ([a, b]), x [a, b], ζ x appartenant au plus petit intervalle ouvert contenant x, x 0,, x n, tel que f(x) p n (x) = (n + )! f(n+) (ζ x )Π n+ (x) (5.5) où Π n+ (x) = n (x x i ). Démonstration On remarque d abord que l égalité est vraie si x est l un des x i. On suppose ensuite que x est fixé, non égal à l un des x i. On applique le théorème de Rolle n + fois à la fonction définie pour x fixé par où C est défini par F(x) = 0. F(t) = f(t) p n (t) CΠ n (t) 7

On déduit de ce théorème une estimation d erreur grossière. On note pour une fonction ϕ, ϕ = sup x [a,b] ϕ(x) f p n = (n + )! F n+ Π n+ (5.6) Pour une fonction f donnée, on minimise l erreur en choisissant bien les points d interpolation : Théorème 5.4 Sur un intervalle [a, b], Π n+ est minimale pour le choix des points x T i = a + b 2 + b a 2 yn+ i, 0 i n Les y n+ i = cos( 2i + 2(n + ) π) sont les zéros du polynôme de Chebyshev T n+. Polynômes de Chebyshev Pour tout k on définit sur [, ] la fonction T k (y) = cos(karc cosy) (5.7). C est en fait un polynôme de degré k. Pour voir ça on montre la formule de récurrence T k+ (y) = 2y T k T k, T 0 =, T = y, (5.8) ce qui permet de les définir sur tout R. Le coefficient dominant de T k est 2 k y k, ses zéros sont les yi k = cos ( 2i+π) pour 0 i k, et les extrema valent 2k ( )i, atteints aux points ỹi k = cos ( i π) pour 0 i k. k Lemme 5.3 Pour tout p P k unitaire (i.e. p = y k + ), on a p T k 2 k = 2 k Par suite, pour n importe quel choix des points d interpolation x 0,, x n, faisons un changement de variable x i = a + b 2 + b a 2 y i, 0 i n, x = a + b + b a 2 2 y Lorsque x varie dans l intervalle [a, b], y varie dans l intervalle [, ] et ( ) n+ b a n Π n+ (x) = (y y i ) 2 8

Minimiser l erreur est donc minimiser la norme infinie d un polynôme unitaire sur (, ], et inf Π n+ = (x x T i ) = 2 {x i } ( b a 4 ) n+ Remarque 5. Pour une division en points équidistants, i.e. x j = a + b a j, on n montre que e n Π n+ (b a) n+ nln n Pour (a, b) = (, ), la figure suivante montre le logarithme des erreurs en fonction de n dans les deux cas 0 5 points de Chebyshev 0 0 points équidistants 0 5 0 0 0 5 0 20 0 25 0 30 0 35 0 20 40 60 80 00 Fig. 5.4 Comparaison de Π n+ pour deux ensembles de points 5..4 Convergence de p n vers f Considérons la fonction f(x) = x+ 5 sin(x) sur [0,6] (ex de Quarteroni). 9

0 2 3 4 5 6 0.8 0.6 0.4 fn 2 n = 36 0.2 0 0.2 0.4 0.6 0.8.2 Fig. 5.5 interpolant On constate dans ce cas que la suite Π n (f) converge vers f. Ce n est pas vrai en général. Le contre-exemple classique est celui de la fonction de Runge f(x) = + 5x 2 : 8 7 6 f n = 2 n = 4 n = 4 5 4 3 2 0 0.5 0 0.5 Fig. 5.6 interpolant Bien que la fonction soit tout à fait régulière, on voit que l erreur en tend vers l infini. 5.2 Interpolation d Hermite f est toujours une fonction suffisamment régulière sur le segment [a, b]. On se donne k + points x 0,, x k dans [a, b]. 0

Théorème 5.5 Posons n = 2k +. Il existe un et un seul polynôme p n P n tel que j, 0 j k, p n (x j ) = f(x j ) et p n(x j ) = f (x j ). Théorème 5.6 si f C n+ ([a, b]), x [a, b], ζ x appartenant au plus petit intervalle ouvert contenant x, x 0,, x k, tel que f(x) p n (x) = (n + )! F n+ (ζ x )Π n+ (x) (5.9) où Π n+ (x) = k (x x i ) 2. p n dépend de 2k + 2 coefficients, nous allons l exprimer sous la forme p n (x) = k f(x i )q i (x) + où les polynômes q i et r i sont définis par q i(x j ) = δ ij, q i(x j ) = 0, k f (x i )r i (x) (5.0) r i (x j ) = 0, r i(x j ) = δ ij. (5.) On peut les déterminer en fonction des polynômes d interpolation de Lagrange l i : q i (x) = ( + 2(x i x)l i(x i ))l 2 i(x), r i (x) = (x x i )l 2 i(x). 5.3 Interpolation par morceaux Soient a a 0 < a < < a N b des points qui divisent l intervalle I = [a, b] en sous-intervalles I j = [a j, a j+ ] de longueur H = b a N, soit a j = a + jh. 5.3. Interpolation affine Sur chaque intervalle I j, on interpole f par un polynôme de degré inférieur ou égal à. On obtient un polynôme par morceaux, noté Π H f. Il s écrit Π H f(x) = f(a j) + f[a j, a j+ ](x a j ), x I j

Π H f f a H b Théorème 5.7 Si f C 2 (I), alors Fig. 5.7 interpolation affine par morceaux sup f(x) Π H f(x) H2 x I 8 sup x I Démonstration Il suffit d appliquer l estimation d erreur (5.6). f (x). (5.2) Remarque 5.2 Si f C n+ (I), on peut faire de même une interpolation par des polynômes de degré inférieur ou égal à n dans chaque sous-domaine et on obtient l estimation d erreur sup f(x) Π H n f(x) x I Hn+ 4(n + ) sup x I 5.3.2 Interpolation par fonctions splines f (n+) (x). (5.3) L inconvénient de la démarche précédente est que l approximation de f manque de régularité. Ici nous nous donnons y i = f(a i ) et aussi des valeurs y i que nous choisirons ensuite. Dans chaque sous-intervalle, nous interpolons la fonction f par un polynôme p i P 3 tel que p i (a i ) = y i, p i (a i+ ) = y i+, p i(a i ) = y i, p i(a i+ ) = y i+, Faisons le changement de variable y = (x a i )/H, et posons p(x) = P(y). On doit donc avoir P i (0) = y i, P i () = y i+ ; P i (0) = Hy i, P i () = Hy i+ ; 2

Nous utilisons les formules données pour les polynômes d Hermite. P i = y i q 0 + y i+ q + y i r 0 + y i+ r Les polynôme de Lagrange aux points 0 et sont l 0 = y, l = y, et les polynômes q i et r i sont donnés par q 0 (y) = (2y )( y) 2, q 0 (y) = (2y )y 2, r 0 (y) = y( y) 2, r i (y) = ( y)y 2. Comment maintenant calculer la valeur de p i en un point x?. Déterminer l intervalle [a i, a i+ ] où se trouve x. 2. Calculer la variable locale y = (x a i )/H. 3. Évaluer P i (y), de préférence par l algorithme de Hörner. Pour déterminer l intervalle où se trouve x, on utiliser un algorithme de recherche binaire si les intervalles ne sont pas de même taille. Sinon bien sûr on prend la partie entière de x/h. Les y i doivent approcher les dérivées f (a i ) qui ne sont pas données en général. On peut alors approcher par exemple f (a i ) par des différences divisées y i = f[a i, a i+ ] pour i N. Aux deux extrémités on peut prendre des dérivées décentrées y 0 = f[a 0, a ] et y N = f[a N, a N ]. Peut-on déterminer les y i de façon à être encore plus régulier? Par exemple que les dérivées secondes soient aussi continues? La réponse est oui, ce sont les vrais splines cubiques historiques. 3

4

5