Systèmes différentiels linéaires
Cours complet · mathématiques appliquées (ECG 2e année), chapitre 4 · prépa ECG, 2e année
Travailler ce chapitre sur Adloun Exercices corrigés de ce chapitre
La première année a résolu les équations différentielles et les équations d'ordre à coefficients constants. Il s'agissait à chaque fois d'une fonction inconnue. Or les situations économiques en font intervenir plusieurs à la fois, et qui s'influencent : le prix d'un bien dépend de la quantité offerte, laquelle réagit au prix. Deux fonctions, deux équations, et chacune fait intervenir l'autre.
C'est un système différentiel. Ce chapitre montre qu'il s'écrit , et surtout que la diagonalisation du chapitre 3 le découple : dans une base de vecteurs propres, les inconnues cessent de s'influencer, chacune suit sa propre exponentielle, et l'on n'a plus qu'à traduire le résultat.
On rencontre parfois la solution écrite . Cette notation n'est pas au programme d'ECG et ne doit pas être employée. La seule méthode attendue est la diagonalisation, en taille ou , avec les valeurs propres fournies ou faciles à obtenir.
4.1 D'où viennent ces systèmes
4.1.1 Un exemple économique
Notons l'écart du prix d'un bien à son prix d'équilibre, et l'écart du stock détenu par les producteurs. Un modèle simple d'ajustement s'écrit :
- le prix baisse quand le stock est excédentaire : ;
- le stock augmente quand le prix est élevé, car l'offre suit : .
Soit, matriciellement,
La question de l'économiste — le marché revient-il à l'équilibre ? — est exactement la question du mathématicien : tend-il vers ?
4.1.2 Le cadre
Soit . On appelle système différentiel linéaire à coefficients constants le problème consistant à trouver les fonctions , dérivables, vérifiant
où désigne la colonne des dérivées des coordonnées de .
Soient , et . Le problème
admet une unique solution, définie sur tout entier.
Le programme admet ce théorème. Sa portée est considérable : deux trajectoires distinctes ne peuvent jamais se croiser, puisque le point de croisement définirait deux solutions d'un même problème de Cauchy. C'est ce qui donne aux portraits de phase leur allure de courbes emboîtées, sans jamais d'intersection.
4.2 Résolution par diagonalisation
4.2.1 Le découplage
Supposons diagonalisable, avec .
- Changer d'inconnue : poser , c'est-à-dire . Alors
- Résoudre le système découplé : s'écrit pour chaque , dont les solutions sont , avec .
- Revenir : .
Résolvons avec et .
Diagonalisation. est symétrique donc diagonalisable. On a et , d'où , .
Solution générale. Toute solution s'écrit
Condition initiale. En : , soit et : , . Donc
Vérification. En : . Et , tandis que . Les deux coïncident.
Dans , divisons par où est la plus grande valeur propre présente. Tous les autres termes portent alors , avec un exposant négatif : ils tendent vers . La trajectoire s'aligne donc, quand , sur la direction propre de — quelle que soit la condition initiale, pourvu que le coefficient correspondant ne soit pas nul.
Quand est diagonalisable de valeurs propres et de vecteurs propres , la solution générale est
On n'écrit jamais ni : les vecteurs propres suffisent, et les constantes se déterminent par la condition initiale.
4.3 Comportement asymptotique, stabilité
Une solution constante est appelée état d'équilibre. Une telle solution vérifie , donc : les états d'équilibre sont exactement les éléments de .
Si est inversible, : le seul état d'équilibre est l'origine. Sinon — c'est-à-dire si — il y a toute une droite, voire tout un plan, d'états d'équilibre.
Soit diagonalisable, de valeurs propres . Pour toute solution de :
- si pour tout , alors quand : l'origine est un équilibre stable ;
- s'il existe avec , alors les solutions dont la composante correspondante est non nulle sont non bornées ;
- si les valeurs propres sont de signes opposés, l'origine est un point selle : les trajectoires s'approchent selon les directions propres négatives et s'échappent selon les positives.
Reprenons . On vérifie que et sont vecteurs propres :
Les deux valeurs propres et sont strictement négatives : toute trajectoire tend vers . Le marché revient à l'équilibre, et il le fait au rythme de la valeur propre la plus proche de , ici — c'est elle qui s'éteint le plus lentement, donc elle qui dicte la vitesse finale.
4.4 Équation scalaire d'ordre 2 et système d'ordre 1
Soient . La fonction est solution de l'équation scalaire
si et seulement si la colonne est solution du système
Démonstration
Posons . Alors , et . Les deux colonnes sont égales si et seulement si la première ligne est vraie — ce qu'elle est toujours — et la seconde s'écrit .
La seconde ligne de lit l'équation dans cet ordre : le coefficient de vient en première colonne, celui de en seconde. D'où , et non . L'inversion est l'erreur la plus fréquente ; elle se détecte en recalculant la seconde ligne du produit et en la comparant à .
Prenons , soit et . La matrice associée est . On vérifie que et sont vecteurs propres, pour et :
Donc , et en lisant la première coordonnée :
C'est exactement la forme obtenue en première année, où et étaient les racines de . Les valeurs propres de la matrice sont les racines de l'équation caractéristique scalaire — le même calcul, vu autrement.
Python : Résoudre, et vérifier sur la solution
import numpy as np
A = np.array([[1., 2.], [2., 1.]])
vp, V = np.linalg.eig(A)
print(vp) # [ 3. -1.]
# X(t) = 2 e^{3t} (1,1) + e^{-t} (1,-1)
def X(t):
return (2*np.exp(3*t)*np.array([1., 1.])
+ np.exp(-t)*np.array([1., -1.]))
t, h = 0.7, 1e-6
derivee = (X(t+h) - X(t-h)) / (2*h) # derivee numerique
print(np.allclose(derivee, A @ X(t), atol=1e-5)) # True
print(X(0.)) # [3. 1.] <- la condition initiale
La dérivée numérique confronte la solution proposée à l'équation elle-même : si et coïncident en un point tiré au hasard, la formule est bonne.