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 :

Besoin d'aide sur l'accès à une structure au nom variable


Sujet :

MATLAB

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2012
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 3
    Par défaut Besoin d'aide sur l'accès à une structure au nom variable
    Bonsoir à tous!

    Pour commencer voici mon script :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    YCldR1 = VdeltaCl(j,1)*100;                                                                 
    YCldR2 = VdeltaCl(j+1,1)*100;                                                              
     
    MYCldR1 = load ( ['D:\Stage-APY\Projet_simulateur\Matlab\Matrices\CldeltaRatio_FO_ChordRatio_ClalphaRatio\CldeltaRatio_FO_ChordRatio_',num2str(YCldR1),'.mat']);
    MYCldR2 = load ( ['D:\Stage-APY\Projet_simulateur\Matlab\Matrices\CldeltaRatio_FO_ChordRatio_ClalphaRatio\CldeltaRatio_FO_ChordRatio_',num2str(YCldR2),'.mat']);
     
    YClR1 = interp1(MYCldR1(:,1), MYCldR1(:,2), chordRatio ,'linear','extrap'); % Interpolation of MYCldR1
    YClR2 = interp1(MYCldR2(:,1), MYCldR2(:,2), chordRatio ,'linear','extrap');  % 
    Interpolation of MYCldR2
    Pour réaliser mon interpolation, je souhaiterais avoir accès aux vecteurs colonnes de mes deux matrices. Cependant, MYCldR1 et MYCldR2 sont des structures donc pour faire une interpolation sur leur contenu, je dois taper une commande du genre:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    interp1(MYCldR1.CldeltaRatio_FO_ChordRatio_YCldR2(:,1)...
    Le problème est que YCldR2 est une valeur fixée précedemment (égale à 92 sur ce coup mais variable pour d'autre cas) et que Matlab ne reconnait pas la structure en tant que tel.

    Comment faire pour qu'il prenne ma variable "YCldR2" comme le nom de ma structure?

    Merci d'avance!

    Kollko

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Le terme exact est champ dynamique de structure On l'utilise en rajoutant des parenthèses comme ceci (je préfère utiliser sprintf à la concaténation comme tu le fais avec num2str ) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    champ = sprintf('CldeltaRatio_FO_ChordRatio_%d',YCldR2)
    MYCldR1.(champ)(:,1)

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2012
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 3
    Par défaut
    Bonjour!

    Merci de ta réponse

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

Discussions similaires

  1. besoin d'aide sur une requette sql
    Par maxidoove dans le forum Langage SQL
    Réponses: 13
    Dernier message: 10/10/2005, 18h42
  2. [C#] Besoin d'aide sur l'affichage d'une combobox
    Par dcd3 dans le forum Windows Forms
    Réponses: 2
    Dernier message: 08/10/2005, 00h43
  3. Besoin d'aide sur une fonction
    Par PrinceMaster77 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 30/08/2005, 17h40
  4. Réponses: 1
    Dernier message: 03/08/2005, 11h41
  5. Besoin d'aide sur une requête (JOIN + COUNT ?)
    Par PanzerKunst dans le forum Langage SQL
    Réponses: 2
    Dernier message: 01/06/2005, 10h29

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