aboutsummaryrefslogtreecommitdiffstats
path: root/src/rqmc.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/rqmc.cpp')
-rw-r--r--src/rqmc.cpp38
1 files changed, 38 insertions, 0 deletions
diff --git a/src/rqmc.cpp b/src/rqmc.cpp
new file mode 100644
index 0000000..7109d82
--- /dev/null
+++ b/src/rqmc.cpp
@@ -0,0 +1,38 @@
+#include "rqmc.hpp"
+
+
+double frac_part(double x){
+ return x - floor(x);
+}
+
+
+double mean_rqmc(int N, double X) {
+ sobol s(1);
+ double sum = 0;
+ for(int i=0; i<N; i++){
+ sum +=gsl_cdf_gaussian_Pinv (frac_part(X+s()[0]), 1);
+ }
+ return sum/N;
+}
+
+//~ int main() {
+ //~ init_alea(0);
+ //~ int I=100;
+ //~ int N= 10000;
+ //~ uniform U;
+ //~ double m = 0;
+ //~ double s = 0;
+ //~ double temp;
+
+ //~ for(int i=0;i<I;i++){
+ //~ temp = mean_rqmc(N,U());
+ //~ m+=temp;
+ //~ s+=temp*temp;
+ //~ }
+ //~ m = m/I;
+ //~ s = s/I - m*m;
+
+ //~ std::cout<<"espérance "<<m<<" taille de l'IC "<<sqrt(s)*1.96/10<<std::endl;
+
+ //~ return 0;
+//~ }