Rcpp Version 1.0.9
piSugar.cpp
Go to the documentation of this file.
1 
2 #include <Rcpp.h>
3 
4 using namespace Rcpp;
5 
6 // [[Rcpp::export]]
7 double piSugar(const int N) {
8  NumericVector x = runif(N);
9  NumericVector y = runif(N);
10  NumericVector d = sqrt(x*x + y*y);
11  return 4.0 * sum(d < 1.0) / N;
12 }
void sqrt(InputIterator begin, InputIterator end, OutputIterator out)
Definition: algorithm.h:479
Rcpp API.
Definition: algo.h:28
sugar::Sum< INTSXP, NA, T > sum(const VectorBase< INTSXP, NA, T > &t)
Definition: sum.h:98
NumericVector runif(int n, double min, double max)
Definition: random.h:295
double piSugar(const int N)
Definition: piSugar.cpp:7