mirror of
https://github.com/vale981/arb
synced 2025-03-05 09:21:38 -05:00
arb_mat_randtest: produce more sparse matrices
This commit is contained in:
parent
fc4c28f72c
commit
cf476bd0c9
1 changed files with 11 additions and 3 deletions
|
@ -14,15 +14,23 @@
|
||||||
void
|
void
|
||||||
arb_mat_randtest(arb_mat_t mat, flint_rand_t state, slong prec, slong mag_bits)
|
arb_mat_randtest(arb_mat_t mat, flint_rand_t state, slong prec, slong mag_bits)
|
||||||
{
|
{
|
||||||
slong i, j;
|
slong i, j, density;
|
||||||
|
|
||||||
|
density = n_randint(state, 100);
|
||||||
|
|
||||||
if (n_randint(state, 2))
|
if (n_randint(state, 2))
|
||||||
for (i = 0; i < arb_mat_nrows(mat); i++)
|
for (i = 0; i < arb_mat_nrows(mat); i++)
|
||||||
for (j = 0; j < arb_mat_ncols(mat); j++)
|
for (j = 0; j < arb_mat_ncols(mat); j++)
|
||||||
arb_randtest(arb_mat_entry(mat, i, j), state, prec, mag_bits);
|
if (n_randint(state, 100) < density)
|
||||||
|
arb_randtest(arb_mat_entry(mat, i, j), state, prec, mag_bits);
|
||||||
|
else
|
||||||
|
arb_zero(arb_mat_entry(mat, i, j));
|
||||||
else
|
else
|
||||||
for (i = 0; i < arb_mat_nrows(mat); i++)
|
for (i = 0; i < arb_mat_nrows(mat); i++)
|
||||||
for (j = 0; j < arb_mat_ncols(mat); j++)
|
for (j = 0; j < arb_mat_ncols(mat); j++)
|
||||||
arb_randtest_precise(arb_mat_entry(mat, i, j), state, prec, mag_bits);
|
if (n_randint(state, 100) < density)
|
||||||
|
arb_randtest_precise(arb_mat_entry(mat, i, j), state, prec, mag_bits);
|
||||||
|
else
|
||||||
|
arb_zero(arb_mat_entry(mat, i, j));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue