0% ont trouvé ce document utile (0 vote)
0 vues5 pages

CC2 AnaNum 2024 2025 Sol

Le document présente une solution détaillée à un contrôle continu d'analyse numérique, abordant des concepts tels que l'interpolation de Lagrange et les erreurs d'approximation. Il inclut des exercices sur les polynômes d'interpolation, les algorithmes barycentriques, et des méthodes d'intégration numérique en Python. Des résultats théoriques et des algorithmes pratiques sont fournis pour illustrer les concepts discutés.

Transféré par

chkayfa dahbi
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
0 vues5 pages

CC2 AnaNum 2024 2025 Sol

Le document présente une solution détaillée à un contrôle continu d'analyse numérique, abordant des concepts tels que l'interpolation de Lagrange et les erreurs d'approximation. Il inclut des exercices sur les polynômes d'interpolation, les algorithmes barycentriques, et des méthodes d'intégration numérique en Python. Des résultats théoriques et des algorithmes pratiques sont fournis pour illustrer les concepts discutés.

Transféré par

chkayfa dahbi
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
Vous êtes sur la page 1/ 5

L3 M-MA, L3 DL ME, L2 DL MI Année universitaire 2024-2025

Gilles Stupfler [email protected]

Solution du contrôle continu no 2 d’Analyse numérique, durée 2h30

Exercice 1. Soient [a, b] un intervalle non réduit à un point, f une fonction définie sur [a, b]
à valeurs réelles, et x1 , . . . , xn des points distincts de l’intervalle [a, b], avec n ≥ 1. On note
w, w1 , . . . , wn les fonctions polynomiales définies par
n
Y n
Y
w(x) = (x − xj ) et wi (x) = (x − xj ) pour tout i ∈ {1, . . . , n}.
j=1 j=1
j̸=i

On note Pn le polynôme d’interpolation de Lagrange de f aux points x1 , . . . , xn .

1. On a n Y
n
X
w′ (x) = (x − xj ).
i=1 j=1
j̸=i

Soit i ∈ {1, . . . , n}. Le polynôme w′ est une somme de polynômes qui s’annulent tous en xi ,
sauf le i−ème. Par conséquent
n
Y

w (xi ) = (xi − xj ) = wi (xi )
j=1
j̸=i

comme annoncé.

2. Le polynôme Pn vaut
n n n
X Y x − xj X wi (x)
Pn (x) = f (xi ) = f (xi ) .
i=1
x − xj
j=1 i i=1
wi (xi )
j̸=i

Soit x ∈ [a, b]\{x1 , . . . , xn }. On a w(x) = (x−xi )wi (x), et on a vu ci-dessus que w′ (xi ) = wi (xi ).
De ceci on tire n
X w(x)
Pn (x) = f (xi )
i=1
w′ (x i )(x − xi )

ce qu’il fallait montrer.

3. On sait que, quel que soit n ≥ 1, le polynôme de Lagrange de la fonction constante égale à 1
aux points x1 , . . . , xn est constant égal à 1. En appliquant le résultat ci-dessus pour f constante
égale à 1, on obtient
n
X w(x)
∀x ∈ [a, b] \ {x1 , . . . , xn }, 1 =
i=1
w′ (xi )(x − xi )

1
ce qui est exactement la formule souhaitée.

4. Des deux questions précédentes on déduit que


n
X w(x)
∀x ∈ [a, b] \ {x1 , . . . , xn }, Pn (x) = f (xi )
i=1
w′ (x i )(x − xi )
n
, n
X w(x) X w(x)
= f (xi ) ′
i=1
w (xi )(x − xi ) i=1
w′ (x i )(x − xi )
n
X 1
f (xi )
i=1
w′ (x i )(x − xi )
= n
X 1
i=1
w′ (x i )(x − xi )

ce qui constitue le résultat souhaité. Lorsque x ∈ {x1 , . . . , xn }, il y a toujours égalité en


prolongeant l’expression sous forme barycentrique par sa limite en chacun des xi , puisque la
limite en question en x = xi est égale à f (xi ), qui est la valeur de Pn (xi ) par construction.

5. La valeur de Pn (x) est donc le barycentre des f (xi ) affectés des poids 1/(w′ (xi )(x − xi )),
d’où la terminologie « barycentrique » pour cette formule.

6. Un algorithme qui convient est

Algorithm 1 Lagrange barycentrique


Require: f : [a, b] → R, a ≤ x1 < x2 < · · · < xn ≤ b ∈ R, x ∈ [a, b] \ {x1 , . . . , xn }
N ← 0, D ← 0
for 1 ≤ i ≤ n do
p ← x − xi
for 1 ≤ j ≤ n do
if j ̸= i then
p ← p(xi − xj )
end if
end for
N ← N + f (xi )/p
D ← D + 1/p
end for
return N/D

7. Cet algorithme coûte environ 2n2 opérations. Il est donc plus économique que l’implémentation
naı̈ve de l’interpolation de Lagrange, mais plus coûteux que l’algorithme des différences divisées.

Exercice 2. Soient a < b deux réels, n un entier naturel strictement positif, x1 , . . . , xn des
éléments distincts de [a, b] et λ1 , . . . , λn des réels. Pour toute fonction f continue sur [a, b] à
valeurs réelles, on pose
n
X Z b
I(f ) = λi f (xi ) et E(f ) = f (x) dx − I(f ).
i=1 a

2
et on note, pour tous r entier strictement positif et t, x ∈ [a, b],

(x − t)r si x > t,
ψr,t (x) = (max(0, x − t))r =
0 si x ≤ t.

Rb
1. La quantité |E(f )| représente l’erreur commise dans l’approximation de a
f (x) dx par I(f ).

2. Soient f, g : [a, b] → R continues et µ ∈ R. Alors


Z b
E(f + µg) = (f + µg)(x) dx − I(f + µg)
a
Z b n
X
= (f + µg)(x) dx − λi (f + µg)(xi )
a i=1
n n
!
Z b X Z b X
= f (x) dx − λi f (xi ) + µ g(x) dx − λi g(xi )
a i=1 a i=1

par linéarité de l’intégrale, ce qui signifie exactement que E(f + µg) = E(f ) + µE(g).

3. Quel que soit r entier strictement positif, on a ψr,t (x) = (max(0, x − t))r . La fonction
(t, x) 7→ max(0, x − t) est le maximum de deux fonctions continues sur [a, b] × [a, b], ce qui
implique qu’elle est continue sur [a, b] × [a, b]. Il en résulte que (t, x) 7→ ψr,t (x), qui est sa
puissance r−ième, est aussi continue sur [a, b] × [a, b].

4. Le fait que t 7→ I(ψr,t ) soit continue découle directement de la continuité de (t, x) 7→ ψr,t (x).
Rb
La continuité de t 7→ a ψr,t (x) dx est une conséquence immédiate de la continuité de (t, x) 7→
ψr,t (x) et du théorème de convergence dominée (ou, de manière équivalente, du théorème de
R
continuité d’une intégrale à paramètre sous le signe ). La continuité de Kr s’ensuit.

5. La formule de Taylor avec reste intégral donne, pour tout x ∈ [a, b],
r x
f (k) (a) (x − t)r (r+1)
X Z
k
f (x) = (x − a) + f (t) dt
k=0
k! a r!

ce qui est exactement l’égalité f (x) = P (x) + R(x). On a vu à la question 2 que E(f ) =
E(P + R) = E(P ) + E(R), et puisque la méthode I est d’ordre au moins r et que P est un
polynôme de degré au plus r, on a E(P ) = 0. Par conséquent E(f ) = E(R).

6. On a pour tout x ∈ [a, b],


Z b Z x Z b
ψr,t (x) (r+1) ψr,t (x) (r+1) ψr,t (x) (r+1)
f (t) dt = f (t) dt + f (t) dt.
a r! a r! x r!

La deuxième intégrale du membre de droite est nulle, puisque ψr,t (x) = 0 lorsque t ≥ x. On a

3
ainsi
b x x
(x − t)r (r+1)
Z Z Z
ψr,t (x) (r+1) ψr,t (x) (r+1)
f (t) dt = f (t) dt = f (t) dt = R(x)
a r! a r! a r!

comme annoncé.

7. On a
Z b
E(f ) = E(R) = R(x) dx − I(R)
a
Z b Z b  n Z b
ψr,t (x) (r+1) X ψr,t (xi ) (r+1)
= f (t) dt dx − λi f (t) dt.
a a r! i=1 a r!

Le théorème de Fubini (appliqué à la fonction continue (t, x) 7→ ψr,t (x)f (r+1) (t)/r! sur [a, b] ×
[a, b], donc bornée) donne
Z b Z b n
Z bX
f (r+1) (t) f (r+1) (t)

E(f ) = E(R) = ψr,t (x) dx dt − λi ψr,t (xi ) dt
a a r! a i=1
r!
n
!
b b
f (r+1) (t)
Z Z X
= ψr,t (x) dx − λi ψr,t (xi ) dt
a a i=1
r!
Z b (r+1) Z b
f (t) 1
= E(ψr,t (x)) dt = Kr (t)f (r+1) (t) dt
a r! r! a

ce qu’il fallait montrer.

8. Le fait que
b
maxa≤t≤b |f (r+1) (t)|
Z
|E(f )| = |E(R)| ≤ |Kr (t)| dt
r! a

découle immédiatement de la question précédente et de l’inégalité triangulaire, en utilisant le fait


que la fonction f (r+1) est continue sur [a, b]. Ce résultat constitue une inégalité « universelle » sur
toute méthode d’ordre r, au sens où il suffit, pour obtenir une borne sur l’erreur, de majorer
l’erreur commise sur la seule fonction intervenant dans le noyau de Peano Kr .

Exercice 3. On donne le code Python suivant, dans lequel a et b sont deux réels, f est une
fonction et N est un entier naturel strictement positif.
def h (a ,b ,f ,N , me ) :
ans =0
s =( b - a ) / N
if me == " A " :
for i in range ( N ) :
ans += s * f ( a +( i +1) * s )
elif me == " B " :
for i in range ( N ) :
ans +=(1/3) * s *( f ( a + i * s ) + f ( a +(2* i +1) * s /2) + f ( a +( i +1) * s ) )

4
return ans

Rb
1. L’utilisation de cette fonction retourne la valeur de l’approximation de a
f (x) dx par la
méthode des rectangles à droite avec un pas (b − a)/N si me=="A", et elle retourne

N −1       
b−a X 1 b−a b−a b−a
f a+i + f a + (2i + 1) + f a + (i + 1)
N i=0 3 N 2N N

si me=="B".

2. On écrira par exemple


def h (a ,b ,f ,N , me ) :
ans =0
s =( b - a ) / N
if me == " A " :
for i in range ( N ) :
ans += s * f ( a + i * s )
elif me == " B " :
for i in range ( N ) :
ans += s * f ( a +(2* i +1) * s /2)
elif me == " C " :
for i in range ( N ) :
ans +=(1/6) * s *( f ( a + i * s ) +4* f ( a +(2* i +1) * s /2) + f ( a +( i +1) * s ) )
return ans

3. Python retourne successivement f (0) + f (1) = 1, f (1/2) + f (3/2) = 1 et

1
(f (0) + 4f (1/2) + f (1) + f (1) + 4f (3/2) + f (2)) = 1.
6

4. Python retourne successivement

2 2
(f (0) + f (2/3) + f (4/3)) = 8/9, (f (1/3) + f (1) + f (5/3)) = 10/9
3 3

et

2 1 28
× (f (0) + 4f (1/3) + f (2/3) + f (2/3) + 4f (1) + f (4/3) + f (4/3) + 4f (5/3) + f (2)) = .
3 6 27

5. L’intégrale recherchée est précisément 1, ce qui implique que les trois méthodes sont exactes
pour N = 2, mais inexactes pour N = 3, et dans ce cas-ci la méthode du point médian a la
même précision que la méthode des rectangles. Ceci est dû au fait que f n’est pas dérivable en
1, et que pour N = 2, ce point de non-dérivabilité est un point de la subdivision utilisé pour
calculer les trois approximations, alors qu’il ne l’est pas pour N = 3.

Vous aimerez peut-être aussi