Main Page | Modules | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

FFPACK Class Reference
[linbox/ffpack]

#include <ffpack.h>

Inheritance diagram for FFPACK:

FFLAS List of all members.

Detailed Description

Set of elimination based routines for dense linear algebra with matrices over finite prime field of characteristic less than 2^26.

This class only provides a set of static member functions. No instantiation is allowed.

It enlarges the set of BLAS routines of the class FFLAS, with higher level routines based on elimination.


Static Public Member Functions

template<class Field> size_t Rank (const Field &F, const size_t M, const size_t N, typename Field::Element *A, const size_t lda)
template<class Field> bool IsSingular (const Field &F, const size_t M, const size_t N, typename Field::Element *A, const size_t lda)
 using rank computation with early termination.

template<class Field> Field::Element Det (const Field &F, const size_t M, const size_t N, typename Field::Element *A, const size_t lda)
 using LQUP factorization with early termination.

template<class Field> Field::Element * Solve (const Field &F, const size_t M, typename Field::Element *A, const size_t lda, typename Field::Element *x, const int incx, const typename Field::Element *b, const int incb)
 Solve linear system using LQUP factorization.

template<class Field> Field::Element * LQUPtoInverseOfFullRankMinor (const Field &F, const size_t rank, typename Field::Element *A_factors, const size_t lda, const size_t *QtPointer, typename Field::Element *X, const size_t ldx)


Member Function Documentation

size_t Rank const Field &  F,
const size_t  M,
const size_t  N,
typename Field::Element *  A,
const size_t  lda
[inline, static]
 

Computes the rank of the given matrix using a LQUP factorization. The input matrix is modified.

Parameters:
M row dimension of the matrix
N column dimension of the matrix
A input matrix
lda leading dimension of A

Field::Element* LQUPtoInverseOfFullRankMinor const Field &  F,
const size_t  rank,
typename Field::Element *  A_factors,
const size_t  lda,
const size_t *  QtPointer,
typename Field::Element *  X,
const size_t  ldx
[inline, static]
 

LQUPtoInverseOfFullRankMinor Suppose A has been factorized as L.Q.U.P, with rank r. Then Qt.A.Pt has an invertible leading principal r x r submatrix This procedure efficiently computes the inverse of this minor and puts it into X. NOTE: It changes the lower entries of A_factors in the process (NB: unless A was nonsingular and square)

Parameters:
rank: rank of the matrix.
A_factors: matrix containing the L and U entries of the factorization
QtPointer: theLQUP->getQ()->getPointer() (note: getQ returns Qt!)
X: desired location for output


The documentation for this class was generated from the following file:
Generated on Thu Feb 8 22:33:05 2007 for linbox by doxygen 1.3.4