|
| | SMat () |
| | SMat (const CoeffRing &coeffR0, size_t nrows, size_t ncols) |
| | SMat (const SMat< ACoeffRing > &M, size_t nrows, size_t ncols) |
| | SMat (const SMat< ACoeffRing > &M) |
| virtual | ~SMat () |
| void | grab (SMat *M) |
| SMat< CoeffRing > * | copy () const |
| bool | is_dense () const |
| size_t | numRows () const |
| size_t | numColumns () const |
| const CoeffRing & | ring () const |
| void | initialize (size_t nrows, size_t ncols, sparsevec **cols) |
| iterator | begin () const |
| size_t | lead_row (size_t col) const |
| size_t | lead_row (size_t col, elem &result) const |
| bool | get_entry (size_t r, size_t c, elem &result) const |
| void | set_entry (size_t r, size_t c, const elem a) |
| void | interchange_rows (size_t i, size_t j) |
| void | interchange_columns (size_t i, size_t j) |
| void | scale_row (size_t i, elem r) |
| void | scale_column (size_t i, elem r) |
| void | divide_row (size_t i, elem r) |
| void | divide_column (size_t i, elem r) |
| void | row_op (size_t i, elem r, size_t j) |
| void | column_op (size_t i, elem r, size_t j) |
| void | column2by2 (size_t c1, size_t c2, elem a1, elem a2, elem b1, elem b2) |
| void | row2by2 (size_t r1, size_t r2, elem a1, elem a2, elem b1, elem b2) |
| void | dot_product (size_t i, size_t j, elem &result) const |
| bool | row_permute (size_t start_row, M2_arrayint perm) |
| bool | column_permute (size_t start_col, M2_arrayint perm) |
| void | insert_columns (size_t i, size_t n_to_add) |
| void | insert_rows (size_t i, size_t n_to_add) |
| void | delete_columns (size_t i, size_t j) |
| void | delete_rows (size_t i, size_t j) |
| bool | is_zero () const |
| bool | is_equal (const SMat &B) const |
| void | addInPlace (const SMat &B) |
| void | subtractInPlace (const SMat &B) |
| void | negateInPlace () |
| void | scalarMultInPlace (const elem &f) |
| void | setFromSubmatrix (const SMat &A, M2_arrayint rows, M2_arrayint cols) |
| void | setFromSubmatrix (const SMat &A, M2_arrayint cols) |
|
| const sparsevec * | column (size_t c) const |
| sparsevec * | column (size_t c) |
| sparsevec * | vec_new () const |
| void | vec_remove_node (sparsevec *&v) const |
| void | vec_remove (sparsevec *&v) const |
| sparsevec * | vec_copy (const sparsevec *v) const |
| bool | vec_equals (const sparsevec *v, const sparsevec *w) const |
| bool | vec_get_entry (const sparsevec *v, size_t r, elem &result) const |
| void | vec_set_entry (sparsevec *&v, size_t r, const elem &result) const |
| void | vec_interchange_rows (sparsevec *&v, size_t r1, size_t r2) const |
| void | vec_negate (sparsevec *&v) const |
| void | vec_scale_row (sparsevec *&v, size_t r, const elem &a) const |
| void | vec_scale (sparsevec *&v, const elem &a) const |
| void | vec_divide_row (sparsevec *&v, size_t r, const elem &a) const |
| void | vec_divide (sparsevec *&v, const elem &a) const |
| void | vec_add_to (sparsevec *&v, sparsevec *&w) const |
| void | vec_row_op (sparsevec *&v, size_t r1, const elem &a, size_t r2) const |
| void | vec_row_op2 (sparsevec *&v, size_t r1, size_t r2, const elem &a1, const elem &a2, const elem &b1, const elem &b2) const |
| void | vec_column_op (sparsevec *&v, const elem &a, sparsevec *w) const |
| void | vec_dot_product (sparsevec *v, sparsevec *w, elem &result) const |
| void | vec_sort (sparsevec *&v) const |
| void | vec_permute (sparsevec *&v, size_t start_row, M2_arrayint perm) const |
| void | vec_insert_rows (sparsevec *&v, size_t i, size_t n_to_add) const |
| void | vec_delete_rows (sparsevec *&v, size_t i, size_t j) const |
template<typename ACoeffRing>
class SMat< ACoeffRing >
Definition at line 42 of file smat.hpp.