Quelques notebooks SAGE / Python. Équations différentielles ou calcul multivariable.
Image: ubuntu2004
Les multiplicateurs de Lagrange
Exemple:
On considére la fonction . Parmi les points sur le cercle , on cherche celui /ceux où atteint son minimum/maximum.
Voyons le probème en termes de courbes de niveau et du champ gradient de . Rappelons que donne la direction dans laquelle il faut se déplacer à partir de pour avoir la plus forte augmentation dans la valeur de .
Ci bas, on trouve les courbes de niveau de , ainsi que le champ et la courbe (en rouge).
La courbe de contrainte est donnée par par ou est la fonction de contrainte. C'est donc une courbe de niveau pour la fonction de contrainte . Cette fonction a aussi un champ gradient, . Dessinons les vecteurs de ce champ, mais seulement ceux qui correspondent aux points sur la courbe.
Conjecture: Les points de maximum / minimum de sur la courbe sont précisément ceux pour lequels les vecteurs gradient et sont colinéaires. En d'autres termes, il doit exister tel que
Demandons à SAGE de résoudre les équations qu'on a besoin de résoudre. La fonction a déjà été définie,mais pas , et nous avons également d'une nouvelle variable qui jouera le rôle de .
Ici df
est le gradient de , c'est donc une fonction de deux variables, à valeurs dans , c'est à dire une paire de fonctions. Ainsi, df[0]
est la première de ces deux fonctions (on commence à compter à , c'est à dire ou encore ), et donc df[0](x,y)
est la fonction évaluée en .