00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef _BOOTSTRAP_H_
00020 #define _BOOTSTRAP_H_
00021
00025
00026
00027 #include <gsl/gsl_rng.h>
00028 #include <cstdio>
00029
00030 #include <vector>
00031
00032 #include "kdsPmagL.H"
00033
00036 void Print(const SVec &sv);
00037
00059
00060
00061 size_t BootstrapParametricSample(const std::vector<SVec> &s, const std::vector<float> &sigmas,
00062 SVec &newSample, gsl_rng *r);
00063
00083
00084
00085 size_t BootstrapParametricSite (const std::vector<SVec> &s, const float sigma,
00086 SVec &newSample, gsl_rng *r);
00087
00088
00095
00096 template <class T>
00097 T getDevRandom(T &randomSample) {
00098 FILE * devRandom = fopen ("/dev/random", "r");
00099 assert (devRandom);
00100 fread (&randomSample,sizeof(T),1,devRandom);
00101 fclose (devRandom);
00102 return (randomSample);
00103 }
00104
00105 #endif // _BOOTSTRAP_H_