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 :

superposition de deux courbes décalées


Sujet :

MATLAB

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 27
    Points : 14
    Points
    14
    Par défaut superposition de deux courbes décalées
    Bonjour,
    j'ai dessiné deux courbes de même allure provenant de deux matrices différentes.

    Jusqu'à présent j'ai toujours translaté une courbe en x et y afin de lui faire épouser les contours de la courbe première mais cette translation n'est pas précise longue et fastidieuse à réaliser car l'estimation de la translation se fait avec le zoom de la fonction graphique.

    Existe-t'-il une commende Matlab permettant de réaliser la superposition de deux courbes?

    Quel autre moyen existerai-t'-il?

    Merci

    Nico76131
    Images attachées Images attachées  

  2. #2
    Modérateur

    Homme Profil pro
    Ingénieur en calculs scientifiques
    Inscrit en
    Août 2007
    Messages
    4 639
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Ingénieur en calculs scientifiques

    Informations forums :
    Inscription : Août 2007
    Messages : 4 639
    Points : 7 614
    Points
    7 614
    Par défaut
    Bonjour,

    si tu souhaite juste réaliser une translation, il suffit de ccentre les 2 courbes par rapport au même point, par exemple en décalant le barycentre de la deuxième courbe sur le barycentre de la première.
    Pour une bonne utilisation des balises code c'est ici!
    Petit guide du voyageur MATLABien : Le forum La faq Les tutoriels Les sources


    La nature est un livre écrit en langage mathématique. Galilée.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 27
    Points : 14
    Points
    14
    Par défaut
    Très bonne idée, cela marche assurément bien.
    Merci.

  4. #4
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 27
    Points : 14
    Points
    14
    Par défaut superposition de deux courbes décalées
    Bonjour,
    j'ai deux courbes identiques (formant chacune la même surface fermée) qui sont décalées et que je voudrai superposer.
    J'ai calculé le barycentre de chaque courbe et ai effectué une translation de vecteur. Le problème c'est que le nombre de points n'est pas constant.

    Existe t'il une fonction permettant de calculer le centre d'une surface?
    Quelle méthode pourrais-je utiliser pour ce problème?

    Toutes vos idées sont bien venues.
    Merci

  5. #5
    Invité
    Invité(e)
    Par défaut
    Bonsoir,

    Je ne comprends en quoi le déplacement par le barycentre est rendu problématique si le nombre de points n'est pas constant
    Quel est ton problème exactement?

  6. #6
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 27
    Points : 14
    Points
    14
    Par défaut
    En fait j'ai cherché le barycentre en x et y de mes courbes et fait la différence :
    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
    19
    20
    21
    22
     
    % Barycentre courbe expérimentale %
     
     
        xgh=sum(C(:,1))/(sum(length(C)));
        ygh=sum(C(:,2))/(sum(length(C)));
        zgh=sum(C(:,3))/(sum(length(C)));
     
     
     
    % Barycentre courbe de référence %
     
     
        xgn=sum(N(:,1))/(sum(length(N)));
        ygn=sum(N(:,2))/(sum(length(N)));
        zgn=sum(N(:,3))/(sum(length(N)));
     
    %différence des Barycentres%
     
    a11=xgh-xgn;
    b11=ygh-ygn;
    c11=zgh-zgn;

    J'espère que la faute ne viens pas de la formule que j'ai rentré pour le barycentre.

    Au sujet du nombre non régulier de points, ce auquel je pensais serait par exemple : à certains endroits de courbe on a une agglutination de points (de masse) et à d'autres endroits des points qui sont plus distants les uns les autres. Qu'en pensez-vous?

    Voici le résultat que j'obtient. Je trouve l'erreur de translation trop importante et voudrais que mes courbes soient vraiment l'une au dessus de l'autre.

    Que me conseillez-vous?
    Images attachées Images attachées

  7. #7
    Invité
    Invité(e)
    Par défaut
    Tes formules sont à moitié justes, il y a un sum de trop, mais cela ne change rien au résultat.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
        xgh=sum(C(:,1))/length(C);
        ygh=sum(C(:,2))/length(C);
        zgh=sum(C(:,3))/length(C);
     
    % Barycentre courbe de référence %
     
        xgn=sum(N(:,1))/length(N);
        ygn=sum(N(:,2))/length(N);
        zgn=sum(N(:,3))/length(N);
    Je présume que cette agglutination n'a lieu que dans ta courbe expérimentale, c'est de là que vient alors le problème.
    Dans ce cas je pense que tu pourrais prendre plutôt le centre [(xmax+xmin)/2 (ymax+ymin)/2 (zmax+zmin)/2] avec les fonction min/max.

Discussions similaires

  1. abcisse d'intersection de deux courbes
    Par ramrouma dans le forum MATLAB
    Réponses: 1
    Dernier message: 14/06/2007, 13h52
  2. Superposition de deux div.
    Par zulot dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 14/06/2007, 12h18
  3. Intersection de deux courbes
    Par ramrouma dans le forum MATLAB
    Réponses: 2
    Dernier message: 28/01/2007, 16h20
  4. [VBA E]Colorier l'espace entre deux courbes
    Par conconbrr dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 25/07/2006, 09h19
  5. Intersection de deux courbes quelconques
    Par ShootDX dans le forum Algorithmes et structures de données
    Réponses: 32
    Dernier message: 31/03/2006, 10h32

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