我正在使用C ++ boost库构建一个用于水文建模的R包。
包裹要求:
升压::数学:: gamma_distribution
升压::数学:: CDF
升压::数学:: isnan
BH R-package是否适用于我的情况?
答案 0 :(得分:0)
肯定应该。 Boost数学只是一个标题库;所以我们可以使用Dirks Rcpp Gallery post作为模型来测试boost tgamma函数
有些事情:
// Use brandnew CRAN package BH for Boost headers
// [[Rcpp::depends(BH)]]
#include <Rcpp.h>
#include <boost/foreach.hpp>
#include <boost/math/special_functions/gamma.hpp>
#define foreach BOOST_FOREACH
using namespace boost::math;
//[[Rcpp::export]]
Rcpp::NumericVector boost_gamma( Rcpp::NumericVector x ) {
foreach( double& elem, x ) {
elem = boost::math::tgamma(elem);
};
return x;
}
然后快速检查:
> identical( boost_gamma(0:10 + 1), factorial(0:10) )
[1] TRUE
并不是说测试意味着太多,除了说标题很容易包含和使用。
查看BigMemory Description文件的Depends
和LinkingTo
,并注意BH
那里。
最后,您可以通过查看News页面来及时更新BH包的设置。
玩得开心!