在RcppArmadillo不支持fmat?

时间:2016-03-16 06:25:50

标签: c++ r rcpp

我试图找到一个非常大的稀疏矩阵的eigevalues。我正在使用RcppArmadillo的eig_gen函数,它不是专门用于稀疏矩阵的,但只要计算是用单精度完成的,我就可以了。所以我的cpp代码是:

#include <RcppArmadillo.h>

// [[Rcpp::depends(RcppArmadillo)]]

// [[Rcpp::export]]
arma::cx_fvec getEigenValuesARMASingle(arma::fmat M) {
 return arma::eig_gen(M);
}

但是我收到以下错误:

  

sourceCpp( 'EigSingle.cpp')   dyn.load中的错误(“/ home / marsha / tmp / Rtmpvko2N0 / sourcecpp_9f46104c5262 / sourceCpp_1.so”):     无法加载共享对象'/home/marsha/tmp/Rtmpvko2N0/sourcecpp_9f46104c5262/sourceCpp_1.so':     /home/marsha/tmp/Rtmpvko2N0/sourcecpp_9f46104c5262/sourceCpp_1.so:unfined defined symbol:sgeev_   电话:sourceCpp - &gt;来源 - &gt; withVisible - &gt; eval - &gt; eval - &gt; dyn.load   执行暂停

1 个答案:

答案 0 :(得分:1)

R不支持float。只需使用double,即标准mat