diff options
Diffstat (limited to 'main.cpp')
| -rw-r--r-- | main.cpp | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/main.cpp b/main.cpp new file mode 100644 index 0000000..c1eb3ec --- /dev/null +++ b/main.cpp @@ -0,0 +1,35 @@ +#include <iostream> +#include <gsl/gsl_rng.h> +#include <vector> +//#include "rtnorm.hpp" +#include <gsl/gsl_cdf.h> +#include <gsl/gsl_math.h> +#include "stratified_sampling.hpp" +#include <cmath> +#include <algorithm> + +//--génération quantiles-- +std::vector<double> quantile_norm(int n, double sigma){ + std::vector<double> q(n); + for (int i=0; i<n; i++) { + q[i] = gsl_cdf_gaussian_Pinv ((double)(i+1)/n, sigma); + } + return q; +} + +int main() +{ + //--- GSL random init --- + gsl_rng_env_setup(); + std::vector<double> q; + q = quantile_norm(10, 1); + vector<double> p(10, 0.1); + vector<gaussian_truncated> gen; + gen.push_back(gaussian_truncated(GSL_NEGINF,q[0])); + for (int i=1; i<10; i++){ + gen.push_back(gaussian_truncated(q[i-1],q[i])); + } + stratified_sampling<gaussian_truncated> S(p, gen); + //S.update(1000); + return 0; +} |
