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

◆ rawMutableMatrixFillRandom()

void rawMutableMatrixFillRandom ( MutableMatrix * M,
long nelems )

Definition at line 120 of file mutable-matrix.cpp.

121{
122 int nrows = static_cast<int>(M->n_rows());
123 int ncols = static_cast<int>(M->n_cols());
124 const Ring *R = M->get_ring();
125 for (long i = 0; i < nelems; i++)
126 {
127 int r = rawRandomInt(nrows);
128 int c = rawRandomInt(ncols);
129 ring_elem a = R->random();
130 if (!R->is_zero(a)) M->set_entry(r, c, R->random());
131 }
132}
virtual size_t n_rows() const =0
virtual size_t n_cols() const =0
virtual const Ring * get_ring() const =0
virtual bool set_entry(size_t r, size_t c, const ring_elem a)=0
virtual bool is_zero(const ring_elem f) const =0
virtual ring_elem random() const
Definition ring.cpp:284
xxx xxx xxx
Definition ring.hpp:102
int32_t rawRandomInt(int32_t max)
Definition random.cpp:44

References MutableMatrix::get_ring(), Ring::is_zero(), MutableMatrix::n_cols(), MutableMatrix::n_rows(), Ring::random(), rawRandomInt(), and MutableMatrix::set_entry().