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 :

Différence de précison de calcul entre Excel et Matlab


Sujet :

MATLAB

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    86
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2007
    Messages : 86
    Par défaut Différence de précison de calcul entre Excel et Matlab
    Bonjour !

    Après avoir réalisé quelques calculs je me rends compte que la précision de ceux-ci n'est pas très bonne sous Matlab (précision réelle ou à l'affichage ?)

    Je vous explique :
    j'utilise les formules suivantes (qui sont correctes) pour retrouver les paramètres a b c d d'un plan :

    % a = (yB - yA)(zC - zA) - (zB - zA)(yC - yA)
    % b = - ( (xB - xA)(zC - zA) - (zB -zA)(xC - xA) )
    % c = (xB - xA)(yC - yA) - (yB - yA)(xC - xA)
    % d = - (a.xA + b.yA + c.zA)

    Les points auxquels je fais référence sont :

    x y z
    a 105.5618 106.2054 61.4691
    b 105.5798 106.2599 61.4704
    c 105.5818 106.0420 61.5060

    avec matlab (je suis sur du code que j'ai tapé) , j'obtiens comme résultats :
    a b c d
    0.00220 -0.00064 -0.00400 0.08050


    alors qu'avec Excel (qui sont les bonnes valeurs) , j'obtiens :

    a b c d
    0.00222347 -0.0006382 -0.0040312 0.080861027


    le résultat dans matlab pour le d me semble fort bizarre mais le code est correct.


    Sauriez-vous me dire s'il existe des options à modifier pour conserver toute la précision ?

    D'avance je vous remercie pour votre réponse !

  2. #2
    Membre Expert
    Avatar de tug83
    Homme Profil pro
    MATLAB Geek !
    Inscrit en
    Juin 2006
    Messages
    1 781
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Alpes de Haute Provence (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : MATLAB Geek !
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 781
    Par défaut
    Pour commencer jette un oeil sur la docensuite ça peut être interessant que tu nous montres ton code (en utilisant les balises prévues à cet effet)

    merci

  3. #3
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    86
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2007
    Messages : 86
    Par défaut
    Merci pour la réponse pour le format (je viens de changer en long)

    Cependant mes valeurs ne sont pas encore tout à fait correctes.

    Voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    X1 = 105.561786
    Y1 = 106.2054
    Z1 = 61.469106
     
    X2 = 105.579786
    Y2 = 106.25987
    Z2 = 61.470425
     
    X3 = 105.581786
    Y3 = 106.042025
    Z3 = 61.50602
     
     
    a = (Y2 - Y1)*(Z3 - Z1) - (Z2 - Z1)*(Y3 - Y1)
    b = (-1)*((X2 - X1)*(Z3 - Z1) - (Z2 -Z1)*(X3 - X1))
    c = (X2 - X1)*(Y3 - Y1) - (Y2 - Y1)*(X3 - X1)
    d = (-1)*(a*X1 + b*Y1 + c*Z1)
    Merci pour votre aide

  4. #4
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 317
    Par défaut
    Es-tu sur que la précision (chiffres significatifs) des trois points est la même sous Excel et Matlab ?

  5. #5
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    86
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2007
    Messages : 86
    Par défaut
    Sur et certain ...

    Je viens encore de revérifier...

    MatLab s'arrete peut-etre après un certain nombre de chiffres après la virgule pour effectuer le calcul...

  6. #6
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 317
    Par défaut
    Je viens de refaire le calcul avec EXcel. En utilisant ces valeurs :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    X1 = 105.561786
    Y1 = 106.2054
    Z1 = 61.469106
     
    X2 = 105.579786
    Y2 = 106.25987
    Z2 = 61.470425
     
    X3 = 105.581786
    Y3 = 106.042025
    Z3 = 61.50602
    J'obtiens pour Excel:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     0,00222619720500088000
    -0,00063807200000003900
    -0,00403015000000011000
     0,08049505658661040000
    et pour Matlab:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     0.00222619720500087700
    -0.00063807200000003865
    -0.00403015000000011420
     0.08049505658661038100
    Matlab est légéremment plus précis qu'Excel

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

Discussions similaires

  1. Différence de calcul entre Excel et VB6
    Par jlb59 dans le forum VB 6 et antérieur
    Réponses: 8
    Dernier message: 27/03/2012, 14h54
  2. Problème transfert de dates entre Excel et MATLAB
    Par VegaLyra dans le forum MATLAB
    Réponses: 3
    Dernier message: 25/03/2011, 13h42
  3. calcul différence heure "hh:mm:ss" en excel
    Par khfiyf dans le forum Excel
    Réponses: 4
    Dernier message: 10/04/2008, 13h12
  4. Réponses: 3
    Dernier message: 12/07/2007, 11h38

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