#include "LongInt.h"#include "Rational.h"#include "ComplexNumber.h"#include "Polynomial.h"#include "RationalFunction.h"#include "Matrix.h"#include "Combinations.h"#include "IndexSet.h"#include "MathCommon.h"Include dependency graph for PolySmithForm.h:

Go to the source code of this file.
Functions | |
| template<class Number> | |
| Matrix< Polynomial< Number > > | smithNormalForm1 (const Matrix< Polynomial< Number > > &m, Matrix< Polynomial< Number > > *L=0, Matrix< Polynomial< Number > > *R=0) |
| template<class Number> | |
| Matrix< Polynomial< Number > > | smithNormalForm2 (const Matrix< Polynomial< Number > > &m) |
| template<class Number> | |
| Matrix< RationalFunction< Number > > | smithMcMillanForm1 (const Matrix< RationalFunction< Number > > &m, Matrix< RationalFunction< Number > > *L=0, Matrix< RationalFunction< Number > > *R=0) |
| template<class Number> | |
| Matrix< RationalFunction< Number > > | smithMcMillanForm2 (const Matrix< RationalFunction< Number > > &m) |
| template<class Number> | |
| bool | checkSmithForm (const Matrix< Polynomial< Number > > &m) |
| template<class Number> | |
| bool | getMinimumDegreePolnyomialIndexesInMatrix (const Matrix< Polynomial< Number > > &m, unsigned int &row, unsigned int &col, int &minDegree) |
| template<class Number> | |
| Matrix< Polynomial< Number > > | recursiveSmithNormalForm1 (const Matrix< Polynomial< Number > > &m, Matrix< Polynomial< Number > > *L, Matrix< Polynomial< Number > > *R) |
| template<class Number> | |
| bool | checkColumn (const Matrix< Polynomial< Number > > &m) |
| template<class Number> | |
| bool | checkRow (const Matrix< Polynomial< Number > > &m) |
| template<class Number> | |
| void | processColumn (Matrix< Polynomial< Number > > &m, Matrix< Polynomial< Number > > *T) |
| template<class Number> | |
| void | processRow (Matrix< Polynomial< Number > > &m, Matrix< Polynomial< Number > > *T) |
| template<class Number> | |
| Polynomial< Number > | gcdOfMinors (const Matrix< Polynomial< Number > > &m, unsigned int order) |
Definition in file PolySmithForm.h.
| bool checkSmithForm | ( | const Matrix< Polynomial< Number > > & | m | ) |
Check if a matrix of polynomials is in Smith form or not
| m | A const refference to the matrix to check. |
Definition at line 691 of file PolySmithForm.h.
| Matrix< RationalFunction< Number > > smithMcMillanForm1 | ( | const Matrix< RationalFunction< Number > > & | m, | |
| Matrix< RationalFunction< Number > > * | L = 0, |
|||
| Matrix< RationalFunction< Number > > * | R = 0 | |||
| ) |
Compute the Smith-McMillan form of a matrix of rational functions, also keeping track of the transformation matrices
| m | A const refference to the matrix whose Smith-McMillan form to compute | |
| L | Pointer to a matrix that will hold the row transformation matrix or null. | |
| R | Pointer to a matrix that will hold the column transformation matrix or null. |
Definition at line 540 of file PolySmithForm.h.
References AlgebraicTraits< T >::one(), smithNormalForm1(), and AlgebraicTraits< T >::zero().
Here is the call graph for this function:

| Matrix< RationalFunction< Number > > smithMcMillanForm2 | ( | const Matrix< RationalFunction< Number > > & | m | ) |
Compute the Smith-McMillan form of a matrix of rational functions
| m | A const refference to the matrix whose Smith-McMillan form to compute |
Definition at line 635 of file PolySmithForm.h.
References AlgebraicTraits< T >::one(), smithNormalForm2(), and AlgebraicTraits< T >::zero().
Here is the call graph for this function:

| Matrix< Polynomial< Number > > smithNormalForm1 | ( | const Matrix< Polynomial< Number > > & | m, | |
| Matrix< Polynomial< Number > > * | L = 0, |
|||
| Matrix< Polynomial< Number > > * | R = 0 | |||
| ) |
Compute the Smith normal form of a matrix, also keeping track of transformation matrices
| m | A const refference to the matrix whose Smith form to compute | |
| L | Pointer to a matrix that will hold the row transformation matrix or null. | |
| R | Pointer to a matrix that will hold the column transformation matrix or null. |
Definition at line 196 of file PolySmithForm.h.
References AlgebraicTraits< T >::one(), and AlgebraicTraits< T >::zero().
Referenced by smithMcMillanForm1().
Here is the call graph for this function:

Here is the caller graph for this function:

| Matrix< Polynomial< Number > > smithNormalForm2 | ( | const Matrix< Polynomial< Number > > & | m | ) |
Compute the Smith normal form of a matrix
| m | A const refference to the matrix whose Smith form to compute |
Definition at line 510 of file PolySmithForm.h.
References AlgebraicTraits< T >::one(), and AlgebraicTraits< T >::zero().
Referenced by smithMcMillanForm2().
Here is the call graph for this function:

Here is the caller graph for this function:
