Я пишу симуляцию с Eigen, и теперь мне нужно установить список строк моей ColumnMajor SparseMatrix следующим образом:
In row n:
for column elements m:
if m == n set value to one
else set value to zero
Внутри разреженной матрицы всегда есть элемент с индексом столбца = индексом строки. Я пытался использовать InnerIterator, но это не сработало, так как у меня есть матрица ColumnMajor. Метод обрезки, предложенный в https://stackoverflow.com/a/21006998/3787689, работал, но мне просто нужно временно установите для недиагональных элементов ноль, а сокращение, похоже, фактически удалит их, что замедлит другую часть программы.
Как мне поступить в этом случае?
Заранее спасибо!
EDIT: я забыл уточнить: разреженная матрица уже заполнена значениями.