Expression erronée sur MatLab
Répondre à la discussion
Affichage des résultats 1 à 7 sur 7

Expression erronée sur MatLab



  1. #1
    invite81d498d8

    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. #2
    invite5c27c063

    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)

  3. #3
    invite81d498d8

    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

  4. #4
    inviteb9f49292

    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 ".*"

  5. A voir en vidéo sur Futura
  6. #5
    invite81d498d8

    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. #6
    inviteb9f49292

    Re : Expression erronée sur MatLab

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

  8. #7
    invite5c27c063

    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.

Discussions similaires

  1. DPE méthode 3CL 3CLv15c erronée
    Par invite26cd91f7 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 invite543a4332 dans le forum Dépannage
    Réponses: 7
    Dernier message: 27/01/2010, 18h29
  3. Matlab : expression réelle ou complexe ?
    Par invite70e57eb7 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 invite133fb38e dans le forum Logiciel - Software - Open Source
    Réponses: 2
    Dernier message: 09/07/2005, 17h20
  5. Loie des gazs parfaits érronée?
    Par invite5eb13cb6 dans le forum Physique
    Réponses: 12
    Dernier message: 15/09/2004, 15h57
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...