indications correction mai 2024

Modérateur : xcasadmin

parisse
Messages : 5894
Inscription : mar. déc. 20, 2005 4:02 pm
Contact :

indications correction mai 2024

Message par parisse » dim. mai 26, 2024 12:27 pm

Sujet https://www-fourier.univ-grenoble-alpes ... 06et24.pdf

Exercice 1
1.1/ on supprime le terme constant et on divise par x,
j=1(1)jx2j1(2j)!
Et R=+ (celui de cosinus)
1.2/ On intègre terme à terme
F(x)=j=1(1)jx2j(2j)!2j
1.3/ pour x=1 la série est alternée (alternance de signe et décroissance vers 0), si on arrête la somme à l'indice n, alors le reste est majoré en valeur absolue par 1(2(n+1))!2(n+1) qui devient plus petit que 1e-8 pour n=5. Donc
|F(1)5j=1(1)jx2j(2j)!2j|<1e8
la somme vaut

Code : Tout sélectionner

sum((-1)^j/(2j)!/2/j,j,1,5)
-17404577/72576000, environ -0.239811742174
On peut vérifier en calculant

Code : Tout sélectionner

integrate((cos(t)-1)/t,t,0.0,1)
1.4/
x1cos(t)t dt=x1cos(t)1t dt+x1dtt=F(x)F(1)+ln(x)

Exercice 2
2.1 IN(1)=16N(f(0)+f(1)+2N1j=1f(jN)+4N1j=0f(j+1/2N)f(t)=tan(t2)
2.2 On calcule f4 la dérivée 4-ième de f

Code : Tout sélectionner

f(t):=tan(t^2); f4:=diff(f(t),t,4)
On observe que tous les termes de la somme de f4 sont positifs et croissants sur l'intervalle [0,1], donc le maximum de f4 est obtenu en t=1 et vaut f4(t=1.0)<9185. On peut donc majorer l'erreur de la méthode de Simpson par 9185/2880/N^4. On veut une erreur plus petite que 1e-3, donc N^4>=9185/2880/1e-3 donc N>=(9185/2880/1e-3)^(1/4) donc N>=8, pour N=8 on a

Code : Tout sélectionner

N:=8; 1/6/N*(f(0)+f(1.0)+2*sum(f(j/N),j,1,N-1)+4*sum(f((j+.5)/N),j,0,N-1))
qui vaut environ 0.3984. On vérifie avec

Code : Tout sélectionner

integrate(tan(t^2),t,0.0,1)
2.3/ N convient pour calculer F(x) pour tout x dans [0,1], car le majorant de la dérivée 4ième sur [0,1] l'est à fortiori sur [0,x]. Et donc aussi sur [-1,0] par parité/imparité.
2.4/ Si on ne tient pas compte des erreurs d'arrondis, l'erreur totale sera ϵ+M42880N4 car on somme 6N termes avec une erreur absolue de ϵ, ce qui donne une erreur absolue de 6Nϵ puis on divise par 6N.
Pour étudiants avancés: Si on tient compte des erreurs d'arrondis dans la somme (erreur relative supposée être en ϵ), il faut ajouter (cf. https://www-fourier.univ-grenoble-alpes ... html#sec10) un terme proportionnel à
ϵ6Nj=1(6Nj)=ϵ3N(6N1)

Code : Tout sélectionner

factor(sum((6N-j),j,1,6N))
si la somme est faite naïvement, ensuite on divise par 6N, donc on obtient environ ϵ3N.
2.5/ Sans tenir compte des erreurs d'arrondis, plus N est grand, plus l'erreur sera petite, mais elle restera toujours au moins d'ordre ϵ. Le N optimal est donc de l'ordre de grandeur tel que les deux termes d'erreurs sont égaux, soit
ϵ=M42880N4
donc N de l'ordre de 20 000, pour une erreur d'ordre 2e-17.
En tenant compte des erreurs d'arrondi, on aura plutôt
3Nϵ=M42880N4
donc N de l'ordre de 4000, pour une erreur de l'ordre de 1e-13.
2.6/ (Bonus pour étudiants avancés) cela correspond à l'hypothèse que les erreurs se comportent comme des variables aléatoires indépendantes, la variance d'une somme d'erreurs est la somme des variances.
Sans tenir compte des erreurs d'arrondi, ϵ est remplacé par ϵ/N et donc l'erreur tend vers 0, pour N petit en 1/N^4 mais pour N grand en 1/sqrt(N) ce qui est très lent, on a donc intérêt à s'arrêter lorsque les 2 erreurs deviennent proches, N de l'ordre du millier avec une erreur presque toujours plus petite que 1e-15.
Si on tient compte des erreurs d'arrondi, la variance de la somme des erreurs d'arrondi va se comporter comme

Code : Tout sélectionner

factor(sum((6N-j)^2,j,1,6N))
en 2*36*N^3, donc l'écart-type en sqrt(2N)*6*N, on divise par 6N, on obtient une erreur d'arrondi totale d'écart-type 2Nϵ. Le N optimal est donc lorsque l'erreur de Simpson est de l'ordre de grandeur de cet écart-type, soit N proche des 10 000

Code : Tout sélectionner

(sqrt(2)*9185/2880/1e-17)^(1/4.5)
avec une erreur en 1e-15.

parisse
Messages : 5894
Inscription : mar. déc. 20, 2005 4:02 pm
Contact :

Re: indications correction mai 2024

Message par parisse » dim. mai 26, 2024 5:19 pm

Exercice 3

Code : Tout sélectionner

f(x):=tan(x^2)-x-1
3.1/

Code : Tout sélectionner

f1:=f'; f2:=diff(f(x),x,2)
renvoie f(x)=2x(1+tan2(x2))1,f(x)=8x2tan3(x2)+8x2tan(x2)+2tan2(x2)+2
Tous les termes de f'' sont positifs, car tan(x^2) est positif dans l'intervalle [-1.1,1.1] (x2<=1.21<π/2), donc f est convexe. Comme f'(0)=-1 et f' croissante, f' est bien négative sur [-1.1,0].
f'(1.1)=16.6 et il ne peut pas y avoir de perte de précision importante quand on soustrait 17.6 et 1 (ces 2 nombres ne sont pas proches), donc f'(1.1)>0 et f' s'annule une fois sur [0,1.1] en x0.
3.2/ f(0)=-1, f(-1.1) et f(1.1) sont positifs (valeurs approchées) donc f décroit de -1.1 à x0 (avec f(x0)<0 puisque f(0)=-1) puis croit de x0 à 1.1, il y a donc 2 solutions de f(x)=0, une négative (appelons-la A), et une autre (B) entre x0 et 1.1 (x0 vaut environ 0.475).
3.3/

Code : Tout sélectionner

P:=interp([-1.1,0,1.1],f)
renvoie
(x+1.1)(2.19035090493x3.40938599543)+2.75032459497
3.4/ On a un polynôme du second degré, on cherche ses racines à la machine

Code : Tout sélectionner

a,b:=proot(P)
qui donne [-0.484927894742,0.941475746388].
3.5/ un+1=unf(un)f(un)
3.6/ On calcule les 4 premiers termes de la suite telle que u0=a

Code : Tout sélectionner

u:=a; 
u:=u-f(u)/f1(u)
puis on recopie deux fois la dernière commande.
On obtient alors u1=-0.620934153605, u2=-0.609976468241, u3=-0.609883174155.
La suite n'est donc pas monotone à partir de u0, il y a une erreur d'énoncé. Par contre f(u1)=0.0268... est positif, donc u1<A, la racine négative de f. Comme f est convexe décroissante, la suite est monotone croissante vers A à partir du rang 1.
3.7/ f(u3)f(A)=f(θ)(u3A)0Au3=f(u3)f(θ)f(u3)f(A)f(u3)
(f' croit, donc -f' décroit, et -f'(0)=1). On a f(u3)=1.6e-8.
3.8/ Si on prend u0=b, on a un phénomène symétrique, u0<B, u1>B, et la suite est monotone décroissante vers B à partir du rang 1.

Répondre