void Mjoin(PATL,gegen) (const int M0, const int N, TYPE *A, const int lda0, const int seed) { const int M = M0 SHIFT, lda = lda0 SHIFT; int i, j; dumb_seed(seed); Mjoin(PATL,gefillgap)(M0, N, A, lda0); for (j=N; j; j--) { for (i=0; i != M; i++) A[i] = dumb_rand(); A += lda; } }
void matgen(int M, int N, TYPE *A, int lda, int seed) { int i, j; #ifdef TCPLX M *= 2; lda *= 2; #endif dumb_seed(seed); for (j=N; j; j--) { for (i=0; i != M; i++) A[i] = dumb_rand(); A += lda; } }
void Mjoin(PATL,trgen)(const enum ATLAS_UPLO Uplo, const enum ATLAS_DIAG Diag, const int N, TYPE *A, const int lda0, const int seed) { const int M = N SHIFT, lda = lda0 SHIFT; int i, j; dumb_seed(seed); Mjoin(PATL,gefillgap)(N, N, A, lda0); if (Uplo == AtlasUpper) { for (j=0; j != N; j++) { for (i=0; i != (j SHIFT); i++) A[i] = dumb_rand(); if (Diag == AtlasNonUnit) { A[i++] = dumb_rand(); #ifdef TCPLX A[i++] = dumb_rand(); #endif } for (; i < M; i++) A[i] = FILLCONST; A += lda; } } else { for (j=0; j != N; j++) { for (i=0; i != (j SHIFT); i++) A[i] = FILLCONST; if (Diag == AtlasNonUnit) { A[i++] = dumb_rand(); #ifdef TCPLX A[i++] = dumb_rand(); #endif } for (; i != M; i++) A[i] = dumb_rand(); A += lda; } } }