Définition d'une fonction

Définitionfunction

Les fonctions sont des scripts MATLAB particuliers.

La structure d'une fonction comporte nécessairement :

  • le mot réservé function

  • le nom de la fonction, par exemple mafonction

  • un ensemble de paramètres d'entrée e1, e2, ..., en

  • un ensemble de paramètres de sortie s1, s2, ..., sn

Exemple

%% mafonction.m
% Fabien Baillon et Jean-Louis Dirion - Nov.2014
%
% Ceci est un petit exemple de fonction

function [s1,s2] = mafonction(e1,e2)
    s1 = e1 .* e2;
    s2 = sin(s1);
end

Les paramètres d'entrée déclarés dans la définition de la fonction sont obligatoires à l'utilisation.

Par contre, par défaut, seule la première sortie est donnée par MATLAB à l'appel de la fonction. Les autres sorties sont par défaut optionnelles.

%% stat.m
% Fabien Baillon - Novembre 2011
%
% La fonction stat permet de calculer la valeur moyenne et la déviation standard
% d'un tableau de valeur x
%
% entrée : x, tableau de valeurs
% sorties : moyenne, valeur moyenne du tableau x
%           devstd, déviation standard

function [moyenne,devstd] = stat(x)
    n = length(x);
    moyenne = sum(x)/n;
    devstd = sqrt(sum((x-moyenne).^2/n));
end

Ainsi, si l'on entre les commandes suivantes :

s=[1 2 12 3 -2 23 2 6 5 7 3 20];
stat(s)

on obtient :

>>
ans =
     6.8333

Par contre, si l'on souhaite récupérer toutes les sorties de la fonction, il faut préciser les variables de sortie :

s=[1 2 12 3 -2 23 2 6 5 7 3 20];
[moy,dev]=stat(s)

on obtient alors :

>>
moy =
     6.8333
dev =
     7.3805

Remarque

Il est important de bien choisir l'ordre des variables de sortie, par ordre d'importance. Il est ainsi toujours possible de récupérer les premières variables de sortie, en ignorant les suivantes.