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

matlab



  1. #1
    yuuuu

    matlab


    ------

    Bonjour,
    voici la matrice ci dessous,

    [5−λ, −1, −2 ;−1 ,1−λ ,4 ;−2 ,4, 2−λ]
      je viens seulement de commencer Matlab, et je voudrais savoir comment Tracez l’´evolution de la valeur du determinant en fonction de λ. pour λ de -10 à 10.
    merci

    -----

  2. #2
    Antoane
    Responsable technique

    Re : matlab

    Bonjour,

    Plusieurs méthodes possibles :
    - calculer (analytiquement) le déterminant de cette matrice en fonction de λ puis tracer la fonction ;
    - utiliser une boucle for λ=... et calculer la valeur de la matrice et de son déterminant à chaque itération (valeurs qui ne dépendront pas de λ) puis tracer le résultat ;
    - utiliser le calcul symbolique sous matlab. https://fr.mathworks.com/help/symbol....mathworks.com
    - etc.

    La seconde méthode n'est pas la plus élégante, mais la plus simple à comprendre et coder.
    Deux pattes c'est une diode, trois pattes c'est un transistor, quatre pattes c'est une vache.

  3. #3
    yuuuu

    Re : matlab

    OUI la 2eme me parait pas mal avec une boucle,
    for lamba[-10,10]
    et la afficher le det(A)
    end
    mais comment faire apparaître la figure qui me donne la courbe

  4. #4
    Antoane
    Responsable technique

    Re : matlab

    Un gros avantage de Matlab, c'est que beaucoup de monde l'utilise. On trouve donc énormément d'exemples de code sur internet, il suffit de demander à Google (de préférence en anglais).

    https://fr.mathworks.com/help/matlab/ref/for.html
    https://fr.mathworks.com/help/matlab/ref/plot.html

    Ici, une solution classique consistera à créer un vecteur de longueur "le nombre de valeurs de lambda que tu voudras tester" et de remplir ce vecteur peu à peu : une valeur en est calculée à chaque itération.
    Deux pattes c'est une diode, trois pattes c'est un transistor, quatre pattes c'est une vache.

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

    Re : matlab

    ah d'accord, mais dans quelle partie de dois parler du déterminant . apres la boucle ou avant ?

  7. #6
    Antoane
    Responsable technique

    Re : matlab

    Citation Envoyé par yuuuu Voir le message
    OUI la 2eme me parait pas mal avec une boucle,
    for lamba[-10,10]
    et la afficher le det(A)
    end
    mais comment faire apparaître la figure qui me donne la courbe
    détaille le code que tu entends utiliser.
    en pseudo-code si tu ne connais pas suffisament bien la syntaxe matlab.
    Deux pattes c'est une diode, trois pattes c'est un transistor, quatre pattes c'est une vache.

  8. #7
    yuuuu

    Re : matlab

    figure(1)
    for lambda [-10,10]
    x=det(A)
    disp(['La variable x vaut : ' num2str(x)]);
    end
    hold on

  9. #8
    Antoane
    Responsable technique

    Re : matlab

    Bonjour,

    1. Relis la page sur le fonctionnement des boucles for ;
    2. Essayes de te mettre à la place de ton ordinateur et de voir comment il va comprendre ton code, ligne après ligne :
    ligne 1 : On fabrique une figure que l'on appelle "figure n° 1"
    ligne 2 : c'est le début d'une boucle, dans laquelle c'est une variable appellée "lambda" qui va varier.
    pour la première itération de la boucle, lambda vaut ... (à toi de remplir)
    ligne 3 : on assigne à une nouvelle variable x la valeur du déterminant de A, qui est une variable...
    à toi de poursuivre, au moins de tête, jusqu'à avoir fait les [je ne sais pas combien] d'itérations de la boucle et d'être arrivé à "hold on".
    3. lancer le programme :
    - vérifier qu'il fait ce qu'il doit faire ;
    - lire, interpréter et comprendre les messages d'erreurs renvoyés par Matlab. Ceux-ci sont généralement assez explicites, google peut t'aider à les interpréter si besoin.
    Deux pattes c'est une diode, trois pattes c'est un transistor, quatre pattes c'est une vache.

  10. #9
    yuuuu

    Re : matlab

    figure
    lambda=-10
    for lamba = [-10;10]
    ****lambda= lamba+1
    end
    det(A)
    plot(det(A));
    je dois mettre les valeurs de lambda dans la boucle , mais je dois aussi mettre le calcule du determinant , ou a la fin apres la boucle ?

  11. #10
    Antoane
    Responsable technique

    Re : matlab

    Bonsoir,

    Juste un rappel si ce n'était pas clair : http://forums.futura-sciences.com/pr...ces-forum.html : on (je) n'écrira pas ton code et ne le corrigerons pas si tu ne fais pas l'effort de suivre les conseils donnés.
    Deux pattes c'est une diode, trois pattes c'est un transistor, quatre pattes c'est une vache.

  12. #11
    yuuuu

    Re : matlab

    je sais , mais je voudrais juste savoir, si je dois mettre le calcule du determinant dans la boucle, ou en dehors , si ca change la programmation.

Discussions similaires

  1. [Programmation] MATLAB.SIMULINK,[Embedded Matlab function]
    Par soumati23 dans le forum Électronique
    Réponses: 0
    Dernier message: 08/05/2016, 13h11
  2. [MATLAB] Problème avec MATLAB Compiler
    Par Noelie123 dans le forum Programmation et langages, Algorithmique
    Réponses: 0
    Dernier message: 11/03/2016, 10h20
  3. [matlab] programmation : peut-on générer un arbre des fonctions d'un code Matlab ?
    Par bratisla dans le forum Logiciel - Software - Open Source
    Réponses: 3
    Dernier message: 09/07/2015, 10h12
  4. [Matlab]Problème d'optimisation Abaqus/Matlab
    Par Saroute dans le forum Programmation et langages, Algorithmique
    Réponses: 3
    Dernier message: 08/04/2015, 17h54
  5. MATLAB: acquisition de donnée via une interface graphique matlab
    Par inviteaeee671e dans le forum Programmation et langages, Algorithmique
    Réponses: 0
    Dernier message: 08/05/2011, 16h54