Les fonctions anonymes dans Matlab

Abordons le sujet des fonctions anonymes dans Matlab.

Qu'est-ce qu'une fonction anonyme ? Une fonction anonyme, c'est une fonction mathématique définie par une ou plusieurs variables, sans nom attribué. Elles portent ce nom car elles restent sans identification propre. Leur utilisation se limite à l'intérieur des fonctions composites dans lesquelles elles sont intégrées.

Pour créer une fonction anonyme dans Matlab, voici la syntaxe à utiliser :

nom@(variables) expression

Commencez par le symbole « @ », suivi des variables indépendantes de la fonction, entre parenthèses.

Ensuite, écrivez l'expression de la fonction après un espace.

Pourquoi utiliser une fonction anonyme ? Elles sont particulièrement utiles pour élaborer une routine destinée à une unique utilisation dans un script. Cela permet d'éviter la création d'une fonction supplémentaire, rendant le script plus compact et économisant de la mémoire.

Illustrons ceci par un exemple concret.

Imaginez que vous souhaitiez élever au carré chaque élément d'un tableau. Cela peut être réalisé avec la fonction arrayfun(), qui emploie une fonction anonyme pour le carré de chaque élément. Voici à quoi ressemble cette fonction : @(x) x^2.

A = [1, 2, 3, 4, 5];
B = arrayfun(@(x) x^2, A);
disp(B);

La fonction anonyme, comme son nom l'indique, ne porte pas de nom.

Elle ne peut être utilisée que dans le cadre de la fonction arrayfun(). En dehors, elle n'est pas accessible.

Le résultat est stocké dans la variable B et affiché via la fonction disp().

1 4 9 16 25

Ces chiffres représentent les carrés des éléments du vecteur A.

Les fonctions anonymes peuvent aussi être employées comme des fonctions classiques, à condition de leur attribuer un nom avant le symbole « @ ».

Considérons par exemple la fonction anonyme suivante :

>> f = @(x,y) x^2+y^2

Cette fonction, nommée « f », comporte deux variables indépendantes, x et y, et l'expression x2+y2.

$$ f(x,y) = x^2+y^2 $$

Note : Dans cet exemple, bien que la fonction soit baptisée « f », elle pourrait porter n'importe quel autre nom.

Une fois définie, vous pouvez appeler cette fonction plusieurs fois avec différents paramètres.

Ainsi, en tapant f(2,3), vous obtiendrez le résultat de l'expression x^2+y^2.

>> f(2,3)

La fonction reçoit x=2 et y=3 comme paramètres, les assigne à ses variables indépendantes et calcule le résultat de l'expression, qui est 13.

ans = 13

Le résultat, 13, provient de l'application de l'expression avec les valeurs assignées.

$$ f(x=2,y=3) = x^2 + y^3 = 2^2 + 3^2 = 4+9 = 13$$

Vous pouvez réitérer l'opération en passant différents paramètres à la fonction.

Par exemple, avec f(3,4), la fonction re çoit x=3 et y=4, effectue le calcul de l'expression et renvoie 25.

>> f(3,4)

ans=25

Le résultat, 25, s'explique par :

$$ f(x=3,y=4) = x^2 + y^3 = 3^2 + 4^2 = 9+16 = 25 $$

En somme, les fonctions anonymes s'avèrent être des outils précieux dans Matlab pour définir des fonctions sans nom, ou pour des usages ponctuels dans un script. N'hésitez pas à les explorer pour découvrir leur potentiel.

 
 

Segnalami un errore, un refuso o un suggerimento per migliorare gli appunti

FacebookTwitterLinkedinLinkedin

Fonctions dans Matlab