29 #ifndef BASKER_DECL_HPP 30 #define BASKER_DECL_HPP 32 #include "basker_types.hpp" 36 template <
class Int,
class Entry>
42 Basker(Int nnzL, Int nnzU);
44 int preorder(Int *row_perm, Int *col_perm);
45 int factor(Int nrow, Int ncol , Int nnz, Int *col_ptr, Int *row_idx, Entry *val);
46 int returnL(Int *dim, Int *nnz, Int **col_ptr, Int **row_idx, Entry **val);
47 int returnU(Int *dim, Int *nnz, Int **col_ptr, Int **row_idx, Entry **val);
49 int solve( Entry* b, Entry* x);
50 int solveMultiple(Int nrhs, Entry *b, Entry *x);
67 void free_perm_matrix();
68 int low_tri_solve_csc(Int n, Int* col_ptr, Int *row_idx, Entry *val, Entry *x, Entry *b);
69 int up_tri_solve_csc(Int n, Int* col_ptr, Int *row_idx, Entry *val, Entry *x, Entry *b);
70 int permute_row(Int *p, basker_matrix<Int,Entry> *B);
71 int permute_column(Int *p, basker_matrix<Int, Entry> *B);
73 Entry* entry_realloc(Entry *old, Int old_size, Int new_size);
74 Int* int_realloc(Int *old, Int old_size, Int new_size);
75 basker_matrix<Int, Entry> *A;
76 basker_matrix<Int, Entry> *L;
77 basker_matrix<Int, Entry> *U;
Definition: basker.cpp:35