En partenariat avec
▶
Annale

Agro-Véto 2020 Maths MMIBCPST

Connectez-vous pour consulter le corrigé.

Accès complet à tous les corrigés avec un abonnement.
Essai gratuit 48h — accès immédiat, sans CB.

ÉcoleAgro-Véto
Année2020
ÉpreuveMaths MMI
OptionBCPST
Thème principalAnalyse, Algèbre, Probabilités, Informatique
ChapitresFonctions réelles usuelles, Équations différentielles linéaires simples, Matrices, Bases de programmation Python, Méthodes numériques, Valeurs propres, vecteurs propres et diagonalisation, Produit scalaire dans R^n, Variables aléatoires à densité, Théorèmes limites
Commentaire

Cuisson des petits pois : système différentiel diagonalisé, méthode de Newton en Python et filtre de Kalman.

Modélisation mathématique et Informatique

Durée : 3 heures 30 minutes

Sujet du concours Agro-Véto 2020 (concours A BCPST).

Si, au cours de l’épreuve, un candidat repère ce qui lui semble être une erreur d’énoncé, il le signale sur sa copie et poursuit sa composition en expliquant les raisons des initiatives qu’il a été amené à prendre.

L’usage d’une calculatrice est autorisé pour cette épreuve. Les candidats pourront admettre le résultat d’une question pour répondre à une question postérieure à condition de le mentionner explicitement.

Le sujet comporte 7 pages numérotées de 1 à 7. Il se compose de 3 parties largement indépendantes et d’une annexe. La partie 2 est consacrée à l’informatique.

Problème

Un industriel cherche à optimiser son processus de cuisson des petits pois dans une cuve chauffée. Le cahier des charges demande à ce que les petits pois cuisent 10 minutes à une température comprise entre 90 \(^{\circ}\)C et 92 \(^{\circ}\)C. L’industriel utilise la puissance de chauffe pour commander les températures.

1 Modélisation et commande du processus

Dans cette partie, on suppose que la température des petits pois et la température de l’eau de la cuve sont uniformes et que la cuisson peut donc être modélisée par le système d’équations différentielles suivant : \[\tag{$E$} \left\{\begin{array}{rcl} m_1C_1\frac{\mathrm{d}T_1}{\mathrm{d}t} &=& h_1S_1(T_2-T_1)\\[0.5em] m_2C_2\frac{\mathrm{d}T_2}{\mathrm{d}t} &=& h_1S_1(T_1-T_2)+h_2S_2(T_\infty-T_2)+u \end{array}\right.\] où \(m_1\) et \(m_2\) sont les masses respectives des petits pois et de l’eau dans la cuve (en kg), \(C_1\) et \(C_2\) sont les capacités thermiques massiques respectives du petit pois et de l’eau (en \(\mathrm{J}\cdot\mathrm{K}^{-1}\cdot\mathrm{kg}^{-1}\)), \(h_1\) et \(h_2\) sont les coefficients de transfert thermique entre l’eau et les petits pois d’une part, et entre l’eau et l’extérieur d’autre part (en \(\mathrm{W}\cdot\mathrm{m}^{-2}\cdot\mathrm{K}^{-1}\)), \(S_1\) et \(S_2\) sont respectivement la surface totale des petits pois et la surface d’échange entre l’eau et l’extérieur (en \(\mathrm{m}^2\)), \(T_1\), \(T_2\) et \(T_\infty\) sont les températures respectives des petits pois, de l’eau et de l’extérieur (en K) et \(u\) est la puissance de la résistance chauffante utilisée pour chauffer la cuve (en W). Cette puissance de chauffe \(u\) constitue le moyen d’action de l’industriel sur les températures \(T_1\) et \(T_2\) et est donc appelée la commande.

On suppose que toutes ces quantités sont constantes au cours du temps, en dehors des températures \(T_1\) et \(T_2\) et de la commande \(u\). En particulier, la température extérieure est constante et vaut \(T_\infty=20\) \(^{\circ}\)C. Le temps \(t\) sera exprimé en minutes.

1.1 Commande en boucle ouvert (cas \(u\) constant)

  1. On note \(x_1=T_1-T_\infty\) et \(x_2=T_2-T_\infty\). Établir les équations différentielles vérifiées par \(x_1\) et \(x_2\). On les écrira sous la forme : \[\left\{\begin{array}{rcl} \frac{\mathrm{d}x_1}{\mathrm{d}t} &=& f_1(x_1,x_2,u)\\[0.5em] \frac{\mathrm{d}x_2}{\mathrm{d}t} &=& f_2(x_1,x_2,u) \end{array}\right.\]

On admettra que l’on peut réécrire ces équations sous la forme : \[\tag{1} \frac{\mathrm{d}x}{\mathrm{d}t}=Ax+bu\] avec \(x=\begin{pmatrix}x_1\\x_2\end{pmatrix}\), \(\frac{\mathrm{d}x}{\mathrm{d}t}=\begin{pmatrix}\frac{\mathrm{d}x_1}{\mathrm{d}t}\\[0.3em]\frac{\mathrm{d}x_2}{\mathrm{d}t}\end{pmatrix}\), \(A\) une matrice de \(\mathcal{M}_{2,2}(\mathbb{R})\), \(b\) un vecteur de \(\mathbb{R}^2\) et \(u\in\mathbb{R}\) constant.

Dans la suite du problème, on prendra \[A=\begin{pmatrix}-5 & 5\\ 4 & -6\end{pmatrix}\quad\text{et}\quad b=\begin{pmatrix}0\\9\end{pmatrix}\]

  1. On suppose qu’il existe \(x=\begin{pmatrix}x_1\\x_2\end{pmatrix}\) dans \(\mathbb{R}^2\) et \(u\) dans \(\mathbb{R}\) tels que \(Ax+bu=0\).

    1. Montrer qu’alors \(x_1=x_2\).

    2. Interpréter.

    3. Calculer la valeur de \(u\) si on considère que \(x_1=x_2=72\).

    1. Calculer les valeurs propres de \(A\).

    2. Montrer que \(A\) est diagonalisable.

    3. Donner une base de vecteurs propres de \(A\). On choisira les premières coordonnées de ces vecteurs propres égales à \(1\).

    4. En déduire les matrices \(P\) et \(P^{-1}\) vérifiant \(A=PDP^{-1}\) avec \(D=\begin{pmatrix}-1 & 0\\ 0 & -10\end{pmatrix}\).

  2. Soit \(x\) une solution de (1). On définit \(z=P^{-1}x\), où \(z=\begin{pmatrix}z_1\\z_2\end{pmatrix}\).

    1. Montrer que \(\frac{\mathrm{d}z}{\mathrm{d}t}=P^{-1}\frac{\mathrm{d}x}{\mathrm{d}t}\).

    2. En déduire que \[\tag{2} \frac{\mathrm{d}z}{\mathrm{d}t}=Dz+\beta u\] où \(\beta\) est un vecteur à expliciter.

    3. On suppose que \(T_1(0)=20\) \(^{\circ}\)C et \(T_2(0)=92\) \(^{\circ}\)C. Calculer \(z(0)\).

    4. Résoudre l’équation différentielle vectorielle (2) en supposant que \(u=16\). On écrira séparément les équations différentielles vérifiées par \(z_1\) et \(z_2\).

    5. En utilisant la relation \(x=Pz\), montrer que pour tout \(t\geqslant0\) : \[\left\{\begin{array}{rcl} x_1(t) &=& 72-40\mathrm{e}^{-t}-32\mathrm{e}^{-10t}\\ x_2(t) &=& 72-32\mathrm{e}^{-t}+32\mathrm{e}^{-10t} \end{array}\right.\]

    1. Étudier sur \(\mathbb{R}_+\) la fonction \(x_2\) définie à la question 4.(e). Tracer sa courbe représentative. On fera figurer sur le graphique tous les éléments importants.

    2. Donner une interprétation du comportement de la fonction \(x_2\).

    3. On définit \(t_R=\min\left\lbrace t\geqslant0\ ;\ \forall t'\geqslant t,\ T_2(t')\geqslant90\right\rbrace\). Que représenter ce temps \(t_R\) ? Le placer sur la courbe représentative de \(x_2\). On rappelle que \(x_2=T_2-T_\infty\).

    4. Montrer que \(\ln(16)\) minutes est une bonne approximation de \(t_R\). Comment chaque valeur propre de \(A\) influence-t-elle \(t_R\) ?

1.2 Commande en boucle fermée (cas \(u\) variable)

Pour améliorer les performances, on décide de faire varier la puissance de chauffe en fonction de la température de l’eau en considérant, pour tout \(t\geqslant0\) : \(u(t)=16+k\left(72-x_2(t)\right)\), où \(k\geqslant0\) est une constante de réglage appelée gain.

  1. Expliquer ce choix de fonction pour la puissance de chauffage. Quel est l’intérêt ?

  2. Que vaut \(t_R\) pour \(k=0\) ?

  3. On définit \(w(t)=x(t)-\begin{pmatrix}72\\72\end{pmatrix}\). Montrer que \(\frac{\mathrm{d}w}{\mathrm{d}t}=\left(A-kbc^{\top}\right)w\), où \(c=\begin{pmatrix}0\\1\end{pmatrix}\) et \(c^{\top}\) désigne sa transposée.

  4. On note \(\lambda_1(k)\) et \(\lambda_2(k)\) les valeurs propres de \(A-kbc^{\top}\) telles que \(\lambda_1(k)<\lambda_2(k)\).

    1. Donner l’expression de \(\lambda_1(k)\) et \(\lambda_2(k)\) en fonction de \(k\).

    2. Montrer que \(\lambda_1\) et \(\lambda_2\) sont des fonctions décroissantes de \(k\) sur \(\mathbb{R}_+\).

  5. Quel est l’effet du gain \(k\) sur \(t_R\) ? Quels inconvénients à augmenter \(k\) peut-on envisager ?

2 Étude informatique des commandes

Cette partie consiste à mettre en place des programmes informatiques en lien avec la partie l.

Les programmes sont à rédiger en langage Python. L’annexe 1 page 7 comporte des rappels sur les commandes utiles. Avant chaque algorithme, on écrira brièvement le raisonnement suivi et la formule qu’il est censé calculer.

2.1 Recherche du minimum d’une fonction

Soit \(f:t\mapsto72-32\mathrm{e}^{-t}+32\mathrm{e}^{-10t}\).

  1. Écrire une fonction d’en-tête f(t) prenant en entrée \(t\) (un réel) et qui renvoie la valeur de \(f(t)\).

  2. On définit la fonction d’en-tête minimum_f(N) prenant en entrée \(N\) (un entier) par le code (incomplet) suivant :

    def minimum_f(N):
        Lt1 = np.linspace(0, 5, N)
        Ly1 = []
        for k in range(0, N):
            Ly1.append(f(Lt1[k]))
        ...
        ...
        return ...

    Décrire en quelques mots ce que contiennent les variables Lt1 et Ly1 à l’issue des lignes 2 à 5.

  3. Compléter sur la copie (avec autant de lignes que nécessaire) la fonction minimum_f pour qu’elle renvoie une liste composée des deux éléments suivants :

    • une valeur approchée \(m\) du minimum de \(f\) sur \([0;5]\) ;

    • le temps \(t_m\) en lequel cette valeur approchée est atteinte (c’est-à-dire \(m=f(t_m)\)).

    On veillera à n’écrire qu’une seule boucle après celle des lignes 4 et 5 et à ne pas utiliser la commande min.

  4. On teste la fonction minimum_f sur différentes valeurs de \(N\). Voici les résultats obtenus (tronqués à 4 chiffres après la virgule) :

    • pour \(N_1=20\), la fonction donne \(m_1=49.7070\) et \(t_{m_1}=0.2631\) ;

    • pour \(N_2=20\,000\), la fonction donne \(m_2=49.7012\) et \(t_{m_2}=0.2557\).

    Il y a une différence entre \(t_{m_1}\) et \(t_{m_2}\).

    1. Cette différence était-elle prévisible et à quoi est-elle due ?

    2. Est-ce \(t_{m_1}\) ou \(t_{m_2}\) qui devrait être le plus proche de la valeur exacte cherchée ?

  5. On teste maintenant sur une troisième valeur située entre \(N_1\) et \(N_2\) : pour \(N_3=50\), la fonction donne \(m_3=49.9370\) et \(t_{m_2}=0.3061\). Commenter ce résultat.

2.2 Recherche du point d’annulation d’une fonction

Pour une fonction \(F:I\to\mathbb{R}\) donnée, avec \(I\) un intervalle de \(\mathbb{R}\), on s’intéresse à la résolution approchée de l’équation \(F(x)=0\). On suppose que \(F\) s’annule en un point appelé \(x^*\in I\) et que \(F\) soit suffisamment régulière pour que les calculs suivants soient bien définis. L’objectif est d’obtenir une valeur approchée de \(x^*\).

On utilise la méthode de Newton, qui consiste à définir la suite \((u_n)_{n\in\mathbb{N}}\) par : \[\left\{\begin{array}{ll} u_0\text{ à choisir} & \\[0.3em] u_{n+1}=u_n-\frac{F(u_n)}{F'(u_n)} & \text{pour } n\geqslant0 \end{array}\right.\] On admet que, sous des hypothèses non précisées ici, cette suite converge vers \(x^*\) et que, s’il y a deux solutions à l’équation \(F(x)=0\), alors selon le choix de \(u_0\) la suite va converger vers une solution ou vers l’autre.

  1. Soit \(e>0\). À l’aide d’une boucle while, écrire une fonction d’en-tête Newt(F, G, u0, e) qui calcule les termes de la suite en s’arrêtant au premier terme \(u_{n_0}\) vérifiant \(\left| F(u_{n_0}) \right|<e\) (en supposant qu’un tel \(n_0\) existe). Les arguments d’entrée sont : \(F\) une fonction, \(G\) une fonction qui correspond à \(F'\), \(u_0\) le premier terme de la suite et \(e\). La fonction doit renvoyer \(u_{n_0}\).

  2. Par rapport à l’objectif de résoudre de façon approchée l’équation \(F(x)=0\), expliquer à quoi correspond la quantité \(e\) utilisée dans l’écriture de Newt. Parmi les choix suivants pour \(e\), indiquer (avec justification succincte) celui qui semble le plus pertinent pour obtenir la meilleure précision sur la valeur approchée : \(e_1=100\), \(e_2=1\), \(e_3=10^{-8}\).

  3. Toujours par rapport à l’objectif de résoudre de façon approchée l’équation \(F(x)=0\), justifier s’il est pertinent ou pas d’effectuer la modification suivante sur la fonction Newt : renvoyer le premier terme \(u_n\) vérifiant \(F(u_n)=0\).

  4. À la question 6., on a supposé l’existence d’un \(n_0\) vérifiant \(\left| F(u_{n_0}) \right|<e\). Que se passe-t-il dans la fonction Newt si un tel \(n_0\) n’existe pas ?

  5. On souhaite modifier la fonction Newt de manière à fixer un nombre maximal d’itérations pour la boucle while. Écrire une nouvelle fonction d’en-tête NewtS(F, G, uO, e, nder), basée sur la fonction Newt, telle que :

    • s’il existe un terme \(u_{n_0}\) tel que \(\left| F(u_{n_0}) \right|<e\) avec \(n_0\leqslant n_{\mathrm{der}}\), la fonction renvoie \(u_{n_0}\) ;

    • si le nombre d’itérations dépasse (strictement) la valeur \(n_{\mathrm{der}}\), la boucle est stoppée et la fonction renvoie le booléen False.

  6. Expliquer comment la méthode de Newton peut être utilisée pour trouver une valeur approchée du temps \(t_R\) défini à la question 5.(c) de la partie 1.

  7. On définit les fonctions suivantes (où f a été définie à la partie 2.1) :

    def F1(t):
        return f(t)-70
    def G1(t) :
        return 32*np.exp(-t)-320*np.exp(-10*t)

    puis on exécute pour e = 10**-14 et nder = 9 les deux appels suivants :

    • NewtS(F1, G1, 2, e, nder) qui renvoie 2.7725887222252261 ;

    • NewtS(F1, G1, 0.1, e, nder) qui renvoie 0.0072246696343453579.

    Interpréter ces résultats en lien avec la partie 1.1.

3 Filtre de Kalman

Cette partie est indépendante des parties 1 et 2.

Pour des raisons de qualité, le cahier des charges de l’industriel impose que la température des petits pois ne dépasse pas une certaine valeur seuil. Dans la mesure où la température des petits pois n’est pas mesurée et que la température de l’eau n’est mesurée que chaque seconde, on propose dans cette partie de concevoir un système, appelé Filtre de Kalman, capable de reconstituer dynamiquement la température des petits pois à l’aide des mesures de la température de l’eau.

Pour cela, pour tout \(i\in\mathbb{N}\), on note \(x_i\in\mathbb{R}^2\) l’état de la cuisson (non observé), \(y_i\in\mathbb{R}\) la température de l’eau (mesurée) et \(u_i\in\mathbb{R}\) la commande (connue), à l’instant \(i\). On modélise l’évolution de la cuisson à l’aide d’un processus défini par, pour tout \(i\in\mathbb{N}\) : \[\tag{3} \left\{\begin{array}{rcl} x_{i+1} &=& Fx_i+gu_i\\ y_i &=& h^{\top}x_i+\varepsilon_i \end{array}\right.\] où les éléments \(F\in\mathcal{M}_{2,2}\), \(g,h\in\mathbb{R}^2\) sont donnés (avec \(h^{\top}\) désignant la transposée de \(h\)) et les \(\varepsilon_i\) sont des variables aléatoires indépendantes de même loi \(\mathcal{N}(0,\sigma^2)\) représentant le bruit de mesure, avec \(\sigma^2>0\).

L’objectif de cette partie est de construire une suite \((\hat{x}_i)_{i\in\mathbb{N}}\) d’estimations des quantités \(x_i\in\mathbb{R}^2\), à partir des mesures bruitées \(y_j\in\mathbb{R}\), avec \(j\leqslant i\).

3.1 Un cas simple

On suppose, dans cette partie uniquement, que \(F=I_2\), \(g=\begin{pmatrix}0\\0\end{pmatrix}\) et \(x_0\in\mathbb{R}^2\) est l’état initial de la cuisson.

  1. En notant, pour \(n\in\mathbb{N}^*\), \(\overline{y}_n=\frac{1}{n}\displaystyle\sum_{i=1}^{n}y_i\), montrer que \(\overline{y}_n\) suit une loi \(\mathcal{N}\left(h^{\top}x_0,\frac{\sigma^2}{n}\right)\).

  2. Montrer que, pour tout \(\delta>0\), \(\displaystyle\lim_{n\to+\infty}\mathbb{P}\left(\left| \overline{y}_n-h^{\top}x_0 \right|>\delta\right)=0\).

3.2 Vecteurs gaussiens

Soit \(x\) une variable aléatoire à valeurs dans \(\mathbb{R}^2\). On dira que \(x\) est un vecteur gaussien de moyenne \(\mu\in\mathbb{R}^2\) et de matrice de covariance \(\Sigma\in\mathcal{M}_{2,2}(\mathbb{R})\) si

  • \(\Sigma\) est symétrique et pour tout \(v\in\mathbb{R}^2\), on a \(v^{\top}\Sigma v\geqslant0\), et

  • pour tout \(v\in\mathbb{R}^2\), \(v^{\top}x\) suit une loi \(\mathcal{N}\left(v^{\top}\mu,v^{\top}\Sigma v\right)\).

Soit \(x\) un vecteur gaussien de moyenne \(\mu\) et de matrice de covariance \(\Sigma\).

  1. Montrer que pour tout vecteur \(w\in\mathbb{R}^2\), \(x+w\) est un vecteur gaussien de moyenne \(\mu+w\) et de matrice de covariance \(\Sigma\).

  2. Montrer que pour tout vecteur \(w\in\mathbb{R}^2\), si \(z\) est une variable aléatoire suivant une loi \(\mathcal{N}(0,\sigma^2)\), \(zw\) est un vecteur gaussien de moyenne \(\begin{pmatrix}0\\0\end{pmatrix}\) et de matrice de covariance \(\sigma^2ww^{\top}\).

  3. Montrer que pour toute matrice \(M\in\mathcal{M}_{2,2}(\mathbb{R})\), \(Mx\) est un vecteur gaussien de moyenne \(M\mu\) et de matrice de covariance \(M\Sigma M^{\top}\).

3.3 Construction de l’estimation

On suppose que \(x_0\) est un vecteur gaussien de moyenne \(\mu_0\) et de matrice de covariance \(\Sigma_0\), indépendant des bruits \(\varepsilon_i\), pour \(i\in\mathbb{N}\). On souhaite construire récursivement notre estimation sous la forme \(\hat{x}_0=\mu_0\) et \[\hat{x}_{i+1}=p_{i+1}+\left(y_{i+1}-h^{\top}p_{i+1}\right)k_{i+1}\] où \(p_{i+1}=F\hat{x}_i+gu_i\) et \(k_{i+1}\in\mathbb{R}^2\) est un vecteur, indépendant des mesures, que l’on souhaite déterminer.

  1. Montrer que, pour tout \(i\in\mathbb{N}\), \(x_i\) est un vecteur gaussien de moyenne \(\mu_i=F^i\mu_0+\displaystyle\sum_{j=0}^{i-1}F^jgu_{i-1-j}\) et de matrice de covariance \(\Sigma_i=F^i\Sigma_0\left(F^{\top}\right)^i\).

  2. Montrer que \(x_0-\hat{x}_0\) est un vecteur gaussien dont on donnera la moyenne et la matrice de covariance.

  3. Montrer que, pour tout \(i\in\mathbb{N}\), \(x_{i+1}-\hat{x}_{i+1}=\left(I_2-k_{i+1}h^{\top}\right)F\left(x_i-\hat{x}_i\right)-\varepsilon_{i+1}k_{i+1}\).

On admettra par la suite que, pour tout \(i\in\mathbb{N}\), \(x_i-\hat{x}_i\) est un vecteur gaussien de moyenne \(\begin{pmatrix}0\\0\end{pmatrix}\) et de matrice de covariance \(Q_i\) vérifiant la relation de récurrence \[Q_{i+1}=\left(I_2-k_{i+1}h^{\top}\right)FQ_iF^{\top}\left(I_2-k_{i+1}h^{\top}\right)^{\top}+\sigma^2k_{i+1}k_{i+1}^{\top}\]

  1. Montrer que l’on peut écrire \[Q_{i+1}=\alpha_i\left(k_{i+1}-\frac{1}{\alpha_i}FQ_iF^{\top}h\right)\left(k_{i+1}-\frac{1}{\alpha_i}FQ_iF^{\top}h\right)^{\top}+FQ_iF^{\top}-\frac{1}{\alpha_i}FQ_iF^{\top}hh^{\top}FQ_iF^{\top}\] où \(\alpha_i\in\mathbb{R}\) est à expliciter.

  2. Montrer que \(\alpha_i>0\).

  3. Donner la valeur de \(k_{i+1}\) telle que, pour tout \(v\in\mathbb{R}^2\), \(v^{\top}Q_{i+1}v\) est minimal.

3.4 Convergence du Filtre de Kalman

Le but de cette partie est de montrer que la suite d’estimations \((\hat{x}_i)_{i\in\mathbb{N}}\) converge. On suppose que, dans le processus (3), la matrice \(F\) est inversible, diagonalisable dans \(\mathbb{C}\) et de valeurs propres complexes de module strictement plus petit que \(1\). De plus, on prend \(k_{i+1}=\frac{1}{\alpha_i}FQ_iF^{\top}h\), où \(\alpha_i\) a été introduit à la question 9.

  1. Montrer que \(F^{\top}\) est aussi inversible, diagonalisable dans \(\mathbb{C}\) et de valeurs propres complexes de module strictement plus petit que \(1\).

  2. On définit, pour tout \(i\) dans \(\mathbb{N}\), \(R_i=F^{-i}Q_i\left(F^{\top}\right)^{-i}\), où \(F^{-i}=\left(F^{-1}\right)^i\). Montrer que pour tout \(i\) dans \(\mathbb{N}\) \[R_{i+1}=R_i-\frac{F^{-i}Q_iF^{\top}hh^{\top}FQ_i\left(F^{\top}\right)^{-i}}{h^{\top}FQ_iF^{\top}h+\sigma^2}\]

    1. Montrer que, pour tout \(v\in\mathbb{R}^2\), la suite \(\left(v^{\top}R_iv\right)_{i\in\mathbb{N}}\) est bornée.

    2. En déduire que, pour tout \(v\in\mathbb{R}^2\) et tout \(w\in\mathbb{R}^2\), la suite \(\left(v^{\top}R_iw\right)_{i\in\mathbb{N}}\) est bornée.

    1. Montrer que, si \(v_1\) et \(v_2\) sont des vecteurs propres de \(F^{\top}\) associés aux valeurs propres complexes \(\lambda_1\) et \(\lambda_2\), alors, pour tout \(i\in\mathbb{N}\), \(v_1^{\top}Q_iv_2=(\lambda_1\lambda_2)^iv_1^{\top}R_iv_2\).

    2. Conclure que pour tout \(v\in\mathbb{R}^2\), \(\displaystyle\lim_{i\to+\infty}v^{\top}Q_iv=0\).

  3. Que peut-on dire du comportement asymptotique de \(x_i-\hat{x}_i\) ?

Annexe 1 : Rappels Python pour la partie 2

On considère que le module numpy est importé via import numpy as np. Dans le tableau suivant, les variables a et b sont des réels et N est un entier.

Python Interprétation
np.exp(a) Renvoie \(\exp(a)\).
np.linspace(a, b, N) Renvoie un tableau à une dimension contenant \(N\) valeurs équiréparties dans \([a,b]\) ; ces valeurs sont les \(t_k=a+\frac{b-a}{N-1}k\) pour \(k\in\left[\kern-0.15em\left[0;N-1\right]\kern-0.15em\right]\).

« FIN DU SUJET »

Tu veux le corrigé détaillé ?

Le corrigé pas à pas, les aides et les explications sont disponibles dans la plateforme.

error: Ce contenu est protégé !