12 #include "CLHEP/Units/GlobalPhysicalConstants.h" 15 #include "CLHEP/Random/DualRand.h" 16 #include "CLHEP/Random/MTwistEngine.h" 20 #include "CLHEP/Random/RandBinomial.h" 21 #include "CLHEP/Random/RandBreitWigner.h" 22 #include "CLHEP/Random/RandChiSquare.h" 23 #include "CLHEP/Random/RandExponential.h" 24 #include "CLHEP/Random/RandFlat.h" 25 #include "CLHEP/Random/RandGamma.h" 26 #include "CLHEP/Random/RandGauss.h" 27 #include "CLHEP/Random/RandGaussQ.h" 28 #include "CLHEP/Random/RandGaussT.h" 29 #include "CLHEP/Random/RandGeneral.h" 30 #include "CLHEP/Random/RandLandau.h" 31 #include "CLHEP/Random/RandPoissonQ.h" 32 #include "CLHEP/Random/RandPoissonT.h" 33 #include "CLHEP/Random/RandSkewNormal.h" 34 #include "CLHEP/Random/RandStudentT.h" 42 using namespace CLHEP;
49 template<
typename Dist >
54 for(
uint i = 0u; i != 17u; ++i )
58 std::ostringstream os1;
64 std::ostringstream os2;
69 return os1.str() == os2.str() && e1 == e2;
76 template<
typename Dist >
81 for(
uint i = 0u; i != 17u; ++i )
83 for(
uint i = 0u; i != 19u; ++i )
87 std::ostringstream os1;
93 std::ostringstream os2;
98 return os1.str() == os2.str() && e1 == e2;
105 static uint const success = 0u;
106 static uint const Binomial_failure = 1u << 1;
107 static uint const BreitWigner_failure = 1u << 2;
108 static uint const ChiSquare_failure = 1u << 3;
109 static uint const Exponential_failure = 1u << 4;
110 static uint const Flat_failure = 1u << 5;
111 static uint const Gamma_failure = 1u << 6;
112 static uint const Gauss_failure = 1u << 7;
113 static uint const GaussQ_failure = 1u << 8;
114 static uint const GaussT_failure = 1u << 9;
115 static uint const General_failure = 1u << 10;
116 static uint const Landau_failure = 1u << 11;
117 static uint const Poisson_failure = 1u << 12;
118 static uint const PoissonQ_failure = 1u << 13;
119 static uint const PoissonT_failure = 1u << 14;
120 static uint const StudentT_failure = 1u << 15;
121 static uint const SkewNormal_failure = 1u << 16;
283 double pdf1[] = { 1.5, 2.5, 3.0, 4.25, 5.65 };
284 RandGeneral d1( r1, pdf1,
sizeof(pdf1)/
sizeof(pdf1[0]) );
288 double pdf2[] = { 1.0, 2.0, 3.0, 4.0, 5.0, 0.60 };
289 RandGeneral d2( r2, pdf2,
sizeof(pdf2)/
sizeof(pdf2[0]) );
uint testRandSkewNormal()
bool copy_constructor_is_okay(Dist &d1)
virtual std::ostream & put(std::ostream &os) const
uint testRandBreitWigner()
bool copy_assignment_is_okay(Dist &d1, Dist &d2)
uint testRandExponential()