Matlab: définir fonctions dans un script ?
Résolu
nchristedem
Messages postés
24
Statut
Membre
-
DrNitro Messages postés 733 Statut Membre -
DrNitro Messages postés 733 Statut Membre -
Bonjour,
Je suis nouveau dans Matlab. Je voudrais savoir si c'est possible d'insérer (ou définir) des fonctions dans un script. Par exemple définir des fonctions A (x,y), B(c,z) dans un script et les utiliser dans le même script. Si oui, comment? Visiblement, je suis obligé de définir les fonctions dans un autre m-file.
Je suis nouveau dans Matlab. Je voudrais savoir si c'est possible d'insérer (ou définir) des fonctions dans un script. Par exemple définir des fonctions A (x,y), B(c,z) dans un script et les utiliser dans le même script. Si oui, comment? Visiblement, je suis obligé de définir les fonctions dans un autre m-file.
A voir également:
- Définir une fonction sur matlab
- Fonction si et - Guide
- Définir google comme page d'accueil - Guide
- Definir foyer - Accueil - Guide streaming
- Fonction miroir - Guide
- Fonction remplacer sur word - Guide
2 réponses
en googlant un peut ontrouve ici https://us191.ird.fr?article3 ceci
* Les fonctions sous MATLAB
Les fichiers function sont équivalent aux sous programme. Une fonction peut posséder des arguments d’entrée et des arguments de sortie.
Il est préférable d’utiliser le même nom de fichier que la fonction elle-même. A la différence des fichiers script classiques dans MATLAB, les variables à l’intérieur d’un fichier function ne sont pas disponibles à l’extérieur, elles ne sont visibles que dans leurs propres espace de travail.
La syntaxe la plus générale des fichiers function est la suivante :
[y1,y2,...ym]=fonc(x1,x2,..xn)
avec n arguments d’entrée et m arguments de sortie.
Une fonction peut posséder un nombre variable d’arguments d’entrée et sortie. On utilise pour cela les commandes varargin et varargout.
function test(varargin)
for i=1:nargin
x(i)= varargin(i);
end
Utiliser la syntaxe des commandes Matlab set et get avec des propriétés :
function ma_fonction(varargin)
% usage: ma_fonction(x,'propriete',valeur,'...)
x = varargin{1};
property_argin = varargin(2:end);
while length(property_argin) >= 1,
property = property_argin{1};
value = property_argin{2};
property_argin = property_argin(3:end);
switch lower(property)
case 'ma_proprite_1'
var_1 = value;
case 'ma_proprite_2'
var_2= value;
case ...
...
otherwise
msg = sprintf('Propriété inconnue:"%s"',property);
error(msg);
end
end
tu devrait aller faire un tour du coté de Developpez.com --->>pour matlab -->> https://matlab.developpez.com/
* Les fonctions sous MATLAB
Les fichiers function sont équivalent aux sous programme. Une fonction peut posséder des arguments d’entrée et des arguments de sortie.
Il est préférable d’utiliser le même nom de fichier que la fonction elle-même. A la différence des fichiers script classiques dans MATLAB, les variables à l’intérieur d’un fichier function ne sont pas disponibles à l’extérieur, elles ne sont visibles que dans leurs propres espace de travail.
La syntaxe la plus générale des fichiers function est la suivante :
[y1,y2,...ym]=fonc(x1,x2,..xn)
avec n arguments d’entrée et m arguments de sortie.
Une fonction peut posséder un nombre variable d’arguments d’entrée et sortie. On utilise pour cela les commandes varargin et varargout.
function test(varargin)
for i=1:nargin
x(i)= varargin(i);
end
Utiliser la syntaxe des commandes Matlab set et get avec des propriétés :
function ma_fonction(varargin)
% usage: ma_fonction(x,'propriete',valeur,'...)
x = varargin{1};
property_argin = varargin(2:end);
while length(property_argin) >= 1,
property = property_argin{1};
value = property_argin{2};
property_argin = property_argin(3:end);
switch lower(property)
case 'ma_proprite_1'
var_1 = value;
case 'ma_proprite_2'
var_2= value;
case ...
...
otherwise
msg = sprintf('Propriété inconnue:"%s"',property);
error(msg);
end
end
tu devrait aller faire un tour du coté de Developpez.com --->>pour matlab -->> https://matlab.developpez.com/
et si t'a la flemme d'apprendre la syntaxe des "fonctions" tu peut lancer des petits scriptes (ou meme des gros) a l'intérieur de ton script principale en utlisant la commande "run"
et très utile aussi la commande "sim" pour lancer des simulations Simulink
j'espere que ce complément d'informations repond amplement a la question et ne causera pas de bugs !!!