Opérateurs > Opérateurs d'analyse > Exemple : Opérateur gradient
Exemple : Opérateur gradient
Définissez une fonction f :
Cliquez pour copier cette expression
Utilisez l'opérateur gradient pour recevoir un vecteur de dérivées partielles pour f :
Cliquez pour copier cette expression
Définissez une fonction vectorielle et calculez le gradient de la fonction f par le vecteur x.
Cliquez pour copier cette expression
Cliquez pour copier cette expression
Dans cet exemple, ORIGINE, qui définit l'index initial de tous les tableaux, est réglé sur 0.
La variable ayant le plus grand indice dans f est x2. Mathcad suppose qu'il existe trois variables : x0, x1 et x2. Il en résulte un vecteur gradient de trois valeurs contenant les dérivées partielles de ces variables. Si x0 ou x1 n'apparaît pas dans f, Mathcad renvoie toujours un vecteur de trois valeurs, mais les entrées correspondant aux variables manquantes sont réglées sur 0.
Pour le plus grand indice apparaissant dans f, n, Mathcad suppose des variables n + 1, x0,  x1,... xn, et renvoie un vecteur de longueur n + 1.
Si vous définissez x numériquement, vous pouvez évaluer le gradient avec le signe égal =. Mathcad évalue le gradient aux valeurs de x et renvoie un vecteur de nombres représentant le gradient au point x. La longueur de x doit être supérieure au plus grand indice apparaissant dans f et Mathcad renvoie un gradient avec des entrées de longueur(x).
Dans l'exemple suivant, x0 et x1 sont les seules variables apparaissant dans l'expression, Mathcad prend les dérivées partielles par rapport à x0 et x1, et renvoie un vecteur à deux valeurs.
Cliquez pour copier cette expression
Cliquez pour copier cette expression
Cliquez pour copier cette expression
Toutefois, si vous définissez x comme un vecteur à trois éléments, Mathcad suppose qu'il existe une variable supplémentaire, x2, qui n'apparaît pas dans l'expression. Les résultats sont un vecteur à trois éléments.
Cliquez pour copier cette expression
Cliquez pour copier cette expression
Utilisation de l'opérateur gradient avec la fonction genfit
L'opérateur gradient est particulièrement utile pour configurer les arguments de la fonction genfit, qui adapte une fonction générale non linéaire à un jeu de données.
Dans l'exemple suivant, effacez la valeur de x :
Cliquez pour copier cette expression
Utilisez les données du tableau ci-après.
Cliquez pour copier cette expression
La première colonne contient les valeurs x des données et la deuxième colonne les valeurs y.
Cliquez pour copier cette expression
Cliquez pour copier cette expression
Modélisez les données à l'aide d'une fonction de la forme suivante :
Cliquez pour copier cette expression
Ici, a1, a2 et a3 sont des paramètres inconnus contenus dans vecteur a
Vous pouvez modéliser les données en appelant genfit comme suit :
Cliquez pour copier cette expression
Dans cette expression
X et Y sont des vecteurs contenant les valeurs x et les valeurs ydes données.
guess est un vecteur des valeurs d'hypothèse initiale des paramètres.
F est un vecteur dont la première entrée est la fonction modèle f(x, a), et dont les entrées restantes sont les dérivées partielles de f par rapport aux paramètres inconnus.
Créez le vecteur F à l'aide de l'opérateur gradient et de la fonction stack.
Cliquez pour copier cette expression
Cliquez pour copier cette expression
La fonction stack place la fonction du modèle f au-dessus du vecteur de dérivées partielles créé par l'opérateur gradient.
Ensuite, créez un vecteur initial pour les paramètres.
Cliquez pour copier cette expression
Appliquez genfit comme suit :
Cliquez pour copier cette expression
Les paramètres qui donnent la meilleure approximation sont les suivants :
Cliquez pour copier cette expression
Cliquez pour copier cette expression
Est-ce que cela a été utile ?