- Как проверить, является ли тип матрицы плотным или разреженным, из Rcpp::List[d], где d является индексом?
- Я могу использовать расширенный конструктор для Arma::mat через NumericMatrix, который позволяет избежать копирования (как показано ниже), но я не знаю, как сделать то же самое с арма::sp_mat. Эти матрицы большие, и я хочу избежать копирования.
Код: Выделить всё
Rcpp::NumericMatrix Ad = RcppListObject[d];
arma::mat ad=arma::mat( Ad.begin(), Ad.nrow(), Ad.ncol(), false );
//any needed calculations based on the d^{th} entry uses `ad`.
- Тесно связанный со 2, мне нужно будет выполнить множество вычислений с d^{th матрица в списке в разных точках алгоритма. Нужно ли мне каждый раз выполнять два шага, отмеченные в пункте 2, прежде чем я смогу выполнять с его помощью вычисления, или есть более эффективный путь? (Например, может ли Arma::field помочь и обработать комбинацию матриц Arma::mat и Arma::sp_mat без копирования? )
Подробнее здесь: https://stackoverflow.com/questions/792 ... trix-types