Un programme pour extraire la racine carrée d'une matrice carrée. Calculateur matriciel en ligne

1) Considérons d'abord des matrices réelles. Supposons que la racine soit extraite de la matrice $%A$%, c'est-à-dire il existe une matrice $%B$% telle que $%B \cdot B=A$%. Supposons également que la matrice $%B$% puisse être réduite sous forme diagonale, c'est-à-dire il existe une matrice $%S$% telle que $%S^(-1)BS=B"$%, où $%B"$% est une matrice diagonale. Des égalités $%B"B"=S^(-1)BSS^(-1)BS=S^(-1)BBS=S^(-1)AS$% il s'ensuit que $%A"=S ^ (-1)AS$% est également une matrice diagonale, c'est-à-dire que les matrices $%A$% et $%B$% sont réduites sous forme diagonale par la même transformation. valeurs propres sans ombre, les conclusions suivantes découlent du raisonnement ci-dessus.
1.1)Si la matrice $%A$% est une matrice définie positive symétrique, alors la racine en est extraite sous la forme d'une matrice réelle.
1.2) L'algorithme de calcul de la racine d'une telle matrice est le suivant : résoudre le problème des valeurs propres, extraire les racines des valeurs propres, composer à partir d'elles une matrice diagonale, lui appliquer une transformation inverse de la transformation qui convertit la matrice $%A$% en forme diagonale.
1.3) Le nombre de matrices différentes $%B$% est égal à $%2^n$%, car Pour chaque valeur propre, il existe 2 valeurs racines - positives et négatives.

2) Pour une matrice complexe, le raisonnement restera valable si l’on remplace la symétrie par l’unité. L’exigence de certitude positive sera naturellement supprimée.

3) Solution pour le cas général. Supposons que la transformation $%S$% amène la matrice $%B$% non pas en diagonale, mais en forme triangulaire supérieure, c'est-à-dire la matrice $%B"$% est triangulaire supérieure. Une telle transformation existe pour tout matrice carrée. Il est facile de vérifier que la matrice $%A"$% s'avérera également triangulaire supérieure, et que les éléments diagonaux de la matrice $%A"$% seront les carrés des éléments diagonaux correspondants de la matrice $% B"$%. Cela nous permet de retrouver tous les éléments diagonaux de la matrice $ %B"$% en extrayant la racine des éléments diagonaux de la matrice $%A"$%, puis le long de la chaîne trouver tous les autres éléments de la matrice $%B"$%. Cela conduit aux conclusions suivantes.
3.1) La racine est extraite de toute matrice complexe, en cas général ces racines sont $%2^n$%, mais parmi elles, il peut y en avoir des (plusieurs) coïncidentes.
3.2) L'algorithme de calcul des racines est le suivant : transformer la matrice $%A$% en forme triangulaire supérieure, trouver la matrice $%B"$% en utilisant l'algorithme formulé et faire la transformation inverse.
3.3) Nécessaire et état suffisant la réalité des racines d'une matrice réelle est la non-négativité des éléments diagonaux après transformation de la matrice en forme triangulaire. La non-négativité du déterminant est une condition nécessaire mais non suffisante.

Addendum 1 (réponse au commentaire). Vous vouliez dire "vers une vue triangulaire". En général, en paragraphes. 1, 2, tout est absolument clair, mais le point 3, apparemment, mérite réflexion. Le fait est que la méthode gaussienne ne peut pas être réduite à la transformation $%S^(-1)AS$%, et la preuve est basée sur cela. Ceux. la preuve n'est applicable qu'aux matrices qui peuvent être réduites à une forme triangulaire par la transformation $%S^(-1)AS$%.

Addendum 2. Il semble qu'au paragraphe 3, en général, tout soit correct, il suffit d'utiliser la transformation de la matrice $%A$% sous la forme de Jordan - pour cette transformation, il y a toujours une matrice obtenue en résolvant le problème des valeurs propres. Le problème est que le carré d'une matrice de Jordan n'est pas une matrice de Jordan (bien qu'il soit triangulaire et même bidiagonal). Une justification rigoureuse de l'algorithme nécessite la preuve du théorème suivant : « Si $%A"=B"^2$% et $%A"$% est une matrice de Jordan, alors $%B"$%- matrice triangulaire". La déclaration semble vraie, mais je ne sais pas encore comment la prouver.

Utiliser la matrice calculateur en ligne peux-tu pli, soustraire, multiplier, transposer matrices, calculer inverse matrice, pseudoinverse matrice, rang matrices, déterminant matrice, norme m et norme l de la matrice, élever la matrice au pouvoir, multiplier la matrice par le nombre, faire décomposition du squelette matrices, supprimer les lignes linéairement dépendantes d'une matrice ou colonnes linéairement dépendantes, conduire Exclusion gaussienne, résoudre l'équation matricielle AX=B, faire la décomposition LU d'une matrice,calculer le noyau (espace nul) d'une matrice, faire Orthogonalisation de Gram-Schmidt et orthonormalisation de Gram-Schmidt.

Le calculateur matriciel en ligne fonctionne non seulement avec des nombres décimaux, mais également avec des fractions. Pour saisir des fractions, vous devez saisir les matrices originales et saisir des nombres sous la forme un ou un/b, Où un Et b entier ou nombres décimaux (b nombre positif). Par exemple 12/67, -67,78/7,54, 327,6, -565.

Le bouton dans le coin supérieur gauche de la matrice ouvre un menu (Fig. 1) permettant de transformer la matrice d'origine (création d'une matrice identité, d'une matrice zéro ou effacement du contenu des cellules).

Lors des calculs, une cellule vide est traitée comme zéro.

Pour les opérations à matrice unique (c'est-à-dire transposition, inverse, pseudo-inverse, décomposition squelettique, etc.), sélectionnez d'abord une matrice spécifique à l'aide du bouton radio.

Les boutons Fn1, Fn2 et Fn3 commutent différents groupes fonctions

En cliquant sur les matrices calculées, un menu s'ouvre (Fig. 2), qui permet d'écrire cette matrice dans les matrices originales et , et transformer également les éléments matriciels en place en fraction commune, fraction mixte ou à un nombre décimal.

Calculer la somme, la différence, le produit de matrices en ligne

somme, différence ou produit de matrices. Pour calculer la somme ou la différence des matrices, il faut qu'elles soient de même dimension, et pour calculer le produit des matrices, le nombre de colonnes de la première matrice doit être égal au nombre de lignes de la deuxième matrice.

Pour calculer la somme, la différence ou le produit de matrices :

Calcul inverse matriciel en ligne

Un calculateur matriciel en ligne peut être utilisé pour calculer la matrice inverse. Pour qu’une matrice inverse existe, la matrice d’origine doit être une matrice carrée non singulière.

Pour calculer la matrice inverse :

Pour calcul détaillé matrice inverse étape par étape, utilisez cette calculatrice pour calculer la matrice inverse. Voir la théorie du calcul de la matrice inverse.

Calculer le déterminant d'une matrice en ligne

Un calculateur matriciel en ligne peut être utilisé pour calculer le déterminant d’une matrice. Pour qu’un déterminant matriciel existe, la matrice d’origine doit être une matrice carrée non singulière.

Pour calculer le déterminant d’une matrice :

Pour un calcul détaillé du déterminant d'une matrice étape par étape, utilisez cette calculatrice pour calculer le déterminant d'une matrice. Voir la théorie du calcul du déterminant d'une matrice.

Calculer le classement matriciel en ligne

Un calculateur matriciel en ligne peut être utilisé pour calculer le rang d’une matrice.

Pour calculer le rang d'une matrice :

Pour calculer le rang matriciel étape par étape en détail, utilisez ce calculateur de rang matriciel. Voir la théorie du calcul du rang d'une matrice.

Calcul de matrice pseudo-inverse en ligne

Un calculateur matriciel en ligne peut être utilisé pour calculer la matrice pseudo-inverse. Un pseudo-inverse d’une matrice donnée existe toujours.

Pour calculer la matrice pseudo-inverse :

Suppression en ligne de lignes ou de colonnes de matrice linéairement dépendantes

Le calculateur matriciel en ligne vous permet de supprimer des lignes ou des colonnes linéairement dépendantes d'une matrice, c'est-à-dire créer une matrice de classement complète.

Pour supprimer des lignes ou des colonnes linéairement dépendantes d’une matrice :

Décomposition de la matrice squelettique en ligne

Pour effectuer une décomposition de la matrice squelettique en ligne

Résolution d'une équation matricielle ou d'un système d'équations linéaires AX=B en ligne

À l'aide d'un calculateur matriciel en ligne, vous pouvez résoudre l'équation matricielle AX=B par rapport à la matrice X. Dans le cas particulier, si la matrice B est un vecteur colonne, alors X sera une solution du système équations linéaires AX=B.

Pour résoudre l’équation matricielle :

Veuillez noter que les matrices doivent avoir un nombre égal de lignes.

Élimination gaussienne ou réduction d'une matrice sous forme triangulaire (étape) en ligne

Le calculateur matriciel en ligne effectue une élimination gaussienne pour les matrices carrées et les matrices rectangulaires de n'importe quel rang. Réalisé pour la première fois méthode normale Gauss. Si à un moment donné l'élément principal égal à zéro, puis une autre option d'élimination gaussienne est choisie, en sélectionnant le plus grand élément principal de la colonne.

Pour éliminer la Gaussienne ou réduire la matrice à une forme triangulaire

Décomposition LU ou décomposition LUP d'une matrice en ligne

Ce calculateur matriciel vous permet d'effectuer une décomposition LU d'une matrice (A=LU) ou une décomposition LUP d'une matrice (PA=LU), où L est une matrice triangulaire inférieure, U est une matrice triangulaire supérieure (trapézoïdale), P est un matrice de permutation. Tout d'abord, le programme effectue la décomposition LU, c'est-à-dire une telle décomposition dans laquelle P=E, où E est la matrice d'identité (c'est-à-dire PA=EA=A). Si cela n’est pas possible, une décomposition LUP est effectuée. La matrice A peut être une matrice carrée ou rectangulaire de n’importe quel rang.

Pour la décomposition LU(LUP) :

Construire le noyau (espace nul) d'une matrice en ligne

À l’aide d’une calculatrice matricielle, vous pouvez construire l’espace nul (noyau) d’une matrice.

Construire l’espace nul (noyau) de la matrice.

>Bonjour à tous !!! Existe-t-il une formule par laquelle vous pouvez supprimer la mise à l'échelle d'une matrice sans connaître les facteurs de mise à l'échelle ???

On s'est immédiatement souvenu de la décomposition polaire. Eh bien, la matrice M est représentée par O * P. Où O est orthogonal et P est défini positif, symétrique - c'est-à-dire une matrice de compression ou d'expansion. Ici nous prendrons la matrice O.

La question se pose. Et si nous développons M de l’autre côté, nous obtenons P’ * O’. Décomposition dans un ordre différent, avec des matrices a priori différentes. Pourquoi ne pas prendre O' ? J'ai lutté avec la question pendant environ cinq minutes jusqu'à ce que je me rappelle comment j'avais fait échouer les étudiants sur ce sujet. La matrice O’ coïncide en fait avec la matrice O. Si vous avez récemment obtenu votre diplôme universitaire ou si vous êtes encore aux études, vous pouvez même essayer de prouver ce fait.

Donc, expansion polaire :

Pour trouver un positif racine carrée de la matrice à science positive Il vous est demandé de calculer vos propres nombres. Pour tout le monde propre numéro trouvez votre propre sous-espace, puis calculez soigneusement la racine carrée réelle de l'opérateur.

En imaginant ce qui se passerait pour une matrice proche de la matrice identitaire, j'ai frémi. Tout mourra à cause des imprécisions du flotteur, les rangs des matrices diminueront - un effondrement complet promet de se produire.

Pourquoi les nobles Dons n'essaient-ils pas des itérations connues pour être divines ?

Ici, la racine d'un nombre est trouvée à l'aide de la méthode de Newton. Séquence a_(i+1) = 0,5 * (a_i + x / a_i) ; converge fièrement vers la racine carrée de x. À titre de test, j'ai pris la bibliothèque de quelqu'un sur mat3x3 et j'ai riveté un analogue matriciel.

Un analogue direct de la méthode de Newton converge rapidement en 3-4 itérations, les tests réussissent comme légère brise. Il en résulte une décomposition polaire pour les matrices ; les performances de l'algorithme sont évidentes dès l'élémentaire. théorie spectrale opérateurs. Évident après une demi-heure à grincer mon cerveau.

Nous avons donc trouvé la décomposition polaire. La question est : pourquoi ? Et là, je suis obligé de passer au point principal de mon rapport. Enseigner est mauvais. Le temps que vous avez passé à vous souvenir de la théorie des opérateurs spectraux a été gaspillé avec succès.

La décomposition Scale Shear Rotate est recherchée à la fois. Nous appliquons le processus d'orthogonalisation et d'orthonormalisation à la matrice. Par colonnes. Nous obtenons une excellente matrice. Et pourquoi le résultat sera-t-il pire ? Rien!

J'ai vu un article avec du code en Pascal qui calcule cette même décomposition Scale Shear Rotate, et tout à coup j'ai réalisé que je n'avais aucun argument pour la décomposition polaire. Ce qui nécessite on ne sait quel type de technologie informatique.

Bien sûr, il y a des objections mineures, presque des arguties. Par exemple, l’espace tangent est plus facile à considérer comme orthonormé. Calculatoirement plus simple. Habituellement, nous considérons dPosition/du, la normale, et le troisième vecteur est pris perpendiculairement à cette paire. Il est clair que la méthode est asymétrique en ce qui concerne les coordonnées de texture ; laquelle d'entre elles est la première et laquelle est la seconde n'est absolument pas claire. Il semble correct d’appliquer la décomposition polaire à la matrice de transformation locale.

Vous remarquerez peut-être la différence entre la décomposition polaire « correcte » et le processus d’orthogonalisation de colonne « incorrect ». Vous ne le remarquerez probablement pas. Et la situation ne s’améliorera certainement pas.

P.S. C’est aussi très cool de stocker des animations dans Scale Shear Rotate. Trois vecteurs, un quaternion. Le cisaillement est presque toujours 0, l'échelle est presque toujours 1, des pistes constantes peuvent être rejetées. Et là où il y a des pistes non constantes, il existe un moyen de les éliminer en spécialisant le modèle. Ou autre chose.

Objet de la prestation. Calculatrice matricielle conçu pour résoudre des systèmes d'équations linéaires méthode matricielle(cm. exemple solutions à des problèmes similaires).

Instructions. Pour résoudre en ligne, vous devez sélectionner le type d'équation et définir la dimension des matrices correspondantes.

Type d'équation : A·X = B XA = B A·X·B = C
Dimension de la matrice A
Dimension de la matrice B 1 2 3 4 5 6 7 8 9 10 × 1 2 3 4 5 6 7 8 9 10

Dimension de la matrice C 1 2 3 4 5 6 7 8 9 10 × 1 2 3 4 5 6 7 8 9 10

où A, B, C sont les matrices spécifiées, X est la matrice souhaitée. Les équations matricielles de la forme (1), (2) et (3) sont résolues par matrice inverse A-1. Si l'expression A·X - B = C est donnée, alors il faut d'abord additionner les matrices C + B et trouver une solution pour l'expression A·X = D, où D = C + B (). Si l'expression A*X = B 2 est donnée, alors la matrice B doit d'abord être carré. Il est également recommandé de lire opérations de base sur les matrices.

Exemple n°1. Exercice. Trouver la solution de l'équation matricielle
Solution. Notons :
Alors l’équation matricielle s’écrira sous la forme : A·X·B = C.
Le déterminant de la matrice A est égal à detA=-1
Puisque A n’est pas matrice singulière, alors il existe une matrice inverse A -1 . Multipliez les deux côtés de l'équation à gauche par A -1 : Multipliez les deux côtés de cette équation à gauche par A -1 et à droite par B -1 : A -1 ·A·X·B·B -1 = A -1 ·C·B -1 . Puisque A A -1 = B B -1 = E et E X = X E = X, alors X = A -1 C B -1

Matrice inverse A-1 :
Trouvons la matrice inverse B -1.
Matrice transposée B T :
Matrice inverse B -1 :
On recherche la matrice X à l'aide de la formule : X = A -1 ·C·B -1

Répondre:

Exemple n°2. Exercice. Résoudre l'équation matricielle
Solution. Notons :
Alors l’équation matricielle s’écrira sous la forme : A·X = B.
Le déterminant de la matrice A est detA=0
Puisque A est une matrice singulière (le déterminant est 0), l’équation n’a donc pas de solution.

Exemple n°3. Exercice. Trouver la solution de l'équation matricielle
Solution. Notons :
Alors l’équation matricielle s’écrira sous la forme : X A = B.
Le déterminant de la matrice A est detA=-60
Puisque A est une matrice non singulière, il existe une matrice inverse A -1 . Multiplions les deux côtés de l'équation de droite par A -1 : X A A -1 = B A -1, d'où on trouve que X = B A -1
Trouvons la matrice inverse A -1 .
Matrice transposée A T :
Matrice inverse A -1 :
On recherche la matrice X à l'aide de la formule : X = B A -1


Réponse : >



Avez-vous aimé l'article? Partagez avec vos amis !