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 :

interpolation avec TriScatteredInterp et delaunay.


Sujet :

MATLAB

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    62
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Juin 2010
    Messages : 62
    Points : 49
    Points
    49
    Par défaut interpolation avec TriScatteredInterp et delaunay.
    Bonjour,

    J'essaie de créer une interpolation entre des points d'un scatter 3D en utilisant la triangulation de Delaunay.

    Mon code est le suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    x = xlsread('Database_PAZFLOR_DN450_rev06.xls','P01','A16:A872')
    y = xlsread('Database_PAZFLOR_DN450_rev06.xls','P01','B16:B872')
    z = xlsread('Database_PAZFLOR_DN450_rev06.xls','P01','C16:C872')
     
    TRI=DelaunayTri(x,y,z)
    A=[1:3958]';
    F=TriScatteredInterp(TRI,A)
    [qx,qy]=meshgrid(0:400,0:80);
    qz= F(qx)
    mesh(qx,qy,qz);
    hold on;
    plot3(x,y,z,'o');
    grid on;
    j'ai les erreurs suivantes:

    ??? Error using ==> TriScatteredInterp
    The number of data point locations should equal the number of data point values.

    Error in ==> Interpscatter at 55
    F=TriScatteredInterp(TRI,A)

    Je ne comprends pas!!!

    en fait je sais qu'il faut un vecteur de type A dans mon code mais je ne sais pas à quoi il sert???

    Je ne sais pas si j'utilise la bonne méthode: je voudrais en fait récupérer les coordonnées des points issues de la triangulation de delaunay en précisant moi même en quel abscisse et ordonnée je me place.

    Merci d'avance pour votre aide.

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 21
    Points : 18
    Points
    18
    Par défaut
    Bonjour,
    le vecteur A représente les données à interpoler (A=f(x,y,z). Que cherches tu à faire exactement ?

    Si j'ai bien compris, tu cherche à obtenir le z pour un (x,y) donné ?

    Dans ce cas, il faut simplement appeler

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
     
    F=Triscatteredinterp(x,y,z);
     
    %vecteur de points à interpoler
    [qx,qy]=meshgrid(mesabcisses,mesordonnées);
     
    qz=F(qx,qy);
    http://www.mathworks.com/access/help...terpclass.html

    C'est très bien expliqué ici.

    Si tu cherches à trouver des simplex dans la triangulation de delaunay, utilise tsearch ( http://www.mathworks.com/access/help.../tsearch.shtml )

Discussions similaires

  1. interpolation avec spline cubique
    Par hamadagm dans le forum MATLAB
    Réponses: 1
    Dernier message: 21/04/2011, 10h42
  2. [interp2] Interpolation avec des valeurs NaN
    Par phantom2040 dans le forum MATLAB
    Réponses: 1
    Dernier message: 02/12/2010, 17h35
  3. [Débutant] Interpolation avec condition
    Par Bichon37 dans le forum MATLAB
    Réponses: 3
    Dernier message: 16/08/2010, 14h57
  4. interpolation avec la proc gplot
    Par nostress dans le forum ODS et reporting
    Réponses: 2
    Dernier message: 02/08/2008, 08h36
  5. Interpolation avec des NaN
    Par kis93 dans le forum MATLAB
    Réponses: 1
    Dernier message: 22/12/2007, 14h38

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