Bonjour a tous,
Je dois réaliser des tirages dans des lois de probabilités (par exemple loi normale). J'utilise la library boost.
Cependant le code tourne rapidement (< 1 seconde).
Mon code pour le moment:
Le problème est qu'en utilisant (std::time(0)) l'aléa n'intervient que toutes les secondes, or je voudrais qu'il soit plus rapide...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 double rnorm(double moy, double e_type) { boost::mt19937 rng(static_cast<long unsigned int>(std::time(0))); boost::normal_distribution<double> nd(moy, e_type); boost::variate_generator<boost::mt19937&, boost::normal_distribution<double> > var_nor(rng, nd); return var_nor(); }
Une idée??
Merci merci,
Nane
Partager