|
FflasFfpack
|
Set of elimination based routines for dense linear algebra with matrices over finite prime field of characteristic less than 2^26. More...
Data Structures | |
| class | Modular< int32_t > |
| Specialization of Modular to int32_t element type with efficient dot product. More... | |
| class | Modular< int64_t > |
| Specialization of Modular to int64_t element type with efficient dot product. More... | |
| class | NonzeroRandIter |
| Random iterator for nonzero random numbers. More... | |
| class | Failure |
| A precondtion failed. More... | |
Functions | |
| template<class Field > | |
| size_t | LUpdate (const Field &F, const FFLAS::FFLAS_DIAG Diag, const FFLAS::FFLAS_TRANSPOSE trans, const size_t M, const size_t N, typename Field::Element *A, const size_t lda, const size_t R, const size_t K, typename Field::Element *B, const size_t ldb, size_t *P, size_t *Q, const FFPACK::FFPACK_LUDIVINE_TAG LuTag, const size_t cutoff) |
| Updates an existing LU factorisation with more rows. | |
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.
| size_t LUpdate | ( | const Field & | F, |
| const FFLAS::FFLAS_DIAG | Diag, | ||
| const FFLAS::FFLAS_TRANSPOSE | trans, | ||
| const size_t | M, | ||
| const size_t | N, | ||
| typename Field::Element * | A, | ||
| const size_t | lda, | ||
| const size_t | R, | ||
| const size_t | K, | ||
| typename Field::Element * | B, | ||
| const size_t | ldb, | ||
| size_t * | P, | ||
| size_t * | Q, | ||
| const FFPACK::FFPACK_LUDIVINE_TAG | LuTag, | ||
| const size_t | cutoff | ||
| ) |
Updates an existing LU factorisation with more rows.
| F | Field on which arithmetic is done |
| Diag | Is L unit ? (if so, FFLAS::FflasUnit) |
| trans | Not used yet, should be FFLAS::FflasNoTrans |
| M | rows in A |
| N | cols in A |
| A | A is already in LU factorisation |
| lda | leading dimension of A |
| R | rank of A |
| K | rows in B |
| B | more rows to append to A |
| ldb | leading dimension of B (not tested if != lda) |
| P | permutation for LU in A. Should be big enough so it can store the permutation for LU of A and B |
| Q | same as P |
| LuTag | see LUdivine. |
| cutoff | see LUdivine. |
A.append(B)
1.7.4