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 :

Message d'erreur à cause d'un log complexe


Sujet :

MATLAB

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Avril 2007
    Messages
    127
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 127
    Par défaut Message d'erreur à cause d'un log complexe
    Bonjour tout le monde,

    J'ai une fonction dépendant du log complexe.
    J'essaye de faire un plot en deux dimensions classiques pour voir la tête de la fonction ... mais j'avoue que je n'y arrive pas.

    Dans l'aide il est dit que l'on pouvait faire un plot(real(Z),imag(Z)) mais ça n'avance pas mon problème là.

    En fait je cherches à regarder la tête de la courbe pour voir si ma dérivée est bonne ou pas.

    Y'a t'il un moyen avec Matlab de le faire ? Par exemple un plot3 avec en abscisse les réels et en Y les imaginaires ?

    Hollow

  2. #2
    Membre émérite

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2007
    Messages
    979
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2007
    Messages : 979
    Par défaut
    Je ne comprend pas ce que tu veux faire .

    Ceci ne te conviens pas ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    %-- Variables
    varSupport = -10:-1;
    varLog = log(i + varSupport); % ton Z
     
    %--Plot
    % Les deux en fonction du support
    plot(varSupport,real(varLog))
    hold on
    plot(varSupport,imag(varLog),'r')
    % Reel / imaginaire
    figure(2)
    plot(real(varLog),imag(varLog),'g')

  3. #3
    Membre confirmé
    Inscrit en
    Avril 2007
    Messages
    127
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 127
    Par défaut [Débutant] Message d'erreur à cause d'un log complexe
    Bonjour tout le monde,

    Je m'excuse pour le post d'hier qui ne devait pas être clair. D'ailleurs je penses qu'il est passé à la trappe.

    Voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    for i=1:m
    K2=klma(S(i)+ds,0,kernel,param);
    K1=klma(S(i)-ds,0,kernel,param);
    u(i)=(K2-K1)./(2.*ds);
    end
    Quelque chose de très classique en réalité. Ma fonction klma est du style

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    K=(trapz(kernel(:,1),log(1-param(3).*(s.*kernel(:,2)+t.*kerneld(:,2))-(param(2).^2./2).*(s.*kernel(:,2)+t.*kerneld(:,2)).^2)));
    où le log est le logarithme complexe.

    Voici la réponse :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Warning: Could not find an exact (case-sensitive) match for 'klma'.
    C:\Users\Thomas\Desktop\MesfonctionsMatlab\KLMA.m is a case-insensitive match and will be used instead.
    You can improve the performance of your code by using exact
    name matches and we therefore recommend that you update your
    usage accordingly.  Alternatively, you can disable this warning using
    warning('off','MATLAB:dispatcher:InexactMatch').
    >> plot(S,u)
    Warning: Imaginary parts of complex X and/or Y arguments ignored.
    Et là j'avoue que je comprends pas trop pourquoi ça foire ...

    Hollow

  4. #4
    Expert confirmé
    Avatar de Caro-Line
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    9 458
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 9 458
    Par défaut
    Tu as 2 messages qui ne sont pas d'erreur mais des warnings :
    - le 1er te dit qu'il faut appeler une fonction par son nom en tenant compte de la casse : apparemment tu as enregistré ta fonction sous le nom KLMA, il faut donc l'appeler avec KLMA et non pas klma. C'est juste une recommandation pour de meilleures performances.

    - le 2ème te dit juste qu'il n'a pas pris en compte les parties imaginaires de tes variables.

    Comme apparemment tu avais perdu ton post initial
    As-tu lu la réponse du Samouraï ?

  5. #5
    Membre émérite

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2007
    Messages
    979
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2007
    Messages : 979
    Par défaut
    Salut,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Warning: Could not find an exact (case-sensitive) match for 'klma'.
    C:\Users\Thomas\Desktop\MesfonctionsMatlab\KLMA.m is a case-insensitive match and will be used instead.
    You can improve the performance of your code by using exact
    name matches and we therefore recommend that you update your
    usage accordingly.  Alternatively, you can disable this warning using
    warning('off','MATLAB:dispatcher:InexactMatch').
    Un probleme de majuscule je pense, renomme le fichier et la fonction en klma.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Warning: Imaginary parts of complex X and/or Y arguments ignored.
    la partie imaginaire de u est ignorée . C'est comme si tu écris :
    ++ bonne chance

  6. #6
    Membre confirmé
    Inscrit en
    Avril 2007
    Messages
    127
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 127
    Par défaut
    Merci pour vos réponses,

    Pour le premier point j'ai enregistré sous klma, mais dans mon repertoire c'est écrit KLMA.m ... je vais corriger ça et déjà un Warning en moins.

    Pour le second c'est bien bien nul lol. Car du coup, et c'est là le problème, je n'ai pas toutes les valeurs or c'est ce que je souhaite. Le problème doit venir d'ailleurs car normalement ça devrait être réel ... car il s'agit de hauteur en mètre

    Encore merci,

    Hollow

Discussions similaires

  1. Messages d'erreur au demarrage dans le log de la jvm
    Par Elendhil dans le forum Glassfish et Payara
    Réponses: 6
    Dernier message: 15/12/2009, 17h05
  2. Réponses: 2
    Dernier message: 04/02/2009, 15h04
  3. Réponses: 1
    Dernier message: 30/01/2008, 23h10
  4. [API Java Logging] Message d'erreur
    Par netangel dans le forum Logging
    Réponses: 1
    Dernier message: 14/12/2006, 22h18
  5. Message d'erreur à cause d'une session : inconnu
    Par michka999 dans le forum Langage
    Réponses: 17
    Dernier message: 24/08/2006, 12h39

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