Perform creation and registration
| 192 | public: |
| 193 | /// Perform creation and registration |
| 194 | Create(void) { |
| 195 | using namespace Gecode; |
| 196 | { |
| 197 | FloatNum step = 0.7; |
| 198 | FloatVal f1(-2,2); |
| 199 | FloatVal f2(-3,-1); |
| 200 | FloatVal f3(3,8); |
| 201 | |
| 202 | FloatValArgs a1(1); |
| 203 | a1[0] = 0.0; |
| 204 | |
| 205 | for (FloatRelTypes frts; frts(); ++frts) { |
| 206 | (void) new FloatFloat("11",f1,a1,frts.frt(),0.0,step); |
| 207 | (void) new FloatVar("11",f1,a1,frts.frt(),step); |
| 208 | (void) new FloatFloat("21",f2,a1,frts.frt(),0.0,step); |
| 209 | (void) new FloatVar("21",f2,a1,frts.frt(),step); |
| 210 | (void) new FloatFloat("31",f3,a1,frts.frt(),1.0,step); |
| 211 | } |
| 212 | |
| 213 | const FloatVal av2[4] = {1.0,1.0,1.0,1.0}; |
| 214 | const FloatVal av3[4] = {1.0,-1.0,-1.0,1.0}; |
| 215 | const FloatVal av4[4] = {2.0,3.0,5.0,7.0}; |
| 216 | const FloatVal av5[4] = {-2.0,3.0,-5.0,7.0}; |
| 217 | |
| 218 | for (int i=1; i<=4; i++) { |
| 219 | FloatValArgs a2(i, av2); |
| 220 | FloatValArgs a3(i, av3); |
| 221 | FloatValArgs a4(i, av4); |
| 222 | FloatValArgs a5(i, av5); |
| 223 | for (FloatRelTypes frts; frts(); ++frts) { |
| 224 | (void) new FloatFloat("12",f1,a2,frts.frt(),0.0,step); |
| 225 | (void) new FloatFloat("13",f1,a3,frts.frt(),0.0,step); |
| 226 | (void) new FloatFloat("14",f1,a4,frts.frt(),0.0,step); |
| 227 | (void) new FloatFloat("15",f1,a5,frts.frt(),0.0,step); |
| 228 | (void) new FloatFloat("22",f2,a2,frts.frt(),0.0,step); |
| 229 | (void) new FloatFloat("23",f2,a3,frts.frt(),0.0,step); |
| 230 | (void) new FloatFloat("24",f2,a4,frts.frt(),0.0,step); |
| 231 | (void) new FloatFloat("25",f2,a5,frts.frt(),0.0,step); |
| 232 | (void) new FloatFloat("32",f3,a2,frts.frt(),1.0,step); |
| 233 | if (i < 4) { |
| 234 | (void) new FloatVar("12",f1,a2,frts.frt(),step); |
| 235 | (void) new FloatVar("13",f1,a3,frts.frt(),step); |
| 236 | (void) new FloatVar("14",f1,a4,frts.frt(),step); |
| 237 | (void) new FloatVar("15",f1,a5,frts.frt(),step); |
| 238 | (void) new FloatVar("22",f2,a2,frts.frt(),step); |
| 239 | (void) new FloatVar("23",f2,a3,frts.frt(),step); |
| 240 | (void) new FloatVar("24",f2,a4,frts.frt(),step); |
| 241 | (void) new FloatVar("25",f2,a5,frts.frt(),step); |
| 242 | } |
| 243 | } |
| 244 | } |
| 245 | } |
| 246 | } |
| 247 | }; |
| 248 | |
| 249 | Create c; |