Regina Calculation Engine
Namespaces | Functions
matrixops.h File Reference

Provides various complex matrix calculations. More...

#include "regina-core.h"
#include "maths/nmatrixint.h"
#include <vector>

Namespaces

 regina
 Contains the entire Regina calculation engine.
 

Functions

REGINA_API void regina::smithNormalForm (NMatrixInt &matrix)
 Transforms the given integer matrix into Smith normal form. More...
 
REGINA_API void regina::smithNormalForm (NMatrixInt &matrix, NMatrixInt &rowSpaceBasis, NMatrixInt &rowSpaceBasisInv, NMatrixInt &colSpaceBasis, NMatrixInt &colSpaceBasisInv)
 A Smith normal form algorithm that also returns change of basis matrices. More...
 
REGINA_API void regina::metricalSmithNormalForm (NMatrixInt &matrix, NMatrixInt *rowSpaceBasis=0, NMatrixInt *rowSpaceBasisInv=0, NMatrixInt *colSpaceBasis=0, NMatrixInt *colSpaceBasisInv=0)
 An alternative Smith normal form algorithm that also returns change of basis matrices. More...
 
REGINA_API unsigned regina::rowBasis (NMatrixInt &matrix)
 Find a basis for the row space of the given matrix. More...
 
REGINA_API unsigned regina::rowBasisAndOrthComp (NMatrixInt &input, NMatrixInt &complement)
 Finds a basis for the row space of the given matrix, as well as an "incremental" basis for its orthogonal complement. More...
 
REGINA_API void regina::columnEchelonForm (NMatrixInt &M, NMatrixInt &R, NMatrixInt &Ri, const std::vector< unsigned > &rowList)
 Transforms a given matrix into column echelon form with respect to a collection of rows. More...
 
REGINA_API std::auto_ptr
< NMatrixInt > 
regina::preImageOfLattice (const NMatrixInt &hom, const std::vector< NLargeInteger > &sublattice)
 Given a homomorphism from Z^n to Z^k and a sublattice of Z^k, compute the preimage of this sublattice under this homomorphism. More...
 
REGINA_API std::auto_ptr
< NMatrixInt > 
regina::torsionAutInverse (const NMatrixInt &input, const std::vector< NLargeInteger > &invF)
 Given an automorphism of an abelian group, this procedure computes the inverse automorphism. More...
 

Detailed Description

Provides various complex matrix calculations.

Todo:
Feature (long-term): Add a routine to find the rank of an integer matrix; use this to show the rank of the matching equations.

Copyright © 1999-2014, The Regina development team
This software is released under the GNU General Public License, with some additional permissions; see the source code for details.
For further information, or to submit a bug or other problem, please contact Ben Burton (bab@debian.org).