IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MATLAB Discussion :

Fonction de fonction


Sujet :

MATLAB

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 34
    Par défaut Fonction de fonction
    Bonjour,

    J'ai un problème tout simple, mais je ne trouve nulle part la réponse. Par exemple, si je veux faire une fonction 'evaluer' qui évalue en x^2 la fonction f, j'écris :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    function res = evaluer(x,f)
        res = f(x.^2);
    end
    Puis je tape par exemple :

    La réponse en est :
    ??? Undefined function or method 'evaluer' for input arguments of type 'function_handle'.

    J'en déduis que ce n'est pas comme ça qu'il faut faire Quelqu'un sait-il ?

    EDIT : j'ai découvert qu'en tapant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    evaluer = @(x,f) f(x.^2);
    Ca marche. Sauf que là, ma fonction d'évaluation est simple, pour quelque chose de plus compliqué, il me faudrait un fichier 'function'.


    Merci beaucoup,

    Gouhouf

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 45
    Par défaut
    Salut

    Le nom de ta function doit avoir le meme nom que le fichier *.m
    De plus, ce fichier doit ce trouver dans ton repertoire courant
    (ou alors tu rajoutes un lien d'acces vers le repertorie)

    De plus:
    le end a la fin de ta fonction enleve le.
    (je ne sais pas si sa change quelque chose mais j'en ai jamais vue ici)

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 45
    Par défaut
    J'ai reussi
    f.m
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    function res = f(x)
        res = x+12;
    end
    evaluer.m
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    function res = evaluer(x,f)
        res = f(x.^2);
    end
    appel de la fonction:

    Enjoy

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 34
    Par défaut
    Bon bah, je ne comprends pas, il a dû en effet y avoir un bug avec Matlab, ou j'ai fait une fausse manip' quelque part. En haut il affichait le bon dossier (je n'en utilise qu'un seul, donc il n'y a pas trop de raison que je change), mais visiblement, il n'y trouvait effectivement pas la fonction. En redémarrant Matlab, ça marchait... Un petit redémarrage de temps en temps, ça peut aider

    Merci pour l'aide :p

    Et désolé pour le dérangement >.>

    Gouhouf

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 45
    Par défaut
    Comptant que sa fonctionne.

    Ps: matlab a deja plante 4 fois cette semaine
    ----->

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. passer en paramettre d'une fonction une fonction
    Par RoM3Ro dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 23/06/2006, 15h54
  2. fonction asp : fonction imprimer
    Par leclone dans le forum ASP
    Réponses: 6
    Dernier message: 23/05/2006, 13h31
  3. DLL, fonctions appelées, fonctions appelantes
    Par kantelise dans le forum Windows
    Réponses: 1
    Dernier message: 10/05/2006, 13h26
  4. [Oracle / Fonction hachage] Fonction de hachage SHA / MD5
    Par shaun_the_sheep dans le forum Oracle
    Réponses: 8
    Dernier message: 26/01/2006, 08h58
  5. [Fonctions] Une fonction ou deux ?
    Par Évariste Galois dans le forum C++
    Réponses: 10
    Dernier message: 24/08/2005, 09h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo