Répondre à la discussion
Affichage des résultats 1 à 7 sur 7

Expression erronée sur MatLab



  1. #1
    Oliver.R

    Expression erronée sur MatLab


    ------

    Bonjour,

    J'ai saisi une formule sur matlab mais ça ne veut pas marcher ça m'affiche une erreur.
    Voici la formule:
    x = (exp(-4*t))*((6*sin(3*t))+(5*cos(3*t )))+((-3*sin(2*t))*(2*cos(10*t)))./((9 + 8).^2);
    Avec t = [-100:1:100]

    L'erreur affichée est :
    ??? Error using ==> mtimes
    Inner matrix dimensions must agree.

    Une petite aide s'il vous plaît ?

    Merci

    -----

  2. Publicité
  3. #2
    pat7111

    Re : Expression erronée sur MatLab

    Citation Envoyé par Oliver.R Voir le message
    Avec t = [-100:1:100]
    Bien que je ne vois pas pourquoi ca coince avec ca, affiche ton t... C'est le vecteur 3 lignes, 1 colonne : (-100, 1, 100)^t qui serait avantageursement remplace par

    Code:
    t = -100:1:100;
    Cela te donnera -100, -99, -98 ... 98, 99, 100 ce qui doit etre l'intervalle voulu.

    Ensuite, pourquoi un point dans l'expression suivante ?
    Code:
    (9+8).^2
    Chaque terme etant un scalaire, ca devrait marcher mais sait-on jamais...

    Si ca ne va toujours pas, decoupe ton expression en donnant un nom a chaque morceau. Tu verras lequel pose probleme ou si chacun se definit sans erreur, tu pourras comparer leurs dimensions dans le Workspace (ou avec la fonction size)
    Plutôt appliquer son intelligence à des conneries que sa connerie à des choses intelligentes...

  4. #3
    Oliver.R

    Re : Expression erronée sur MatLab

    Salut

    t = [-100:1:100] est le même que t = -100:1:100 quand on a une seule dimension

    et le point dans (9+8).^2 est impératif pour la version 7.4.0 ( ne me demandez pas pourquoi mais ça m'a déjà chiffonné )

    J'ai déjà mis une formule qui ressemble un peu " x = 6 * sin(2 * t) + 5 * cos(2 * t) + ((1./-3) * sin(10 * t)) " ça a marché impec avec t déclaré en tant que vecteur.

    Alors ? :P

  5. #4
    lou_ibmix_xi

    Re : Expression erronée sur MatLab

    A vu de nez c'est tout simple: "t" est un vecteur => donc exp (t), cos (t) etc sont des vecteurs, or le '*' est bien la multiplication matricielle, et tu ne peux pas faire "t * t" puisque ce n'est pas une multiplication matricielle valide...
    Utilise la multiplication points à points qui est l'opérateur ".*"

  6. #5
    Oliver.R

    Re : Expression erronée sur MatLab

    Et bah bravo M'sieur... finalement c'est ce maudit point Merci à vous deux Ca a marché , et je saurai comment procéder avec les autres formules

  7. A voir en vidéo sur Futura
  8. #6
    lou_ibmix_xi

    Re : Expression erronée sur MatLab

    10 ans de MATLAB, ça laisse des traces...

  9. Publicité
  10. #7
    pat7111

    Re : Expression erronée sur MatLab

    Citation Envoyé par Oliver.R Voir le message
    t = [-100:1:100] est le même que t = -100:1:100 quand on a une seule dimension
    Ah oui... pardon, j'avais vu des ; au lieu de : sans prendre le temps de tester.
    Plutôt appliquer son intelligence à des conneries que sa connerie à des choses intelligentes...

Sur le même thème :

Discussions similaires

  1. DPE méthode 3CL 3CLv15c erronée
    Par thomas1230 dans le forum Habitat bioclimatique, isolation et chauffage
    Réponses: 29
    Dernier message: 23/03/2011, 19h19
  2. [Thermique] estimation de puissance de radiateur erronée ?
    Par Rouls dans le forum Dépannage
    Réponses: 7
    Dernier message: 27/01/2010, 18h29
  3. Matlab : expression réelle ou complexe ?
    Par bouigs dans le forum Logiciel - Software - Open Source
    Réponses: 0
    Dernier message: 21/07/2005, 10h26
  4. photo erronée, possible de réparer ?
    Par Xandeur dans le forum Logiciel - Software - Open Source
    Réponses: 2
    Dernier message: 09/07/2005, 17h20
  5. Loie des gazs parfaits érronée?
    Par Fufu dans le forum Physique
    Réponses: 12
    Dernier message: 15/09/2004, 15h57
Découvrez nos comparatifs produits sur l'informatique et les technologies.