/// Perform creation and registration Create(void) { using namespace Gecode; Gecode::FloatNum step = 0.7; for (FloatRelTypes frts; frts(); ++frts) { (void) new FloatVarXY(frts.frt(),1,step); (void) new FloatVarXY(frts.frt(),2,step); (void) new FloatVarXX(frts.frt(),step); for (int c=-4; c<=4; c++) { (void) new FloatFloat(frts.frt(),1,c,step); (void) new FloatFloat(frts.frt(),2,c,step); } } }
/// Perform creation and registration Create(void) { using namespace Gecode; { FloatNum step = 0.7; FloatVal f1(-2,2); FloatVal f2(-3,-1); FloatVal f3(3,8); FloatValArgs a1(1); a1[0] = 0.0; for (FloatRelTypes frts; frts(); ++frts) { (void) new FloatFloat("11",f1,a1,frts.frt(),0.0,step); (void) new FloatVar("11",f1,a1,frts.frt(),step); (void) new FloatFloat("21",f2,a1,frts.frt(),0.0,step); (void) new FloatVar("21",f2,a1,frts.frt(),step); (void) new FloatFloat("31",f3,a1,frts.frt(),1.0,step); } const FloatVal av2[4] = {1.0,1.0,1.0,1.0}; const FloatVal av3[4] = {1.0,-1.0,-1.0,1.0}; const FloatVal av4[4] = {2.0,3.0,5.0,7.0}; const FloatVal av5[4] = {-2.0,3.0,-5.0,7.0}; for (int i=1; i<=4; i++) { FloatValArgs a2(i, av2); FloatValArgs a3(i, av3); FloatValArgs a4(i, av4); FloatValArgs a5(i, av5); for (FloatRelTypes frts; frts(); ++frts) { (void) new FloatFloat("12",f1,a2,frts.frt(),0.0,step); (void) new FloatFloat("13",f1,a3,frts.frt(),0.0,step); (void) new FloatFloat("14",f1,a4,frts.frt(),0.0,step); (void) new FloatFloat("15",f1,a5,frts.frt(),0.0,step); (void) new FloatFloat("22",f2,a2,frts.frt(),0.0,step); (void) new FloatFloat("23",f2,a3,frts.frt(),0.0,step); (void) new FloatFloat("24",f2,a4,frts.frt(),0.0,step); (void) new FloatFloat("25",f2,a5,frts.frt(),0.0,step); (void) new FloatFloat("32",f3,a2,frts.frt(),1.0,step); if (i < 4) { (void) new FloatVar("12",f1,a2,frts.frt(),step); (void) new FloatVar("13",f1,a3,frts.frt(),step); (void) new FloatVar("14",f1,a4,frts.frt(),step); (void) new FloatVar("15",f1,a5,frts.frt(),step); (void) new FloatVar("22",f2,a2,frts.frt(),step); (void) new FloatVar("23",f2,a3,frts.frt(),step); (void) new FloatVar("24",f2,a4,frts.frt(),step); (void) new FloatVar("25",f2,a5,frts.frt(),step); } } } } }