Maple Professionel
Maple Académique
Maple Edition Étudiant
Maple Personal Edition
Maple Player
Maple Player for iPad
MapleSim Professionel
MapleSim Académique
Maple T.A. - Suite d'examens de classement
Maple T.A. MAA Placement Test Suite
Möbius - Didacticiels de mathématiques en ligne
Machine Design / Industrial Automation
Aéronautique
Ingénierie des véhicules
Robotics
Energie
System Simulation and Analysis
Model development for HIL
Modélisation du procédé pour la conception de systèmes de contrôle
Robotics/Motion Control/Mechatronics
Other Application Areas
Enseignement des mathématiques
Enseignement de l’ingénierie
Enseignement secondaire et supérieur (CPGE, BTS)
Tests et évaluations
Etudiants
Modélisation financière
Recherche opérationnelle
Calcul haute performance
Physique
Webinaires en direct
Webinaires enregistrés
Agenda des évènements
Forum MaplePrimes
Blog Maplesoft
Membres Maplesoft
Maple Ambassador Program
MapleCloud
Livres blancs techniques
Bulletin électronique
Livres Maple
Math Matters
Portail des applications
Galerie de modèles MapleSim
Cas d'Etudes Utilisateur
Exploring Engineering Fundamentals
Concepts d’enseignement avec Maple
Centre d’accueil utilisateur Maplesoft
Centre de ressources pour enseignants
Centre d’assistance aux étudiants
LinearAlgebra[StronglyConnectedBlocks] - compute the strongly connected blocks of a square Matrix
Calling Sequence
StronglyConnectedBlocks(M, opts)
Parameters
M
-
n x n square matrix with some sparsity
opts
options controlling the output
Description
The StronglyConnectedBlocks(M) function computes and returns a list containing the nonzero strongly connected blocks contained in the input Matrix M, i.e. [M_1, ..., M_r]. The strongly connected blocks are square sub-matrices of the input Matrix after a sequence of row and column exchanges have been performed to minimize the size of the blocks. Note that these sub-matrices do not contain all the entries present in the input Matrix, but rather only those needed to compute the determinant, characteristic polynomial, or eigenvalues of the Matrix. In addition, any zero blocks are not output.
In order for StronglyConnectedBlocks to provide a benefit, the input Matrix should have some sparsity. If the input Matrix is fully dense, the command will output a list containing only the input Matrix (without sparsity no break-down into blocks is possible).
For an input n x n Matrix M, if we let m = sum( Row/ColumnDimension(M_i), i=1..r ) for the output Matrix list [M_1, ..., M_r], then m <= n, where the inequality is needed for any zero blocks contained in the matrix.
The output blocks satisfy the following:
Determinant(M) is zero if m < n and product(Determinant(M_i), i=1..r) otherwise.
CharacteristicPolynomial(M,x) = x^(n-m) * product( CharacteristicPolynomial(M_i,x), i=1..r)
The option returnsingular is true by default, but when set to false, the block matrices will not be formed when the input Matrix is singular (i.e. has zero blocks). This is useful for efficient computation of a determinant (as a zero block means the determinant is zero, so there is no sense in forming the block matrices).
The option outputform is matrixlist by default, which returns a list of the strongly connected blocks in Matrix form as described above. If outputform is set to rowlist instead, it provides a list of the rows (columns) of the Matrix for each block.
Examples
See Also
LinearAlgebra[CharacteristicPolynomial], LinearAlgebra[Determinant], LinearAlgebra[RowDimension], Matrix
Download Help Document