1*70f55243SBarry Smith /* $Id: dense.h,v 1.3 1996/04/09 20:24:20 curfman Exp bsmith $ */ 2f6f390a9SLois Curfman McInnes 3*70f55243SBarry Smith #include "src/mat/matimpl.h" 4f6f390a9SLois Curfman McInnes #include <math.h> 5f6f390a9SLois Curfman McInnes 6f6f390a9SLois Curfman McInnes #if !defined(__DENSE_H) 7f6f390a9SLois Curfman McInnes #define __DENSE_H 8f6f390a9SLois Curfman McInnes 9f6f390a9SLois Curfman McInnes /* 10f6f390a9SLois Curfman McInnes MATSEQDENSE format - conventional dense Fortran storage (by columns) 11f6f390a9SLois Curfman McInnes */ 12f6f390a9SLois Curfman McInnes 13f6f390a9SLois Curfman McInnes typedef struct { 14f6f390a9SLois Curfman McInnes Scalar *v; /* matrix elements */ 15f6f390a9SLois Curfman McInnes int roworiented; /* if true, row oriented input (default) */ 16f6f390a9SLois Curfman McInnes int m, n; /* rows, columns */ 17f6f390a9SLois Curfman McInnes int pad; /* padding */ 18f6f390a9SLois Curfman McInnes int *pivots; /* pivots in LU factorization */ 19bea6f7a8SLois Curfman McInnes int user_alloc; /* true if the user provided the dense data */ 20f6f390a9SLois Curfman McInnes } Mat_SeqDense; 21f6f390a9SLois Curfman McInnes 2218476b09SLois Curfman McInnes extern int MatMult_SeqDense(Mat A,Vec,Vec); 2318476b09SLois Curfman McInnes extern int MatMultAdd_SeqDense(Mat A,Vec,Vec,Vec); 2418476b09SLois Curfman McInnes extern int MatMultTrans_SeqDense(Mat A,Vec,Vec); 2518476b09SLois Curfman McInnes extern int MatMultTransAdd_SeqDense(Mat A,Vec,Vec,Vec); 2618476b09SLois Curfman McInnes 27f6f390a9SLois Curfman McInnes #endif 28