From 6b07d76c512c5450ce34fd6f2f8483c395a24ea2 Mon Sep 17 00:00:00 2001 From: Bertrand Date: Tue, 16 Feb 2016 22:01:28 +0000 Subject: meilleur encapsulage pour asian quasi_option --- rqmc.hpp | 29 ++++++++++++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) (limited to 'rqmc.hpp') diff --git a/rqmc.hpp b/rqmc.hpp index 62efbaa..415ab00 100644 --- a/rqmc.hpp +++ b/rqmc.hpp @@ -31,7 +31,29 @@ compose(Fct f, VA X) { return compose_t(f, X); }; -// +template +struct mean_t: public generator +{ + mean_t(int n, VA X): n(n), X(X) {}; + double operator()(){ + double sum = 0; + for(int i=0; i +inline mean_t +mean(int n, VA X){ + return mean_t(n, X); +}; + + +//Les classes de monte-Carlo template std::vector monte_carlo(int n, L X) @@ -55,6 +77,9 @@ std::vector monte_carlo(int n, Fct f, L X) return monte_carlo(n, compose(f, X)); }; +//Les classes de quasi-mean + + struct quasi_gaussian : public var_alea > { quasi_gaussian (int d, double mean = 0, double std =1) @@ -72,6 +97,8 @@ struct quasi_gaussian : public var_alea > sobol sob; }; + + struct gaussian_d : public var_alea > { gaussian_d(int d, double mean = 0, double std =1) -- cgit v1.2.3-70-g09d2