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

Simulink Discussion :

élever une partie d'un vecteur au carré, au cube.


Sujet :

Simulink

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    76
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 76
    Points : 54
    Points
    54
    Par défaut élever une partie d'un vecteur au carré, au cube.
    Bonjour,

    Je travaille actuellement sous simulink (c'est imposé par mon employeur) et j'aimerais savoir comment élever les éléments d'une colonne de matrice au carré ou au cube.
    J'ai créé un vecteur "vitesse" dans le workspace que j'importe via la fonction "simin" ("from workspace") où la 1ère colonne représente le temps et la 2ème la vitesse. J'aimerais pouvoir multiplier ces éléments par eux-même (pour une force aérodynamique par exemple). Il faudrait en plus que ces éléments soient gardés en mémoire jusqu'à la prochaine simulation, mais ce n'est pas encore le plus urgent.

    Merci d'avance à toute âme charitable qui voudra bien m'aider.

  2. #2
    Expert confirmé
    Avatar de duf42
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Novembre 2007
    Messages
    3 111
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Formateur en informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 111
    Points : 4 661
    Points
    4 661
    Par défaut
    Bonjour,

    Dans la librairie "Math Operations" tu as un bloc "Math function" qui permet (entre autres) de mettre un signal au carré.

    Duf
    Simulink & Embedded Coder

    Au boulot : Windows 7 , MATLAB r2016b
    A la maison : ArchLinux mais pas MATLAB

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    76
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 76
    Points : 54
    Points
    54
    Par défaut
    J'avais déjà utilisé cette fonction mais sans succès. Ca fonctionne bien pour une fonction mathématique définie mais j'aimerais juste modifier la 2ème colonne de mon vecteur sans toucher à la première.
    En plus de ca ma colonne "temps" n'est pas définie régulièrement (1 2 3 4..) mais plutôt comme cela: 0 10 15 25 30 40 50. Je ne met que les instants où il y a des changements de vitesse. Je me demande si cela ne pose pas un problème puisqu'une mise en garde apparait: "le pas temporel vaut 0.2" et le vecteur que je dois en trouver en sortie (je l'envoie dans mon workspace via la fonction "to workspace") est de type '1x1 struct' et pas du même type que mon vecteur d'entrée qui lui est '7x2 double'.

    Merci Duf pour ton aide.

    PS: suis-je assez clair?

  4. #4
    Expert confirmé
    Avatar de duf42
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Novembre 2007
    Messages
    3 111
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Formateur en informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 111
    Points : 4 661
    Points
    4 661
    Par défaut
    Pourtant ca fait exactement ce que tu souhaites.

    Quand tu mets un vecteur avec 2 colonnes dans un bloc FromWorkspace, seule la seconde est utilisée en tant que telle, la première permet de définir les abscisses de ton vecteur (tu peux mettre un Scope à la sortie pour t'en convaincre).

    Pour ta sortie, tu peux régler le format de sortie dans les paramètres de ton bloc et par défaut c'est une structure mais tu peux tout à fait avoir un vecteur [temps, données]. Par contre le nombre d'éléments ne dépend pas des données d'entrée mais des paramètres de simulation (le temps de simulation et le pas de calcul)

    Pour ces paramètres de simulation (Ctrl+E, Solver), je te conseille d'utiliser dans un premier temps un solveur de type pas fixe (donc de fixer une longueur de pas cohérente avec ton problème) et de définir le temps de fin en fonction du temps que tu utilises dans ton vecteur d'entrée.
    Simulink & Embedded Coder

    Au boulot : Windows 7 , MATLAB r2016b
    A la maison : ArchLinux mais pas MATLAB

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    76
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 76
    Points : 54
    Points
    54
    Par défaut
    Merci Duf42, tu m'as aidé sur plusieurs problèmes à la fois

    Bonne fin de journée!

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    76
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 76
    Points : 54
    Points
    54
    Par défaut
    Juste une dernière question: y-a-t-il une grande différence entre "scope" et "vector scope"?

    Merci!

Discussions similaires

  1. Sélectionner une partie d'un vecteur
    Par yoann_deygas dans le forum MATLAB
    Réponses: 1
    Dernier message: 01/06/2007, 11h15
  2. Réponses: 4
    Dernier message: 18/05/2004, 13h58
  3. [CVS]Gestion de 2 versions avec une partie commune
    Par Gromitou dans le forum EDI et Outils pour Java
    Réponses: 4
    Dernier message: 19/02/2004, 14h32
  4. comment remplacer une partie de texte dans un champs
    Par patlapi dans le forum Paradox
    Réponses: 4
    Dernier message: 20/11/2003, 14h38
  5. selectionner une partie d'un TImage
    Par bidochon dans le forum Composants VCL
    Réponses: 2
    Dernier message: 20/02/2003, 19h08

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