Я использую библиотеку линейной алгебры Armadillo C++ и пытаюсь понять, как преобразовать объект разреженной матрицы sp_mat
в стандартную плотную матрицу mat
.
Судя по внутреннему коду, sp_mat
и mat
не имеют общего родительского класса, что приводит меня верить, что нет способа превратить sp_mat
в mat
. Кстати, conv_to<mat>::from(sp_mat x)
не работает.
Возможно, есть хитрый способ сделать это, используя один из расширенных конструкторов mat
? Например, как-то создать мат нулей и передать расположение и значения ненулевых элементов в sp_mat
.
Кто-нибудь знает эффективный способ сделать это? Заранее спасибо.