Macaulay2 Engine
Loading...
Searching...
No Matches

◆ delete_columns()

template<typename CoeffRing>
void SMat< CoeffRing >::delete_columns ( size_t i,
size_t j )

Definition at line 1082 of file smat.hpp.

1084{
1085 for (size_t c = i; c <= j; c++) vec_remove(columns_[c]);
1087 columns_ = 0;
1088 size_t ndeleted = j - i + 1;
1089 size_t orig_ncols = ncols_;
1090
1091 initialize(nrows_, ncols_ - (j - i + 1), 0);
1092 for (size_t c = 0; c < i; c++) columns_[c] = tmp[c];
1093 for (size_t c = j + 1; c < orig_ncols; c++) columns_[c - ndeleted] = tmp[c];
1094
1095 freemem(tmp);
1096}
void vec_remove(sparsevec *&v) const
Definition smat.hpp:294
size_t nrows_
Definition smat.hpp:232
sparsevec ** columns_
Definition smat.hpp:234
void initialize(size_t nrows, size_t ncols, sparsevec **cols)
Definition smat.hpp:837
size_t ncols_
Definition smat.hpp:233
Definition smat.hpp:43
void freemem(void *s)
Definition m2-mem.cpp:103

References columns_, freemem(), initialize(), ncols_, nrows_, and vec_remove().

Referenced by MatElementaryOps< SMat< RT > >::delete_columns().