60 Triangle(
const Real a = 0.,
const Real b = 0.5,
const Real c = 1.)
61 :
a_(std::min(a,std::min(b,c))),
62 b_(std::max(std::min(a,b),std::min(std::max(a,b),c))),
63 c_(std::max(a,std::max(b,c))) {}
66 Real a = parlist.sublist(
"SOL").sublist(
"Distribution").sublist(
"Triangle").get(
"Lower Bound",0.);
67 Real b = parlist.sublist(
"SOL").sublist(
"Distribution").sublist(
"Triangle").get(
"Peak Location",0.5);
68 Real c = parlist.sublist(
"SOL").sublist(
"Distribution").sublist(
"Triangle").get(
"Upper Bound",1.);
69 a_ = std::min(a,std::min(b,c));
70 b_ = std::max(std::min(a,b),std::min(std::max(a,b),c));
71 c_ = std::max(a,std::max(b,c));
124 void test(std::ostream &outStream = std::cout )
const {
126 std::vector<Real> X(size,0.);
127 std::vector<int> T(size,0);
128 X[0] =
a_-4.*(Real)rand()/(Real)RAND_MAX;
132 X[2] = (
b_-
a_)*(Real)rand()/(Real)RAND_MAX +
a_;
136 X[4] = (
c_-
b_)*(Real)rand()/(Real)RAND_MAX +
b_;
140 X[6] =
c_+4.*(Real)rand()/(Real)RAND_MAX;