Last change
on this file since 3028 was 2840, checked in by cmv, 20 years ago |
Refonte totale de FunRan qui n'etait pas OK.
Arret de l'interpolation entre bin pour le tirage aleatoire
car ca pose un pb dans le premier et dernier bin.. A voir + tard
eventuellement. cmv 10/11/2005
|
File size:
1.1 KB
|
Rev | Line | |
---|
[220] | 1 | // This may look like C code, but it is really -*- C++ -*-
|
---|
| 2 | // Nombres aleatoires pour Peida.
|
---|
[2840] | 3 | // NON CE N'EST PAS MON CODE ... C. Magneville 1996-2000
|
---|
[1371] | 4 | // DAPNIA/SPP (Saclay) / CEA LAL - IN2P3/CNRS (Orsay)
|
---|
[220] | 5 |
|
---|
| 6 | #ifndef PERANDOM_SEEN
|
---|
| 7 | #define PERANDOM_SEEN
|
---|
| 8 |
|
---|
[244] | 9 | #include "machdefs.h"
|
---|
[220] | 10 | #include <stdlib.h>
|
---|
| 11 | #include "histos.h"
|
---|
| 12 | #include "nbrandom.h"
|
---|
| 13 |
|
---|
[1371] | 14 | namespace SOPHYA {
|
---|
| 15 |
|
---|
[220] | 16 | class FunRan : public Histo {
|
---|
| 17 | public:
|
---|
[1092] | 18 | typedef r_8 (*Func)(r_8);
|
---|
| 19 | FunRan(Func f, r_8 xMin=0.0, r_8 xMax=1.0, int_4 nBin=100);
|
---|
| 20 | FunRan(r_8 *tab, int_4 nBin);
|
---|
| 21 | FunRan(r_8 *tab, int_4 nBin, r_8 xMin, r_8 xMax);
|
---|
[2840] | 22 | FunRan(Histo &h, bool pdf=true);
|
---|
[1092] | 23 | r_8 Random(void);
|
---|
| 24 | int_4 BinRandom(void);
|
---|
[220] | 25 | };
|
---|
| 26 |
|
---|
[1371] | 27 | class FunRan2D {
|
---|
[220] | 28 | public:
|
---|
[1092] | 29 | // typedef r_8 (*Func)(r_8, r_8);
|
---|
| 30 | // FunRan2D(Func f, r_8 xMin=0.0, r_8 xMax=1.0, int_4 nBinX=100,
|
---|
| 31 | // r_8 yMin=0.0, r_8 yMax=1.0, int_4 nBinY=100);
|
---|
| 32 | FunRan2D(r_8 *tab, int_4 nBinX, int_4 nBinY);
|
---|
| 33 | FunRan2D(r_8 **tab, int_4 nBinX, int_4 nBinY);
|
---|
[220] | 34 | ~FunRan2D();
|
---|
[1092] | 35 | void Random(r_8& x, r_8& y);
|
---|
| 36 | void BinRandom(int_4& x, int_4& y);
|
---|
[220] | 37 | private:
|
---|
| 38 | FunRan* ranX;
|
---|
| 39 | FunRan** ranY;
|
---|
[1092] | 40 | int_4 nx;
|
---|
[220] | 41 | };
|
---|
| 42 |
|
---|
[1371] | 43 | } // namespace SOPHYA
|
---|
| 44 |
|
---|
[220] | 45 | #endif
|
---|
Note:
See
TracBrowser
for help on using the repository browser.