Je suis en train de calculer lim (n> inf) D^n, où D est une matrice diagonale:Matlab: Limite de n à l'infini pour le pouvoir d'une matrice
D = [1.0000 0 0 0; 0 0.6730 0 0; 0 0 0.7600 0; 0 0 0 0.7370]
n = 1
L = limit(D^n,n,inf)
Cela renvoie l'erreur : Fonction 'limite' indéfinie pour les arguments d'entrée de type 'double'.
Je suis sûr que cela devrait aboutir à la plupart des entrées, sauf l'entrée en haut à gauche qui va à zéro, mais je dois être en mesure de présenter cela avec des résultats MATLAB. Y a-t-il autre chose que je dois inclure dans ma fonction limite?
'limit' est une fonction symbolique. Êtes-vous sûr de ne pas vouloir dire «syms n»; L = limite (D^n, 1, inf) ' –
Avez-vous la boîte à outils mathématique symbolique installée? Il est requis pour la fonction ['limit'] (https://fr.mathworks.com/help/symbolic/limit.html?searchHighlight=Limit&s_tid=doc_srchtitle) ... – Wolfie
Avez-vous vraiment besoin de présenter ceci dans MATLAB? Il est tout à fait clair que le résultat sera tout à zéro, sauf pour le coin supérieur gauche. Vous pouvez voir que toutes les diagonales sauf celle en haut à gauche ont une valeur inférieure à 1, et [élever une matrice diagonale à la puissance 'n' prendrait simplement les puissances de chaque diagonale individuellement à la puissance 'n' avec le reste de la matrice définie sur 0] (http://cs.ups.edu/~bryans/Current/Spring_2014/Handout_DiagonalMatrixPowers.pdf). Par conséquent, en élevant ceux-ci à la puissance infinie, vous obtiendriez une matrice nulle comme 'r^n = 0' si' | r | <1' et 'n -> infini'. – rayryeng