FflasFfpack
|
#include <stdbool.h>
#include <stdlib.h>
#include <inttypes.h>
Macros | |
#define | FFPACK_COMPILED |
Enumerations | |
enum | FFLAS_C_ORDER { FflasRowMajor =101 , FflasColMajor =102 , FflasRowMajor =101 , FflasColMajor =102 } |
enum | FFLAS_C_TRANSPOSE { FflasNoTrans = 111 , FflasTrans = 112 , FflasNoTrans = 111 , FflasTrans = 112 } |
enum | FFLAS_C_UPLO { FflasUpper = 121 , FflasLower = 122 , FflasUpper = 121 , FflasLower = 122 } |
enum | FFLAS_C_DIAG { FflasNonUnit = 131 , FflasUnit = 132 , FflasNonUnit = 131 , FflasUnit = 132 } |
enum | FFLAS_C_SIDE { FflasLeft = 141 , FflasRight = 142 , FflasLeft = 141 , FflasRight = 142 } |
enum | FFPACK_C_LU_TAG { FfpackSlabRecursive = 1 , FfpackTileRecursive = 2 , FfpackSingular = 3 } |
enum | FFPACK_C_CHARPOLY_TAG { FfpackLUK =1 , FfpackKG =2 , FfpackHybrid =3 , FfpackKGFast =4 , FfpackDanilevski =5 , FfpackArithProg =6 , FfpackKGFastG =7 } |
enum | FFPACK_C_MINPOLY_TAG { FfpackDense =1 , FfpackKGF =2 } |
Functions | |
void | LAPACKPerm2MathPerm (size_t *MathP, const size_t *LapackP, const size_t N) |
void | MathPerm2LAPACKPerm (size_t *LapackP, const size_t *MathP, const size_t N) |
void | MatrixApplyS_modular_double (const double p, double *A, const size_t lda, const size_t width, const size_t M2, const size_t R1, const size_t R2, const size_t R3, const size_t R4, bool positive) |
void | PermApplyS_double (double *A, const size_t lda, const size_t width, const size_t M2, const size_t R1, const size_t R2, const size_t R3, const size_t R4) |
void | MatrixApplyT_modular_double (const double p, double *A, const size_t lda, const size_t width, const size_t N2, const size_t R1, const size_t R2, const size_t R3, const size_t R4, bool positive) |
void | PermApplyT_double (double *A, const size_t lda, const size_t width, const size_t N2, const size_t R1, const size_t R2, const size_t R3, const size_t R4) |
void | composePermutationsLLM (size_t *MathP, const size_t *P1, const size_t *P2, const size_t R, const size_t N) |
void | composePermutationsLLL (size_t *P1, const size_t *P2, const size_t R, const size_t N) |
void | composePermutationsMLM (size_t *MathP1, const size_t *P2, const size_t R, const size_t N) |
void | cyclic_shift_mathPerm (size_t *P, const size_t s) |
void | cyclic_shift_row_modular_double (const double p, double *A, size_t m, size_t n, size_t lda, bool positive) |
void | cyclic_shift_col_modular_double (const double p, double *A, size_t m, size_t n, size_t lda, bool positive) |
void | applyP_modular_double (const double p, const enum FFLAS_C_SIDE Side, const enum FFLAS_C_TRANSPOSE Trans, const size_t M, const size_t ibeg, const size_t iend, double *A, const size_t lda, const size_t *P, bool positive) |
void | fgetrsin_modular_double (const double p, const enum FFLAS_C_SIDE Side, const size_t M, const size_t N, const size_t R, double *A, const size_t lda, const size_t *P, const size_t *Q, double *B, const size_t ldb, int *info, bool positive) |
double * | fgetrs_modular_double (const double p, const enum FFLAS_C_SIDE Side, const size_t M, const size_t N, const size_t NRHS, const size_t R, double *A, const size_t lda, const size_t *P, const size_t *Q, double *X, const size_t ldx, const double *B, const size_t ldb, int *info, bool positive) |
size_t | fgesvin_modular_double (const double p, const enum FFLAS_C_SIDE Side, const size_t M, const size_t N, double *A, const size_t lda, double *B, const size_t ldb, int *info, bool positive) |
size_t | fgesv_modular_double (const double p, const enum FFLAS_C_SIDE Side, const size_t M, const size_t N, const size_t NRHS, double *A, const size_t lda, double *X, const size_t ldx, const double *B, const size_t ldb, int *info) |
void | ftrtri_modular_double (const double p, const enum FFLAS_C_UPLO Uplo, const enum FFLAS_C_DIAG Diag, const size_t N, double *A, const size_t lda, bool positive) |
void | trinv_left_modular_double (const double p, const size_t N, const double *L, const size_t ldl, double *X, const size_t ldx, bool positive) |
void | ftrtrm_modular_double (const double p, const enum FFLAS_C_DIAG diag, const size_t N, double *A, const size_t lda, bool positive) |
size_t | PLUQ_modular_double (const double p, const enum FFLAS_C_DIAG Diag, const size_t M, const size_t N, double *A, const size_t lda, size_t *P, size_t *Q, bool positive) |
size_t | LUdivine_modular_double (const double p, const enum FFLAS_C_DIAG Diag, const enum FFLAS_C_TRANSPOSE trans, const size_t M, const size_t N, double *A, const size_t lda, size_t *P, size_t *Qt, const enum FFPACK_C_LU_TAG LuTag, const size_t cutoff, bool positive) |
size_t | LUdivine_small_modular_double (const double p, const enum FFLAS_C_DIAG Diag, const enum FFLAS_C_TRANSPOSE trans, const size_t M, const size_t N, double *A, const size_t lda, size_t *P, size_t *Q, const enum FFPACK_C_LU_TAG LuTag, bool positive) |
size_t | LUdivine_gauss_modular_double (const double p, const enum FFLAS_C_DIAG Diag, const size_t M, const size_t N, double *A, const size_t lda, size_t *P, size_t *Q, const enum FFPACK_C_LU_TAG LuTag, bool positive) |
size_t | ColumnEchelonForm_modular_double (const double p, const size_t M, const size_t N, double *A, const size_t lda, size_t *P, size_t *Qt, bool transform, const enum FFPACK_C_LU_TAG LuTag, bool positive) |
size_t | RowEchelonForm_modular_double (const double p, const size_t M, const size_t N, double *A, const size_t lda, size_t *P, size_t *Qt, const bool transform, const enum FFPACK_C_LU_TAG LuTag, bool positive) |
size_t | ColumnEchelonForm_modular_float (const float p, const size_t M, const size_t N, float *A, const size_t lda, size_t *P, size_t *Qt, bool transform, const enum FFPACK_C_LU_TAG LuTag, bool positive) |
size_t | RowEchelonForm_modular_float (const float p, const size_t M, const size_t N, float *A, const size_t lda, size_t *P, size_t *Qt, const bool transform, const enum FFPACK_C_LU_TAG LuTag, bool positive) |
size_t | ColumnEchelonForm_modular_int32_t (const int32_t p, const size_t M, const size_t N, int32_t *A, const size_t lda, size_t *P, size_t *Qt, bool transform, const enum FFPACK_C_LU_TAG LuTag, bool positive) |
size_t | RowEchelonForm_modular_int32_t (const int32_t p, const size_t M, const size_t N, int32_t *A, const size_t lda, size_t *P, size_t *Qt, const bool transform, const enum FFPACK_C_LU_TAG LuTag, bool positive) |
size_t | ReducedColumnEchelonForm_modular_double (const double p, const size_t M, const size_t N, double *A, const size_t lda, size_t *P, size_t *Qt, const bool transform, const enum FFPACK_C_LU_TAG LuTag, bool positive) |
size_t | ReducedRowEchelonForm_modular_double (const double p, const size_t M, const size_t N, double *A, const size_t lda, size_t *P, size_t *Qt, const bool transform, const enum FFPACK_C_LU_TAG LuTag, bool positive) |
size_t | ReducedColumnEchelonForm_modular_float (const float p, const size_t M, const size_t N, float *A, const size_t lda, size_t *P, size_t *Qt, const bool transform, const enum FFPACK_C_LU_TAG LuTag, bool positive) |
size_t | ReducedRowEchelonForm_modular_float (const float p, const size_t M, const size_t N, float *A, const size_t lda, size_t *P, size_t *Qt, const bool transform, const enum FFPACK_C_LU_TAG LuTag, bool positive) |
size_t | ReducedColumnEchelonForm_modular_int32_t (const int32_t p, const size_t M, const size_t N, int32_t *A, const size_t lda, size_t *P, size_t *Qt, const bool transform, const enum FFPACK_C_LU_TAG LuTag, bool positive) |
size_t | ReducedRowEchelonForm_modular_int32_t (const int32_t p, const size_t M, const size_t N, int32_t *A, const size_t lda, size_t *P, size_t *Qt, const bool transform, const enum FFPACK_C_LU_TAG LuTag, bool positive) |
size_t | ReducedRowEchelonForm2_modular_double (const double p, const size_t M, const size_t N, double *A, const size_t lda, size_t *P, size_t *Qt, const bool transform, bool positive) |
size_t | REF_modular_double (const double p, const size_t M, const size_t N, double *A, const size_t lda, const size_t colbeg, const size_t rowbeg, const size_t colsize, size_t *Qt, size_t *P, bool positive) |
double * | Invertin_modular_double (const double p, const size_t M, double *A, const size_t lda, int *nullity, bool positive) |
double * | Invert_modular_double (const double p, const size_t M, const double *A, const size_t lda, double *X, const size_t ldx, int *nullity, bool positive) |
double * | Invert2_modular_double (const double p, const size_t M, double *A, const size_t lda, double *X, const size_t ldx, int *nullity, bool positive) |
size_t | KrylovElim_modular_double (const double p, const size_t M, const size_t N, double *A, const size_t lda, size_t *P, size_t *Q, const size_t deg, size_t *iterates, size_t *inviterates, const size_t maxit, size_t virt, bool positive) |
size_t | SpecRankProfile_modular_double (const double p, const size_t M, const size_t N, double *A, const size_t lda, const size_t deg, size_t *rankProfile, bool positive) |
size_t | Rank_modular_double (const double p, const size_t M, const size_t N, double *A, const size_t lda, bool positive) |
bool | IsSingular_modular_double (const double p, const size_t M, const size_t N, double *A, const size_t lda, bool positive) |
double | Det_modular_double (const double p, const size_t N, double *A, const size_t lda, bool positive) |
double * | Solve_modular_double (const double p, const size_t M, double *A, const size_t lda, double *x, const int incx, const double *b, const int incb, bool positive) |
void | solveLB_modular_double (const double p, const enum FFLAS_C_SIDE Side, const size_t M, const size_t N, const size_t R, double *L, const size_t ldl, const size_t *Q, double *B, const size_t ldb) |
void | solveLB2_modular_double (const double p, const enum FFLAS_C_SIDE Side, const size_t M, const size_t N, const size_t R, double *L, const size_t ldl, const size_t *Q, double *B, const size_t ldb, bool positive) |
void | RandomNullSpaceVector_modular_double (const double p, const enum FFLAS_C_SIDE Side, const size_t M, const size_t N, double *A, const size_t lda, double *X, const size_t incX, bool positive) |
size_t | NullSpaceBasis_modular_double (const double p, const enum FFLAS_C_SIDE Side, const size_t M, const size_t N, double *A, const size_t lda, double **NS, size_t *ldn, size_t *NSdim, bool positive) |
size_t | RowRankProfile_modular_double (const double p, const size_t M, const size_t N, double *A, const size_t lda, size_t **rkprofile, const enum FFPACK_C_LU_TAG LuTag, bool positive) |
size_t | ColumnRankProfile_modular_double (const double p, const size_t M, const size_t N, double *A, const size_t lda, size_t **rkprofile, const enum FFPACK_C_LU_TAG LuTag, bool positive) |
void | RankProfileFromLU (const size_t *P, const size_t N, const size_t R, size_t *rkprofile, const enum FFPACK_C_LU_TAG LuTag) |
size_t | LeadingSubmatrixRankProfiles (const size_t M, const size_t N, const size_t R, const size_t LSm, const size_t LSn, const size_t *P, const size_t *Q, size_t *RRP, size_t *CRP) |
size_t | RowRankProfileSubmatrixIndices_modular_double (const double p, const size_t M, const size_t N, double *A, const size_t lda, size_t **rowindices, size_t **colindices, size_t *R, bool positive) |
size_t | ColRankProfileSubmatrixIndices_modular_double (const double p, const size_t M, const size_t N, double *A, const size_t lda, size_t **rowindices, size_t **colindices, size_t *R, bool positive) |
size_t | RowRankProfileSubmatrix_modular_double (const double p, const size_t M, const size_t N, double *A, const size_t lda, double **X, size_t *R, bool positive) |
size_t | ColRankProfileSubmatrix_modular_double (const double p, const size_t M, const size_t N, double *A, const size_t lda, double **X, size_t *R, bool positive) |
void | getTriangular_modular_double (const double p, const enum FFLAS_C_UPLO Uplo, const enum FFLAS_C_DIAG diag, const size_t M, const size_t N, const size_t R, const double *A, const size_t lda, double *T, const size_t ldt, const bool OnlyNonZeroVectors, bool positive) |
void | getTriangularin_modular_double (const double p, const enum FFLAS_C_UPLO Uplo, const enum FFLAS_C_DIAG diag, const size_t M, const size_t N, const size_t R, double *A, const size_t lda, bool positive) |
void | getEchelonForm_modular_double (const double p, const enum FFLAS_C_UPLO Uplo, const enum FFLAS_C_DIAG diag, const size_t M, const size_t N, const size_t R, const size_t *P, const double *A, const size_t lda, double *T, const size_t ldt, const bool OnlyNonZeroVectors, const enum FFPACK_C_LU_TAG LuTag, bool positive) |
void | getEchelonFormin_modular_double (const double p, const enum FFLAS_C_UPLO Uplo, const enum FFLAS_C_DIAG diag, const size_t M, const size_t N, const size_t R, const size_t *P, double *A, const size_t lda, const enum FFPACK_C_LU_TAG LuTag, bool positive) |
void | getEchelonTransform_modular_double (const double p, const enum FFLAS_C_UPLO Uplo, const enum FFLAS_C_DIAG diag, const size_t M, const size_t N, const size_t R, const size_t *P, const size_t *Q, const double *A, const size_t lda, double *T, const size_t ldt, const enum FFPACK_C_LU_TAG LuTag, bool positive) |
void | getReducedEchelonForm_modular_double (const double p, const enum FFLAS_C_UPLO Uplo, const size_t M, const size_t N, const size_t R, const size_t *P, const double *A, const size_t lda, double *T, const size_t ldt, const bool OnlyNonZeroVectors, const enum FFPACK_C_LU_TAG LuTag, bool positive) |
void | getReducedEchelonFormin_modular_double (const double p, const enum FFLAS_C_UPLO Uplo, const size_t M, const size_t N, const size_t R, const size_t *P, double *A, const size_t lda, const enum FFPACK_C_LU_TAG LuTag, bool positive) |
void | getReducedEchelonTransform_modular_double (const double p, const enum FFLAS_C_UPLO Uplo, const size_t M, const size_t N, const size_t R, const size_t *P, const size_t *Q, const double *A, const size_t lda, double *T, const size_t ldt, const enum FFPACK_C_LU_TAG LuTag, bool positive) |
void | PLUQtoEchelonPermutation (const size_t N, const size_t R, const size_t *P, size_t *outPerm) |
#define FFPACK_COMPILED |
enum FFLAS_C_ORDER |
enum FFLAS_C_TRANSPOSE |
enum FFLAS_C_UPLO |
enum FFLAS_C_DIAG |
enum FFLAS_C_SIDE |
enum FFPACK_C_LU_TAG |
enum FFPACK_C_MINPOLY_TAG |
void LAPACKPerm2MathPerm | ( | size_t * | MathP, |
const size_t * | LapackP, | ||
const size_t | N | ||
) |
void MathPerm2LAPACKPerm | ( | size_t * | LapackP, |
const size_t * | MathP, | ||
const size_t | N | ||
) |
void MatrixApplyS_modular_double | ( | const double | p, |
double * | A, | ||
const size_t | lda, | ||
const size_t | width, | ||
const size_t | M2, | ||
const size_t | R1, | ||
const size_t | R2, | ||
const size_t | R3, | ||
const size_t | R4, | ||
bool | positive | ||
) |
void PermApplyS_double | ( | double * | A, |
const size_t | lda, | ||
const size_t | width, | ||
const size_t | M2, | ||
const size_t | R1, | ||
const size_t | R2, | ||
const size_t | R3, | ||
const size_t | R4 | ||
) |
void MatrixApplyT_modular_double | ( | const double | p, |
double * | A, | ||
const size_t | lda, | ||
const size_t | width, | ||
const size_t | N2, | ||
const size_t | R1, | ||
const size_t | R2, | ||
const size_t | R3, | ||
const size_t | R4, | ||
bool | positive | ||
) |
void PermApplyT_double | ( | double * | A, |
const size_t | lda, | ||
const size_t | width, | ||
const size_t | N2, | ||
const size_t | R1, | ||
const size_t | R2, | ||
const size_t | R3, | ||
const size_t | R4 | ||
) |
void composePermutationsLLM | ( | size_t * | MathP, |
const size_t * | P1, | ||
const size_t * | P2, | ||
const size_t | R, | ||
const size_t | N | ||
) |
void composePermutationsLLL | ( | size_t * | P1, |
const size_t * | P2, | ||
const size_t | R, | ||
const size_t | N | ||
) |
void composePermutationsMLM | ( | size_t * | MathP1, |
const size_t * | P2, | ||
const size_t | R, | ||
const size_t | N | ||
) |
void cyclic_shift_mathPerm | ( | size_t * | P, |
const size_t | s | ||
) |
void cyclic_shift_row_modular_double | ( | const double | p, |
double * | A, | ||
size_t | m, | ||
size_t | n, | ||
size_t | lda, | ||
bool | positive | ||
) |
void cyclic_shift_col_modular_double | ( | const double | p, |
double * | A, | ||
size_t | m, | ||
size_t | n, | ||
size_t | lda, | ||
bool | positive | ||
) |
void applyP_modular_double | ( | const double | p, |
const enum FFLAS_C_SIDE | Side, | ||
const enum FFLAS_C_TRANSPOSE | Trans, | ||
const size_t | M, | ||
const size_t | ibeg, | ||
const size_t | iend, | ||
double * | A, | ||
const size_t | lda, | ||
const size_t * | P, | ||
bool | positive | ||
) |
void fgetrsin_modular_double | ( | const double | p, |
const enum FFLAS_C_SIDE | Side, | ||
const size_t | M, | ||
const size_t | N, | ||
const size_t | R, | ||
double * | A, | ||
const size_t | lda, | ||
const size_t * | P, | ||
const size_t * | Q, | ||
double * | B, | ||
const size_t | ldb, | ||
int * | info, | ||
bool | positive | ||
) |
double * fgetrs_modular_double | ( | const double | p, |
const enum FFLAS_C_SIDE | Side, | ||
const size_t | M, | ||
const size_t | N, | ||
const size_t | NRHS, | ||
const size_t | R, | ||
double * | A, | ||
const size_t | lda, | ||
const size_t * | P, | ||
const size_t * | Q, | ||
double * | X, | ||
const size_t | ldx, | ||
const double * | B, | ||
const size_t | ldb, | ||
int * | info, | ||
bool | positive | ||
) |
size_t fgesvin_modular_double | ( | const double | p, |
const enum FFLAS_C_SIDE | Side, | ||
const size_t | M, | ||
const size_t | N, | ||
double * | A, | ||
const size_t | lda, | ||
double * | B, | ||
const size_t | ldb, | ||
int * | info, | ||
bool | positive | ||
) |
size_t fgesv_modular_double | ( | const double | p, |
const enum FFLAS_C_SIDE | Side, | ||
const size_t | M, | ||
const size_t | N, | ||
const size_t | NRHS, | ||
double * | A, | ||
const size_t | lda, | ||
double * | X, | ||
const size_t | ldx, | ||
const double * | B, | ||
const size_t | ldb, | ||
int * | info | ||
) |
void ftrtri_modular_double | ( | const double | p, |
const enum FFLAS_C_UPLO | Uplo, | ||
const enum FFLAS_C_DIAG | Diag, | ||
const size_t | N, | ||
double * | A, | ||
const size_t | lda, | ||
bool | positive | ||
) |
void trinv_left_modular_double | ( | const double | p, |
const size_t | N, | ||
const double * | L, | ||
const size_t | ldl, | ||
double * | X, | ||
const size_t | ldx, | ||
bool | positive | ||
) |
void ftrtrm_modular_double | ( | const double | p, |
const enum FFLAS_C_DIAG | diag, | ||
const size_t | N, | ||
double * | A, | ||
const size_t | lda, | ||
bool | positive | ||
) |
size_t PLUQ_modular_double | ( | const double | p, |
const enum FFLAS_C_DIAG | Diag, | ||
const size_t | M, | ||
const size_t | N, | ||
double * | A, | ||
const size_t | lda, | ||
size_t * | P, | ||
size_t * | Q, | ||
bool | positive | ||
) |
size_t LUdivine_modular_double | ( | const double | p, |
const enum FFLAS_C_DIAG | Diag, | ||
const enum FFLAS_C_TRANSPOSE | trans, | ||
const size_t | M, | ||
const size_t | N, | ||
double * | A, | ||
const size_t | lda, | ||
size_t * | P, | ||
size_t * | Qt, | ||
const enum FFPACK_C_LU_TAG | LuTag, | ||
const size_t | cutoff, | ||
bool | positive | ||
) |
size_t LUdivine_small_modular_double | ( | const double | p, |
const enum FFLAS_C_DIAG | Diag, | ||
const enum FFLAS_C_TRANSPOSE | trans, | ||
const size_t | M, | ||
const size_t | N, | ||
double * | A, | ||
const size_t | lda, | ||
size_t * | P, | ||
size_t * | Q, | ||
const enum FFPACK_C_LU_TAG | LuTag, | ||
bool | positive | ||
) |
size_t LUdivine_gauss_modular_double | ( | const double | p, |
const enum FFLAS_C_DIAG | Diag, | ||
const size_t | M, | ||
const size_t | N, | ||
double * | A, | ||
const size_t | lda, | ||
size_t * | P, | ||
size_t * | Q, | ||
const enum FFPACK_C_LU_TAG | LuTag, | ||
bool | positive | ||
) |
size_t ColumnEchelonForm_modular_double | ( | const double | p, |
const size_t | M, | ||
const size_t | N, | ||
double * | A, | ||
const size_t | lda, | ||
size_t * | P, | ||
size_t * | Qt, | ||
bool | transform, | ||
const enum FFPACK_C_LU_TAG | LuTag, | ||
bool | positive | ||
) |
size_t RowEchelonForm_modular_double | ( | const double | p, |
const size_t | M, | ||
const size_t | N, | ||
double * | A, | ||
const size_t | lda, | ||
size_t * | P, | ||
size_t * | Qt, | ||
const bool | transform, | ||
const enum FFPACK_C_LU_TAG | LuTag, | ||
bool | positive | ||
) |
size_t ColumnEchelonForm_modular_float | ( | const float | p, |
const size_t | M, | ||
const size_t | N, | ||
float * | A, | ||
const size_t | lda, | ||
size_t * | P, | ||
size_t * | Qt, | ||
bool | transform, | ||
const enum FFPACK_C_LU_TAG | LuTag, | ||
bool | positive | ||
) |
size_t RowEchelonForm_modular_float | ( | const float | p, |
const size_t | M, | ||
const size_t | N, | ||
float * | A, | ||
const size_t | lda, | ||
size_t * | P, | ||
size_t * | Qt, | ||
const bool | transform, | ||
const enum FFPACK_C_LU_TAG | LuTag, | ||
bool | positive | ||
) |
size_t ColumnEchelonForm_modular_int32_t | ( | const int32_t | p, |
const size_t | M, | ||
const size_t | N, | ||
int32_t * | A, | ||
const size_t | lda, | ||
size_t * | P, | ||
size_t * | Qt, | ||
bool | transform, | ||
const enum FFPACK_C_LU_TAG | LuTag, | ||
bool | positive | ||
) |
size_t RowEchelonForm_modular_int32_t | ( | const int32_t | p, |
const size_t | M, | ||
const size_t | N, | ||
int32_t * | A, | ||
const size_t | lda, | ||
size_t * | P, | ||
size_t * | Qt, | ||
const bool | transform, | ||
const enum FFPACK_C_LU_TAG | LuTag, | ||
bool | positive | ||
) |
size_t ReducedColumnEchelonForm_modular_double | ( | const double | p, |
const size_t | M, | ||
const size_t | N, | ||
double * | A, | ||
const size_t | lda, | ||
size_t * | P, | ||
size_t * | Qt, | ||
const bool | transform, | ||
const enum FFPACK_C_LU_TAG | LuTag, | ||
bool | positive | ||
) |
size_t ReducedRowEchelonForm_modular_double | ( | const double | p, |
const size_t | M, | ||
const size_t | N, | ||
double * | A, | ||
const size_t | lda, | ||
size_t * | P, | ||
size_t * | Qt, | ||
const bool | transform, | ||
const enum FFPACK_C_LU_TAG | LuTag, | ||
bool | positive | ||
) |
size_t ReducedColumnEchelonForm_modular_float | ( | const float | p, |
const size_t | M, | ||
const size_t | N, | ||
float * | A, | ||
const size_t | lda, | ||
size_t * | P, | ||
size_t * | Qt, | ||
const bool | transform, | ||
const enum FFPACK_C_LU_TAG | LuTag, | ||
bool | positive | ||
) |
size_t ReducedRowEchelonForm_modular_float | ( | const float | p, |
const size_t | M, | ||
const size_t | N, | ||
float * | A, | ||
const size_t | lda, | ||
size_t * | P, | ||
size_t * | Qt, | ||
const bool | transform, | ||
const enum FFPACK_C_LU_TAG | LuTag, | ||
bool | positive | ||
) |
size_t ReducedColumnEchelonForm_modular_int32_t | ( | const int32_t | p, |
const size_t | M, | ||
const size_t | N, | ||
int32_t * | A, | ||
const size_t | lda, | ||
size_t * | P, | ||
size_t * | Qt, | ||
const bool | transform, | ||
const enum FFPACK_C_LU_TAG | LuTag, | ||
bool | positive | ||
) |
size_t ReducedRowEchelonForm_modular_int32_t | ( | const int32_t | p, |
const size_t | M, | ||
const size_t | N, | ||
int32_t * | A, | ||
const size_t | lda, | ||
size_t * | P, | ||
size_t * | Qt, | ||
const bool | transform, | ||
const enum FFPACK_C_LU_TAG | LuTag, | ||
bool | positive | ||
) |
size_t ReducedRowEchelonForm2_modular_double | ( | const double | p, |
const size_t | M, | ||
const size_t | N, | ||
double * | A, | ||
const size_t | lda, | ||
size_t * | P, | ||
size_t * | Qt, | ||
const bool | transform, | ||
bool | positive | ||
) |
size_t REF_modular_double | ( | const double | p, |
const size_t | M, | ||
const size_t | N, | ||
double * | A, | ||
const size_t | lda, | ||
const size_t | colbeg, | ||
const size_t | rowbeg, | ||
const size_t | colsize, | ||
size_t * | Qt, | ||
size_t * | P, | ||
bool | positive | ||
) |
double * Invertin_modular_double | ( | const double | p, |
const size_t | M, | ||
double * | A, | ||
const size_t | lda, | ||
int * | nullity, | ||
bool | positive | ||
) |
double * Invert_modular_double | ( | const double | p, |
const size_t | M, | ||
const double * | A, | ||
const size_t | lda, | ||
double * | X, | ||
const size_t | ldx, | ||
int * | nullity, | ||
bool | positive | ||
) |
double * Invert2_modular_double | ( | const double | p, |
const size_t | M, | ||
double * | A, | ||
const size_t | lda, | ||
double * | X, | ||
const size_t | ldx, | ||
int * | nullity, | ||
bool | positive | ||
) |
size_t KrylovElim_modular_double | ( | const double | p, |
const size_t | M, | ||
const size_t | N, | ||
double * | A, | ||
const size_t | lda, | ||
size_t * | P, | ||
size_t * | Q, | ||
const size_t | deg, | ||
size_t * | iterates, | ||
size_t * | inviterates, | ||
const size_t | maxit, | ||
size_t | virt, | ||
bool | positive | ||
) |
size_t SpecRankProfile_modular_double | ( | const double | p, |
const size_t | M, | ||
const size_t | N, | ||
double * | A, | ||
const size_t | lda, | ||
const size_t | deg, | ||
size_t * | rankProfile, | ||
bool | positive | ||
) |
size_t Rank_modular_double | ( | const double | p, |
const size_t | M, | ||
const size_t | N, | ||
double * | A, | ||
const size_t | lda, | ||
bool | positive | ||
) |
bool IsSingular_modular_double | ( | const double | p, |
const size_t | M, | ||
const size_t | N, | ||
double * | A, | ||
const size_t | lda, | ||
bool | positive | ||
) |
double Det_modular_double | ( | const double | p, |
const size_t | N, | ||
double * | A, | ||
const size_t | lda, | ||
bool | positive | ||
) |
double * Solve_modular_double | ( | const double | p, |
const size_t | M, | ||
double * | A, | ||
const size_t | lda, | ||
double * | x, | ||
const int | incx, | ||
const double * | b, | ||
const int | incb, | ||
bool | positive | ||
) |
void solveLB_modular_double | ( | const double | p, |
const enum FFLAS_C_SIDE | Side, | ||
const size_t | M, | ||
const size_t | N, | ||
const size_t | R, | ||
double * | L, | ||
const size_t | ldl, | ||
const size_t * | Q, | ||
double * | B, | ||
const size_t | ldb | ||
) |
void solveLB2_modular_double | ( | const double | p, |
const enum FFLAS_C_SIDE | Side, | ||
const size_t | M, | ||
const size_t | N, | ||
const size_t | R, | ||
double * | L, | ||
const size_t | ldl, | ||
const size_t * | Q, | ||
double * | B, | ||
const size_t | ldb, | ||
bool | positive | ||
) |
void RandomNullSpaceVector_modular_double | ( | const double | p, |
const enum FFLAS_C_SIDE | Side, | ||
const size_t | M, | ||
const size_t | N, | ||
double * | A, | ||
const size_t | lda, | ||
double * | X, | ||
const size_t | incX, | ||
bool | positive | ||
) |
size_t NullSpaceBasis_modular_double | ( | const double | p, |
const enum FFLAS_C_SIDE | Side, | ||
const size_t | M, | ||
const size_t | N, | ||
double * | A, | ||
const size_t | lda, | ||
double ** | NS, | ||
size_t * | ldn, | ||
size_t * | NSdim, | ||
bool | positive | ||
) |
size_t RowRankProfile_modular_double | ( | const double | p, |
const size_t | M, | ||
const size_t | N, | ||
double * | A, | ||
const size_t | lda, | ||
size_t ** | rkprofile, | ||
const enum FFPACK_C_LU_TAG | LuTag, | ||
bool | positive | ||
) |
size_t ColumnRankProfile_modular_double | ( | const double | p, |
const size_t | M, | ||
const size_t | N, | ||
double * | A, | ||
const size_t | lda, | ||
size_t ** | rkprofile, | ||
const enum FFPACK_C_LU_TAG | LuTag, | ||
bool | positive | ||
) |
void RankProfileFromLU | ( | const size_t * | P, |
const size_t | N, | ||
const size_t | R, | ||
size_t * | rkprofile, | ||
const enum FFPACK_C_LU_TAG | LuTag | ||
) |
size_t LeadingSubmatrixRankProfiles | ( | const size_t | M, |
const size_t | N, | ||
const size_t | R, | ||
const size_t | LSm, | ||
const size_t | LSn, | ||
const size_t * | P, | ||
const size_t * | Q, | ||
size_t * | RRP, | ||
size_t * | CRP | ||
) |
size_t RowRankProfileSubmatrixIndices_modular_double | ( | const double | p, |
const size_t | M, | ||
const size_t | N, | ||
double * | A, | ||
const size_t | lda, | ||
size_t ** | rowindices, | ||
size_t ** | colindices, | ||
size_t * | R, | ||
bool | positive | ||
) |
size_t ColRankProfileSubmatrixIndices_modular_double | ( | const double | p, |
const size_t | M, | ||
const size_t | N, | ||
double * | A, | ||
const size_t | lda, | ||
size_t ** | rowindices, | ||
size_t ** | colindices, | ||
size_t * | R, | ||
bool | positive | ||
) |
size_t RowRankProfileSubmatrix_modular_double | ( | const double | p, |
const size_t | M, | ||
const size_t | N, | ||
double * | A, | ||
const size_t | lda, | ||
double ** | X, | ||
size_t * | R, | ||
bool | positive | ||
) |
size_t ColRankProfileSubmatrix_modular_double | ( | const double | p, |
const size_t | M, | ||
const size_t | N, | ||
double * | A, | ||
const size_t | lda, | ||
double ** | X, | ||
size_t * | R, | ||
bool | positive | ||
) |
void getTriangular_modular_double | ( | const double | p, |
const enum FFLAS_C_UPLO | Uplo, | ||
const enum FFLAS_C_DIAG | diag, | ||
const size_t | M, | ||
const size_t | N, | ||
const size_t | R, | ||
const double * | A, | ||
const size_t | lda, | ||
double * | T, | ||
const size_t | ldt, | ||
const bool | OnlyNonZeroVectors, | ||
bool | positive | ||
) |
void getTriangularin_modular_double | ( | const double | p, |
const enum FFLAS_C_UPLO | Uplo, | ||
const enum FFLAS_C_DIAG | diag, | ||
const size_t | M, | ||
const size_t | N, | ||
const size_t | R, | ||
double * | A, | ||
const size_t | lda, | ||
bool | positive | ||
) |
void getEchelonForm_modular_double | ( | const double | p, |
const enum FFLAS_C_UPLO | Uplo, | ||
const enum FFLAS_C_DIAG | diag, | ||
const size_t | M, | ||
const size_t | N, | ||
const size_t | R, | ||
const size_t * | P, | ||
const double * | A, | ||
const size_t | lda, | ||
double * | T, | ||
const size_t | ldt, | ||
const bool | OnlyNonZeroVectors, | ||
const enum FFPACK_C_LU_TAG | LuTag, | ||
bool | positive | ||
) |
void getEchelonFormin_modular_double | ( | const double | p, |
const enum FFLAS_C_UPLO | Uplo, | ||
const enum FFLAS_C_DIAG | diag, | ||
const size_t | M, | ||
const size_t | N, | ||
const size_t | R, | ||
const size_t * | P, | ||
double * | A, | ||
const size_t | lda, | ||
const enum FFPACK_C_LU_TAG | LuTag, | ||
bool | positive | ||
) |
void getEchelonTransform_modular_double | ( | const double | p, |
const enum FFLAS_C_UPLO | Uplo, | ||
const enum FFLAS_C_DIAG | diag, | ||
const size_t | M, | ||
const size_t | N, | ||
const size_t | R, | ||
const size_t * | P, | ||
const size_t * | Q, | ||
const double * | A, | ||
const size_t | lda, | ||
double * | T, | ||
const size_t | ldt, | ||
const enum FFPACK_C_LU_TAG | LuTag, | ||
bool | positive | ||
) |
void getReducedEchelonForm_modular_double | ( | const double | p, |
const enum FFLAS_C_UPLO | Uplo, | ||
const size_t | M, | ||
const size_t | N, | ||
const size_t | R, | ||
const size_t * | P, | ||
const double * | A, | ||
const size_t | lda, | ||
double * | T, | ||
const size_t | ldt, | ||
const bool | OnlyNonZeroVectors, | ||
const enum FFPACK_C_LU_TAG | LuTag, | ||
bool | positive | ||
) |
void getReducedEchelonFormin_modular_double | ( | const double | p, |
const enum FFLAS_C_UPLO | Uplo, | ||
const size_t | M, | ||
const size_t | N, | ||
const size_t | R, | ||
const size_t * | P, | ||
double * | A, | ||
const size_t | lda, | ||
const enum FFPACK_C_LU_TAG | LuTag, | ||
bool | positive | ||
) |
void getReducedEchelonTransform_modular_double | ( | const double | p, |
const enum FFLAS_C_UPLO | Uplo, | ||
const size_t | M, | ||
const size_t | N, | ||
const size_t | R, | ||
const size_t * | P, | ||
const size_t * | Q, | ||
const double * | A, | ||
const size_t | lda, | ||
double * | T, | ||
const size_t | ldt, | ||
const enum FFPACK_C_LU_TAG | LuTag, | ||
bool | positive | ||
) |
void PLUQtoEchelonPermutation | ( | const size_t | N, |
const size_t | R, | ||
const size_t * | P, | ||
size_t * | outPerm | ||
) |