diff options
| author | Bertrand <bertrand.horel@gmail.com> | 2016-02-19 15:03:51 +0000 |
|---|---|---|
| committer | Bertrand <bertrand.horel@gmail.com> | 2016-02-19 15:03:51 +0000 |
| commit | d2b133901a65244934eb642ec8e20c797efaf650 (patch) | |
| tree | f8d186f8e8ca0886f8f0a464261ba8747242b4e6 /src/rqmc.cpp | |
| parent | 355e4567e68a76356714e2e58a42dcd78533cf6c (diff) | |
| download | projet_C++-d2b133901a65244934eb642ec8e20c797efaf650.tar.gz | |
nettoyage du dépôt
Diffstat (limited to 'src/rqmc.cpp')
| -rw-r--r-- | src/rqmc.cpp | 38 |
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; +//~ } |
