我想利用RcppArmadillo和RcppGSL通过sourceCpp。基本上,我对修改B样条示例感兴趣。
http://dirk.eddelbuettel.com/blog/2012/12/08/
所以B样条是R^3的函数,而不仅仅是R^1的函数。这就需要处理在GSL中显然不支持的三维数组(这里有一个扩展http://savannah.nongnu.org/projects/marray )。但是,RcppArmadillo有arma::多维数据集类型,只要我能让RcppArmadillo和RcppGSL“一起工作”,就可以使用它。不幸的是,我无法做到这一点。我看过了
Multiple plugins in cxxfunction
但没有成功地创建上述的组合插件。任何帮助都是非常感谢的!
亚当
编辑:实际上,使用包含以下命令序列的.cpp文件编译sourceCpp文件是可能的:
// [[Rcpp::depends(RcppGSL)]]
// [[Rcpp::depends(RcppArmadillo)]]
#include <RcppArmadillo.h>
#include <RcppGSL.h>
#include <gsl/gsl_bspline.h>此外,似乎还可以存储以下的值
双gsl_vector_get (const gsl_vector * v,size_t i)
在arma::立方体结构中。
发布于 2013-12-15 21:19:28
RcppArmadillo.h和RcppGSL.h模型类似。它们首先包括RcppCommon.h,然后是一些前向声明,然后是使用这些前向声明的Rcpp.h,然后是实现。
如果您想出了正确的包含顺序,那么肯定可以同时使用它们。
这绝对是一个Rcpp问题,因为阻碍您使用它们的是(好的还是坏的)设计决策。
你需要学习RcppArmadillo.h和RcppGSL.h,并想出正确的包含顺序,或者等待别人遵循这些提示并给出答案。在接下来的几天里,我可能没有时间亲自做这件事。
https://stackoverflow.com/questions/20596754
复制相似问题