Fonctions Matlab

Dans l'exercice 4, nous avons réutilisé la fonctionnalité de l'exercice 3. Pour éviter de recopier systématiquement le source de ces fonctionnalisés, le langage Matlab dispose, comme tout langage qui se respecte, de routines appelées en l'occurrence fonctions.

Appel de fonction

La syntaxe d'appel d'une fonction est, le plus couramment

out = fonction(in1,in2,....)

Lorsque la fonction renvoie plusieurs variables, la syntaxe devient

[out1,out2,....] = fonction(in1,in2,....)

Il est possible de ne pas affecter le résultat d'une fonction

fonction(in1,in2,....)

Par exemple, la fonction plot est en général appelée sans affectation de résultat. Pour plus de détails, faire 'help plot'.

Définition d'une fonction

La définition d'une fonction nommée 'xxx' est stockée dans un fichier intitulé 'xxx.m'. Lors de l'interprétation, si Matlab trouve un mot inconnu, il cherche si celui-ci ne correspond pas à un nom de fichier situé dans les répertoires qui lui sont connus.

La première ligne de ce fichier définit la syntaxe de la fonction:

function out = xxx(in1,in2,....)

ou

function [out1,out2,....] = xxx(in1,in2,....)

ou

function xxx(in1,in2,....)

Voyons un exemple. La fonction timestwo renvoie le double d'un nombre. Le fichier timestwo.m contient le texte suivant:

function y = timestwo(x)

y = 2*x;

Assurez-vous que le fichier timestwo.m est dans votre répertoire de travail et tapez dans la fenêtre de commande Matlab l'instruction suivante:

timestwo(1)

Etonnant, non?


Exercice