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 :

envoyer une liste d'arguments à une fonction numérique


Sujet :

MATLAB

Vue hybride

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

    Informations forums :
    Inscription : Février 2007
    Messages : 24
    Par défaut envoyer une liste d'arguments à une fonction numérique
    Bonjour
    Dans un programme j'ai créé une fonction phi qui retourne une valeur réelle à un argument réél. Je dispose d'une liste u, et je voudrais un tableau qui contienne tous les phi(x), pour x dans u. (Evidemment phi(u) et @phi(u) ne marchent pas).
    Connaissez-vous l'instruction correspondante (qui évite de faire une boucle for)?
    Merci d'avance

  2. #2
    Membre Expert
    Homme Profil pro
    Inscrit en
    Mai 2008
    Messages
    2 040
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 2 040
    Par défaut
    Bonjour.
    Je dispose d'une liste u, et je voudrais un tableau qui contienne tous les phi(x), pour x dans u
    Donne nous un exemple de données.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 24
    Par défaut
    voilà un exemple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    function exemple
    t=0:.1:1;
    tablf=?????;
    plot(t,tablf)
     
    function y=f(x)
    y=x^2;
    Que mettre à la place des ???? pour que tablf contienne les valeurs de f pour t entre 0 et 1 et que la figure représente donc la courbe de x^2 entre 0 et 1?

  4. #4
    Expert confirmé
    Avatar de duf42
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Novembre 2007
    Messages
    3 111
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Formateur en informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 111
    Par défaut
    Bonjour,

    Une légère modification de ta fonction f devrait fonctionner :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    function exemple
    t=0:.1:1;
    tablf=f(t);
    plot(t,tablf)
    
    function y=f(x)
    y=x.^2;
    A tester...

    Bonne journée,
    Duf

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 24
    Par défaut
    En fait c'est un peu plus compliqué...Voilà la vraie fonction f. C'est une intégrale à paramètre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    u=1:h:infini;
    v=exp(-u*s^2/2);
    w=u^(3/2);
    y=1/sqrt(2*pi)*h*sum(exp(v)./w);
    Je me souviens avoir déjà utilisé il y a longtemps une instruction qui peut appliquer à une fonction un tableau de valeurs, il y avait un "@" dedans...

  6. #6
    Expert confirmé
    Avatar de duf42
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Novembre 2007
    Messages
    3 111
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Formateur en informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 111
    Par défaut
    Ah désolé...

    Dans ce cas, la fonction ARRAYFUN pourrait te convenir:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    result = arrayfun(@ma_fonction, mes_donnees);
    J'espère que çà correspond mieux à tes attentes (je te conseille quand même de jeter un oeil sur l'aide de la fonction...)

    Bon courage,
    Duf

Discussions similaires

  1. [AJAX] liste liée a une liste liée a une liste
    Par dirty_harry dans le forum AJAX
    Réponses: 2
    Dernier message: 03/07/2009, 11h18
  2. modifier une liste contenue dans une liste
    Par harris_macken dans le forum Collection et Stream
    Réponses: 10
    Dernier message: 18/03/2008, 16h52
  3. Réponses: 5
    Dernier message: 12/03/2008, 18h16
  4. acceder à une liste contenue dans une liste
    Par CPI_en_mousse dans le forum Servlets/JSP
    Réponses: 14
    Dernier message: 12/06/2007, 08h33
  5. remplir une liste à partir d'une liste
    Par LeXo dans le forum Access
    Réponses: 7
    Dernier message: 14/04/2006, 12h29

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