Stge de Mthémtiques Appliquées ensimg, 1 re nnée 18 décembre 006 Les objectifs de ce stge sont les suivnts : 1. Aborder les spects prtiques du cours de Méthodes Numériques.. Acquérir l mîtrise du logiciel Scilb. 3. Développer un «mini-projet», qui ser évlué le vendredi décembre. Vous trvillerez en binômes, et vous devrez rédiger un compte-rendu de stge vec L A TEX, à l ide de documents qui vous seront fournis, ou que vous trouverez sur l pge http://www-lmc.img.fr/lmc-edp/crine.lucs/tpscilb06/ Le stge est divisé en trois prties. Vous devrez rendre le compte-rendu de l première vnt mrdi 19 à 17 h, u responsble de votre groupe. Vous déposerez le compte-rendu des deux utres prties dns l boîte prévue à cet effet vnt jeudi 1 à 17 h. Les compte-rendus devront comporter 5 pges u mximum, et il est interdit d y joindre vos progrmmes imprimés. Le vendredi, vous réliserez une soutennce de 10 minutes, suivie de 5 minutes de questions, où vous expliquerez ce que vous vez fit et compris pendnt le stge. Le stge est orgnisé pr Jen Dell Dor, et encdré pr : Groupe 1 : Crine Lucs. Groupe : Christophe Dmervl. Groupe 3 : Elie Bretin. Groupe 4 : Morgn Brssel. Les qutre encdrnts sont joignbles à l dresse prenom.nom@img.fr. Pour utiliser Scilb, vous devrez vous connecter u serveur ensibull, vi l commnde Unix «ssh -X ensibull», que vous entrerez dns un xterm sur telesun. Il suffit ensuite de tper l commnde scilb sur ensibull pour lncer Scilb. Vos fichiers de progrmmes, insi que les imges issues de Scilb, seront suvegrdés sur ensibull. Pour les trnsférer sur telesun, vous devrez utiliser l commnde «scp mon_fichier.sce telesun:~/mon_fichier.sce». Avnt de chercher à répondre ux questions, il est indispensble de svoir utiliser les commndes de bse de Scilb, que vous découvrirez dns le polycopié distribué. Vous pourrez y conscrer l première demi-journée du stge. Vous devrez vous ssurer de svoir (u moins) mnipuler des vecteurs et des mtrices, représenter grphiquement des fonctions, et exporter des grphiques u formt PostScript. Bon courge à tous, et n hésitez ps à fire ppel ux encdrnts ussi souvent que nécessire! 1 Interpoltion polynomile On se plce ici dns un cdre réel, en dimension un. On note P n l espce vectoriel des polynômes de degré inférieur ou égl à n. Etnt donnés n + 1 points distincts x 0 < < x n, et 1
n + 1 vleurs ssociées y 0,...,y n, on considère le problème d interpoltion suivnt : Trouver P n P n tel que P n (x i ) = y i, i = 0,...,n. (PI) Les bscisses x i sont ppelées nœuds d interpoltion. Les données y i pourront correspondre ux vleurs prises pr une fonction f : R R. Dns ce cs, on dit que P n interpole l fonction f ux nœuds x i. 1.1 Clcul du polynôme d interpoltion pr différentes méthodes Nous llons, dns cette première prtie, clculer l unique polynôme d interpoltion P n solution du problème (PI), pr les méthodes de Vndermonde, de Lgrnge, puis de Newton. L objectif est de comprer ces différentes pproches du point de vue numérique. Chque méthode revient à clculer P n dns une certine bse (Q k ) 0,...,n de P n. Le polynôme P n, décomposé dns cette bse, s écrit P n (x) = n α k Q k (x), k=0 où les α k sont des coefficients réels. Le clcul du polynôme d interpoltion consiste lors, une fois les Q k donnés, à déterminer les coefficients α k, pour k = 0,...,n. 1.1.1 Bse cnonique : système de Vndermonde Dns l bse cnonique de P n, le polynôme P n s écrit P n (x) = n α k x k. Pour que P n soit solution de (PI), les coefficients α k doivent vérifier k=0 n α k x k i = y i, i = 0,...,n. k=0 Autrement dit, les α k doivent être clculés comme solution du système linéire 1 x 1 0... x n 0 0 y 0 1 x 1 1... x n 1 1....... = y 1. 1 x 1 n... x n n n y n L mtrice de ce système est ppelée mtrice de Vndermonde. Si les x i sont distincts deux à deux, son déterminnt est non nul, et le système dmet une solution unique. Question 1 Ecrire une fonction V=mtrice_vnder(xi) qui prend en rgument un vecteur xi contennt les nœuds x i, et qui renvoie l mtrice de Vndermonde V ssociée. Afin de ggner en temps de clcul sous Scilb, on essier de minimiser le nombre de boucles for. Question Ecrire une fonction y=evl_poly(k,x) qui prend en rgument un vecteur de coefficients k et un vecteur d bscisses x, et qui renvoie les vleurs du polynôme P(x) = n k=0 kx k ux points de x.
Question 3 Ecrire une fonction y=interp_vnder(xi,yi,x) qui clcule, ux bscisses de x, les vleurs du polynôme P n interpolnt les (x i,y i ). Question 4 Tester les fonctions Scilb écrites sur le jeu de données x i 3 1 0 4 y i 0 1 1. Afficher l mtrice de Vndermonde obtenue, et trcer sur un même grphique le polynôme d interpoltion P n et les points (x i,y i ). Le principl inconvénient de cette méthode de clcul est son coût lgorithmique : l résolution du système linéire nécessite O(n 3 ) opértions, ce qui devient vite intolérble pour les grndes vleurs de n. 1.1. Bse de Lgrnge Les n + 1 polynômes qui constituent l bse de Lgrnge sont définis pr L k (x) = n j=0 j k x x j x k x j, k = 0,...,n, où les x j sont les nœuds d interpoltion du problème. On sit que, dns cette nouvelle bse, les coefficients du polynôme d interpoltion P n sont directement donnés pr les vleurs à interpoler y k, k = 0,...,n. Autrement dit, le polynôme P n s écrit, dns l bse de Lgrnge, P n (x) = n y k L k (x). k=0 L difficulté n est plus, comme vec l bse cnonique, de déterminer les coefficients α k, mis plutôt de construire les polynômes L k, qui dépendent des nœuds d interpoltion considérés. Question 5 Ecrire une fonction y=poly_lgrnge(xi,k,x) qui prend en rgument un vecteur xi contennt les nœuds d interpoltion, un entier k et un vecteur d bscisses x, et qui renvoie les vleurs du polynôme de Lgrnge L k ux points de x. Question 6 Afficher, sur un même grphique, les différents polynômes L k construits à prtir du jeu de données de l question 4. Question 7 Ecrire une fonction y=interp_lgrnge(xi,yi,x) qui clcule les vleurs du polynôme d interpoltion P n ssocié ux (x i,y i ), ux points de x. Question 8 Trcer, sur un même grphique, le polynôme P n et les points (x i,y i ). Comprer u résultt obtenu pr l méthode de Vndermonde. 1.1.3 Bse de Newton Les n + 1 polynômes de Newton ω k ssociés u problème (PI) sont définis pr ω 0 (x) = 1, k 1 ω k (x) = (x x 0 ) (x x k 1 ) = (x x j ), k = 1,...,n. 3 j=0
Supposons que les vleurs à interpoler y i soient les imges d une certine fonction f, c est-à-dire y i = f(x i ), i = 0,...,n. Le polynôme d interpoltion de f s écrit, dns l bse de Newton, P n (x) = n f[x 0,...,x k ]ω k (x), k=0 où les f[x 0,...,x k ] sont les différences divisées de Newton, clculées pr l formule de récurrence suivnte : f(x i ) si k = i, f[x i,...,x k ] = f[x i+1,...,x k ] f[x i,...,x k 1 ] x k x i si k i. On peut représenter cette formule pr un tbleu, dns lequel le terme (i,j) est clculé à prtir des éléments (i 1,j 1) et (i,j 1) : x 0 f[x 0 ] x 1 f[x 1 ] f[x 0,x 1 ] x f[x ] f[x 1,x ] f[x 0,x 1,x ].... x f[x n ] f[x n 1,x n ] f[x n,x n 1,x n ]... f[x 0,x 1,...,x n 1,x n ] Question 9 Ecrire une fonction Scilb T=diff_div(xi,yi), qui prend en rgument les points (x i,y i ), et qui renvoie, sous l forme d une mtrice T, le tbleu des différences divisées ci-dessus. Question 10 Ecrire une fonction y=interp_newton(xi,yi,x) qui renvoie les vleurs, ux bscisses de x, du polynôme P n interpolnt les (x i,y i ). Question 11 Comme précédemment, tester les fonctions Scilb écrites sur le jeu de données de l question 4. Question 1 On souhite jouter le point (0.5, ) u jeu de données précédent. Comment obtenir le nouveu polynôme d interpoltion sns reclculer toutes les différences divisées? Ecrire un progrmme Scilb pour le fire. 1. Quelques propriétés de l interpoltion polynomile Nous vons vu, dns l prtie précédente, comment clculer le polynôme d interpoltion de trois fçons différentes. Nous llons mintennt étudier certines propriétés de l interpoltion polynomile, qui sont indépendntes de l méthode utilisée pour le clcul du polynôme interpolteur. On pourr donc utiliser u choix l une des trois méthodes progrmmées précédemment. 1..1 Stbilité du polynôme d interpoltion On considère l fonction f(x) = sin(πx) sur l intervlle [ 1, 1], insi qu une subdivision vec nœuds équiréprtis. Question 13 A l ide de l commnde Scilb rnd, générer des données perturbées ỹ i des vleurs y i = f(x i ), vec l condition... mx ỹ i y i 9.5 10 4. i=0,...,1 4
Question 14 Trcer, sur un même grphique, les polynômes P 1 et P 1 qui interpolent respectivement les points (x i,y i ) et (x i,ỹ i ). Evluer numériquement sup P 1 (x) P 1 (x), x [ 1,1] et comprer cette vleur à l mplitude de l perturbtion imposée. 1.. Phénomène de Runge On cherche à interpoler l fonction sur l intervlle [ 5, 5]. f(x) = 1 1 + x Question 15 On choisit une réprtition uniforme des x i. Sur un même grphique, trcer l fonction f et les polynômes d interpoltion P 5, P 10 et P 15. Que remrque-t-on? Question 16 Effectuer ces mêmes trcés pour plusieurs réprtitions létoires des x i, obtenues vec l fonction Scilb rnd. Observe-t-on des différences? Question 17 On choisit mintennt les x i comme étnt les bscisses de Chebyshev ( ) i + 1 π x i = 5cos, i = 0,...,n. n + 1 Effectuer les mêmes trcés que précédemment. Que constte-t-on? Interpoltion pr morceux Nous venons de constter, vec le phénomène de Runge, que pour certines fonctions f, l erreur d interpoltion polynomile sur un intervlle [, b] pouvit ne ps tendre vers 0 et même diverger lorsque le degré n du polynôme d interpoltion tendit vers l infini. Une solution consiste à pprocher l fonction f sur des sous-intervlles de [, b], pr des polynômes de degré peu élevé. On pourr, pr ce moyen, obtenir une meilleure pproximtion de f. Dns un premier temps, nous nous contenterons d une subdivision uniforme de l intervlle [, b], et notre objectif ser de comprer les résultts obtenus en utilisnt d une prt une interpoltion linéire pr morceux, d utre prt une interpoltion pr fonctions splines. Ensuite, nous chercherons à dpter l subdivision de l intervlle [, b] à l fonction f à interpoler, de mnière à méliorer notre pproximtion. Pour cel, nous étudierons un critère qui permet d jouter des points à l subdivision ux endroits où f est peu régulière..1 Interpoltion pr morceux vec subdivision uniforme On utilise, dns cette première prtie, une subdivision uniforme de l intervlle [,b], donnée pr = x 0 < < x n = b, vec x i = + i n (b ), i = 0,...,n. 5
.1.1 Interpoltion linéire pr morceux Le principe est le suivnt : on clcule, sur chque [x i,x i+1 ], le polynôme p i de degré 1 qui vérifie p i (x i ) = f(x i ) et p i (x i+1 ) = f(x i+1 ). On note lors P l fonction linéire pr morceux, continue, définie pour t dns [,b] pr P(t) = p i (t) si t [x i,x i+1 ], i = 0,...,n 1. Cette fonction P interpole bien f en tous les points x i. Dns l suite, nous noterons α i et β i les coefficients du polynôme p i, de fçon à ce qu il s écrive p i (t) = β i (t x i ) + α i pour tout t de [x i,x i+1 ], i = 0,...,n 1. Question 18 Ecrire une fonction Scilb [lphi,beti]=pwl(xi,yi) qui clcule les coefficients de tous les polynômes p i, à prtir des points (x i,y i ), où y i = f(x i ). Question 19 Ecrire une fonction y=pwlevl(lphi,beti,xi,x) qui, à prtir des coefficients polynomiux clculés pr pwl et des points x i, évlue P ux bscisses du vecteur x. On tenter de réduire le temps de clcul en utilisnt le fit que les x i sont ordonnés, et en utilisnt une recherche pr dichotomie. Question 0 Trcer l fonction définie, pour x dns [0,3], pr f(x) = 1 (x 0.3) + 0.01 + 1 (x 0.9) + 0.04 6, insi que le polynôme pr morceux P qui l interpole, vec n = 10 puis n = 100. Comprer u résultt obtenu lorsqu on interpole f sur tout [0,3] pr un polynôme de degré 10. Il est possible de mesurer l erreur d interpoltion commise lorsqu on remplce f pr l fonction linéire pr morceux P. En effet, si x [x i,x i+1 ], on peut montrer qu il existe η ]x i,x i+1 [ tel que f(x) = P(x) + f (η) (x x i )(x x i+1 ). Si l on suppose qu il existe M tel que sup x [,b] f (x) M, ce qui est pr exemple le cs si f est de clsse C sur [,b], et si l on note h l longueur du plus grnd intervlle de l subdivision, on obtient l mjortion suivnte : sup f(x) P(x) Mh x [,b] 8. Dns le cs d une subdivision uniforme, h est égl à b n. Pour obtenir une erreur d interpoltion inférieure à une précision δ donnée, il suffit donc de choisir le nombre de points n + 1 de l subdivision tel que M n (b ) 8δ. Question 1 Clculer cette borne pour l fonction f de l question 0, vec une précision δ = 0.1..1. Interpoltion pr splines cubiques Nous voulons mintennt construire des polynômes d interpoltion pr morceux plus réguliers. Pour cel, nous considérons des polynômes p i de degré 3 sur chque sous-intervlle [x i,x i+1 ], uxquels on impose les conditions suivntes : p i (x i ) = f(x i ) et p i (x i+1 ) = f(x i+1 ), i = 0,...,n 1, p i(x i ) = p i 1(x i ), i = 1,...,n 1, p i (x i) = p i 1 (x i), i = 1,...,n 1. 6
On note encore P l fonction définie sur chque intervlle pr P(t) = p i (t) si t [x i,x i+1 ], i = 0,...,n 1. Les conditions sur les p i et les p i ssurent que P est de clsse C sur [,b]. Nous voulons définir n polynômes de degré 3, ce qui fit 4n coefficients à déterminer, mis pour l instnt, nous n vons imposé que n + (n 1) conditions. Les deux dernières conditions détermineront le type d interpoltion pr splines cubiques utilisé. Pr exemple, dns le cs des splines cubiques «normles», on impose p 0 (x 0) = 0 et p n 1 (x n) = 0. Le clcul des polynômes p i est ssez fstidieux à implémenter. Heureusement, Scilb dispose de fonctions spécilement dédiées à l interpoltion pr splines cubiques. Question En utilisnt les fonctions splin et interp de Scilb penser à utiliser l commnde help, trcer l courbe spline «normle» et l courbe spline «not knot» de l fonction f définie à l question 0. On utiliser une subdivision uniforme vec n = 10, puis n = 100. Nous llons mintennt déterminer l ordre de l interpoltion pr splines cubiques, de mnière expérimentle. Question 3 Trcer, en fonction du ps de l subdivision utilisée, l erreur en norme entre l fonction f et son interpoltion pr splines cubiques. Comprer u résultt énoncé pour l interpoltion linéire pr morceux.. Recherche d une meilleure subdivision pour l interpoltion pr morceux Dns cette prtie, nous llons chercher à construire une subdivision telle que l longueur des sous-intervlles [x i,x i+1 ] dépende de l régulrité de l fonction f à interpoler. On note P k le polynôme de degré k qui interpole l fonction f sur l intervlle [,b]. L méthode proposée consiste à vérifier si le polynôme P k est «ssez proche» de f, dns un sens que nous llons préciser. Si c est le cs, on dit que l intervlle [,b] est dmissible. Si ce n est ps le cs, on divise l intervlle en deux, on clcule les polynômes d interpoltion sur les deux sous-intervlles, et on fit un nouveu test sur chcun d eux. On s rrête dès que tous les sousintervlles sont dmissibles. On obtient, pr ce principe, une subdivision non régulière de l intervlle [, b], qui ssure que l erreur d interpoltion commise est inférieure à une précision que l on peut fixer à l vnce...1 Un critère d ordre 1 Dns ce premier exemple, nous dirons qu un intervlle [x i,x i+1 ] est dmissible pour f s il vérifie le critère suivnt : ( ) soit f xi + x i+1 f(x i) + f(x i+1 ) δ, soit x i+1 x i h min, où δ et h min sont des réels fixés. Le premier test mesure l erreur d interpoltion entre f et P 1 u milieu de l intervlle [x i+1,x i ]. Le deuxième test permet d ccepter l intervlle lorsque s longueur est suffisment petite. 7
f P 1 f()+f(b) f( +b ) +b b Question 4 Ecrire une fonction Scilb récursive, qui renvoie une subdivision telle que tous les intervlles [x i,x i+1 ] soient dmissibles pour le critère donné. Question 5 Appliquer cet lgorithme à l fonction f de l question 0, vec pour prmètre h min le ps h correspondnt à l borne n clculée à l question 1, et pour prmètre δ, 0.1. Trcer l interpoltion linéire pr morceux et l interpoltion pr splines cubiques de f en utilisnt l subdivision obtenue. Que dire du résultt obtenu? Question 6 Appliquer le même lgorithme à l fonction f(x) = sin(x) sur [0,π]. Que dire de l subdivision obtenue? Proposer une condition suffisnte sur l fonction f pour que l lgorithme fonctionne correctement... Un critère d ordre On utilise mintennt le critère d dmissibilité suivnt : { soit f(µ) P (µ) δ et f(ν) P (ν) δ, soit x i+1 x i h min, où P est le polynôme d interpoltion de degré de f sur [,b], µ = 1 4 (3 + b) et ν = 1 4 ( + 3b). f P f(ν) f(µ) P (ν) P (µ) µ +b ν b Question 7 Ecrire l fonction Scilb qui implémente ce nouveu critère. 8
Question 8 Appliquer cet lgorithme à f(x) = sin(x) sur [0,π] vec h min = 0.01 et δ = 0.01. Que dire de l subdivision obtenue? Trcer l interpoltion linéire pr morceux et l interpoltion pr splines cubiques de f en utilisnt l subdivision obtenue. Question 9 Proposer une fonction pour lquelle le nouvel lgorithme ne fonctionne ps correctement. A quoi ressemblerit un critère d ordre n? 3 Intégrtion numérique Nous nous proposons, dns cette dernière prtie, de clculer numériquement des intégrles définies. Dns l suite, f désigne une fonction réelle, intégrble sur un intervlle [, b], et nous cherchons à pprocher l intégrle I(f) = f(x)dx, dont le clcul explicite peut être difficile, voire impossible. Une formule de qudrture à m points pour l intégrle I(f) est une pproximtion de l forme m 1 Q m (f) = (b ) w i f(x i ), c est-à-dire une somme pondérée de vleurs de f en des points (x i ) 0,...,m 1 de l intervlle [,b]. On dit que ces points sont les nœuds de l formule de qudrture, et que les nombres w i R sont ses poids même si les poids réels sont en fit les (b )w i. Les poids et les nœuds dépendent de m mis ps de f. Nous commencerons pr étudier les formules de Newton-Cotes, puis nous borderons les formules dites «composites», qui consistent à prtitionner l intervlle [, b] en sous-intervlles, puis à ppliquer une formule de Newton-Cotes simple sur chcun d eux. Enfin, nous étudierons une méthode permettnt de créer une prtition dpttive de l intervlle [,b], vec contrôle de l erreur. 3.1 Les formules de Newton-Cotes Une mnière d obtenir une formule de qudrture est d intégrer une pproximtion polynomile de l fonction f. L idée est que si les deux fonctions sont proches, leurs intégrles le sont ussi. Ainsi, pour m, l formule de Newton-Cotes à m points est définie pr Q NC(m) = i=0 P m 1 (x)dx, où P m 1 est le polynôme de degré m 1 qui interpole f ux points x i = + i = 0,...,m 1. i m 1 (b ), Question 30 Montrer, éventuellement en utilisnt Scilb, que, pour m =, on obtient l formule des trpèzes Q NC() = b ( ) f() + f(b). De l même fçon, pour m = 3, on l formule de Simpson Q NC(3) = b ( ( ) ) + b f() + 4f + f(b), 6 9
pour m = 4, Q NC(4) = b 8 ( f() + 3f ( + b 3 ) + 3f ( + b 3 ) ) + f(b), et pour m = 5, Q NC(5) = b 90 ( 7f() + 3f ( 3 + b 4 ) + 1f ( + b ) + 3f ( + 3b 4 ) ) + 7f(b). Question 31 Progrmmer ces qutre formules. On pourr procéder comme suit : écrire une fonction NCpoids qui définit les poids des différentes formules en fonction de m, puis écrire une fonction QNC qui clcule l vleur de Q NC(m). Il est possible de déterminer l erreur de ces différentes pproximtions, suivnt les vleurs de m. On peut montrer, pr exemple, que si f est u moins de clsse C 4 sur [,b], lors l erreur pour l formule de Simpson est donnée pr où M 4 = sup x [,b] f (4) (x). f(x)dx Q NC(3) (b )5 880 M 4, Question 3 Qu obtient-on si f est un polynôme de degré 3? Dns le cs générl, on définit l entier d pr { m si m est impir, d = m 1 si m est pir, et on sit que si f est de clsse C d+1 sur [,b], lors il existe η dns [,b] et c m dns R tels que ( ) b d+ f(x)dx = Q NC(m) + c m f (d+1) (η). m 1 Ainsi, si l on note M d+1 = sup x [,b] f (d+1) (x), on l formule d erreur ( ) b d+ f(x)dx Q NC(m) c m M d+1. m 1 A moins que (b ) ne soit petit, cette formule montre que l pproximtion de I(f) pr les formules de Newton-Cotes n est ps stisfisnte. Une idée pour méliorer l pproximtion est de diviser l intervlle de déprt, et d ppliquer les formules de Newton-Cotes sur chque sousintervlle. C est l objet de l prtie qui suit. 3. Les formules composites Soit = z 0 < < z n = b une subdivision de l intervlle [,b], on peut écrire n 1 f(x)dx = i=0 zi+1 z i f(x)dx. 10
En ppliqunt l formule Q NC(m) à chque sous-intégrle, on obtient une formule de qudrture composite. On note Q (n) l pproximtion de I(f) insi obtenue, définie comme l somme des NC(m) pproximtions sur chque sous-intervlle. Nous verrons plus loin comment construire une bonne prtition de l intervlle [,b], c est-àdire comment choisir les z i. Pour le moment, nous ne considérons que des formules composites sur subdivisions uniformes : z i = + ih, i = 0,...,n, vec h = b n. Question 33 Ecrire une fonction CompQNC qui, en fisnt ppel à QNC, clcule Q (n) NC(m). Question 34 Comment réécrire CompQNC, cette fois sns ppel à QNC, de sorte à ne fire qu une seule évlution de l fonction f en chcun des points? On peut à nouveu chercher à connître l erreur de notre pproximtion. Question 35 On note η i les nombres qui pprissent dns l erreur de l formule de Newton- Cotes sur chque intervlle [z i,z i+1 ]. En dmettnt qu il existe η dns [,b] vérifint 1 n n f (d+1) (η i ) = f (d+1) (η), i=1 montrer que l on l estimtion d erreur suivnte pour l formule composite : ( ( ) ) f(x)dx Q (n) b d+ NC(m) 1 c m M d+1 m 1 n d+1. Que dire de cette erreur lorsqu on fit tendre le nombre de points de l subdivision vers +? Question 36 Pour une fonction f dont l intégrle est connue sur un intervlle [, b], trcer l erreur d pproximtion définie à l question précédente en fonction de n, ou mieux, en fonction du ps h de l subdivision. Qu obtient-on lorsqu on effectue le trcé en échelle logrithmique? Est-ce cohérent vec l estimtion d erreur obtenue? 3.3 Qudrture dpttive L erreur des formules composites précédentes est liée à f (d+1). Suivnt l fonction f, il peut donc être intéressnt d utiliser une subdivision non régulière, vec beucoup de points ux endroits où f (d+1) vrie beucoup, et inversement, peu de points là où elle vrie peu. Pour construire une telle subdivision, il nous fut voir une estimtion de l erreur. Nous pourrons insi «ffiner» l prtition tnt que l erreur ser trop grnde. Une fçon d obtenir une telle estimtion est d utiliser deux méthodes de qudrture différentes : l différence entre les deux vleurs de l intégrle prévues pr ces méthodes donner une mesure de leur imprécision. Pour m fixé, on pose I = I(f), A 1 = Q (1) NC(m) et A = Q () NC(m). On sit qu il existe η 1 et η dns [,b] tels que ( b I = A 1 + c m f (d+1) (η 1 ) m 1 ( b I = A + c m f (d+1) (η ) m 1 ) d+, ) d+ 1 d+1. 11
Si f (d+1) (η 1 ) et f (d+1) (η ) sont suffismment proches l un de l utre, on peut fire l hypothèse que f (d+1) (η 1 ) = f (d+1) (η ), ce qui permet d écrire I = A 1 + C, I = A + C 1 d+1, où l on posé On en déduit que et donc que ( ) b d+ C = c m f (d+1) (η 1 ). m 1 C = A A 1 1 1, d+1 I A = A A 1 d+1 1, ce qui nous donne une estimtion de l erreur commise en pprochnt I pr A. Question 37 En utilisnt le clcul ci-dessus, écrire une fonction Scilb récursive qui clcule I(f) vec une précision choisie pr l utilisteur. Tester cette fonction, pour toutes les vleurs de m entre à 5, sur les exemples suivnts : f(x) = sin x sur [0,π], f(x) = x (x 0.5) (x 1) sur [0,1]. Représenter l subdivision obtenue dns chque cs. Que peut-on remrquer? 1