# Model tp087r2 # Source version 7 # Simple APM canonicalizer version 1.3 # AMPL backend version 1.1 param bv1 := 1.48477; param bv2 := 1.48577; param bv := bv1; param ubx5hsv1 := 1000; param ubx5hsv2 := 10000; param ubx5hsv := ubx5hsv1; param a := 131.078; param b := bv; param c := 0.90798; param arg := 1.47588; param d := cos(arg); param e := sin(arg); param ivx5hs := 198.175; param lbx5hs := -1000; param lbx5r := -18; param lbx5 := lbx5r; param ubx5hs := ubx5hsv; param ubx5r := -10.7; param ubx5 := ubx5r; param ivx5 := (1/2)*(ivx5hs + ubx5 - abs(ivx5hs - ubx5)); param sign1_0 := 1; param sign1_2 := -1; param sign2_0 := 1; param sign2_3 := -1; var x_1 >= 0, <= 400; let x_1 := 390; var x_2 >= 0, <= 1000; let x_2 := 1000; var x_3 >= 340, <= 420; let x_3 := 419.5; var x_4 >= 340, <= 420; let x_4 := 340.5; var x_5 >= lbx5, <= ubx5; let x_5 := ivx5; var x_6 >= 0, <= 0.5236; let x_6 := 0.5; var x_7 >= 0, <= 300; let x_7 := 0; var x_8 >= 0, <= 300; let x_8 := 90; var x_9 >= 0, <= 900; let x_9 := 0; var x_10 >= 0, <= 900; let x_10 := 900; var x_11 >= 0, <= 800; let x_11 := 0; var x_12 >= 0, <= 800; let x_12 := 800; var x_13 >= -1, <= 1; let x_13 := 1; var x_14 >= -1, <= 1; let x_14 := 1; var x_15 >= -1, <= 1; let x_15 := 1; var cons_1 = 300 - x_1 - x_3*x_4*cos(b - x_6)/a + c*d*x_3^2/a; var cons_2 = (-1)*x_2 - x_3*x_4*cos(b + x_6)/a + c*d*x_4^2/a; var cons_3 = (-1)*x_5 - x_3*x_4*sin(b + x_6)/a + c*e*x_4^2/a; var cons_4 = 200 - x_3*x_4*sin(b - x_6)/a + c*e*x_3^2/a; var comp1_1 = x_1 - 300; var comp2_1 = x_2 - 100; var comp2_2 = x_2 - 200; var comp1nnxa_1 = x_7; var comp1nnxb_1 = x_8; var comp2nnxa_1 = x_9; var comp2nnxb_1 = x_10; var comp2nnxa_2 = x_11; var comp2nnxb_2 = x_12; var cons_5 = comp1_1 + comp1nnxa_1 - comp1nnxb_1; var cons_6 = comp2_1 + comp2nnxa_1 - comp2nnxb_1; var cons_7 = comp2_2 + comp2nnxa_2 - comp2nnxb_2; var comp1abs_1 = comp1nnxa_1 + comp1nnxb_1; var comp2abs_1 = comp2nnxa_1 + comp2nnxb_1; var comp2abs_2 = comp2nnxa_2 + comp2nnxb_2; var sign1_1 = x_13; var sign2_1 = x_14; var sign2_2 = x_15; var cons_8 = sign1_1*comp1abs_1 - comp1_1; var cons_9 = sign2_1*comp2abs_1 - comp2_1; var cons_10 = sign2_2*comp2abs_2 - comp2_2; var step1_1 = (1 + sign1_0)*(1 - sign1_1)/4; var step1_2 = (1 + sign1_1)*(1 - sign1_2)/4; var step2_1 = (1 + sign2_0)*(1 - sign2_1)/4; var step2_2 = (1 + sign2_1)*(1 - sign2_2)/4; var step2_3 = (1 + sign2_2)*(1 - sign2_3)/4; var f1_1 = 30*x_1; var f1_2 = 31*x_1; var f2_1 = 28*x_2; var f2_2 = 29*x_2; var f2_3 = 30*x_2; var f1comb_1 = f1_1*step1_1; var f1comb_2 = f1comb_1 + comp1nnxa_1*comp1nnxb_1 + f1_2*step1_2; var f2comb_1 = f2_1*step2_1; var f2comb_2 = f2comb_1 + comp2nnxa_1*comp2nnxb_1 + f2_2*step2_2; var f2comb_3 = f2comb_2 + comp2nnxa_2*comp2nnxb_2 + f2_3*step2_3; var mf = f1comb_2 + f2comb_3; var myminfun = mf; var myabsdevnod0_0 = abs(myminfun - 8853.5398913296); var myreldevnod0_0 = abs(myminfun/8853.5398913296 - 1); var myabsdevnod0_1 = abs(x_1 - 201.78466304432); var myreldevnod0_1 = abs(x_1/201.78466304432 - 1); var myabsdevnod0_2 = abs(x_2 - 100); var myreldevnod0_2 = abs(x_2/100 - 1); var myabsdevnod0_3 = abs(x_3 - 383.0709952729388); var myreldevnod0_3 = abs(x_3/383.0709952729388 - 1); var myabsdevnod0_4 = abs(x_4 - 420); var myreldevnod0_4 = abs(x_4/420 - 1); var myabsdevnod0_5 = abs(x_5 + 10.90760562936625); var myreldevnod0_5 = abs(x_5/10.90760562936625 + 1); var myabsdevnod0_6 = abs(x_6 - 0.07314814840034025); var myreldevnod0_6 = abs(x_6/0.07314814840034025 - 1); var myabsdevnod0_7 = abs(x_7 - 98.21533695567999); var myreldevnod0_7 = abs(x_7/98.21533695567999 - 1); var myabsdevnod0_8 = abs(x_8); var myreldevnod0_8 = abs(x_8); var myabsdevnod0_9 = abs(x_9); var myreldevnod0_9 = abs(x_9); var myabsdevnod0_10 = abs(x_10); var myreldevnod0_10 = abs(x_10); var myabsdevnod0_11 = abs(x_11 - 100); var myreldevnod0_11 = abs(x_11/100 - 1); var myabsdevnod0_12 = abs(x_12); var myreldevnod0_12 = abs(x_12); var myabsdevnod0_13 = abs(x_13 + 1); var myreldevnod0_13 = abs(x_13 + 1); var myabsdevnod0_14 = abs(x_14 + 1); var myreldevnod0_14 = abs(x_14 + 1); var myabsdevnod0_15 = abs(x_15 + 1); var myreldevnod0_15 = abs(x_15 + 1); var myabsdevnod1_0 = (1/2)*(abs(myabsdevnod0_0 - myabsdevnod0_1) + (myabsdevnod0_0 + myabsdevnod0_1)); var myreldevnod1_0 = (1/2)*(abs(myreldevnod0_0 - myreldevnod0_1) + (myreldevnod0_0 + myreldevnod0_1)); var myabsdevnod1_2 = (1/2)*(abs(myabsdevnod0_2 - myabsdevnod0_3) + (myabsdevnod0_2 + myabsdevnod0_3)); var myreldevnod1_2 = (1/2)*(abs(myreldevnod0_2 - myreldevnod0_3) + (myreldevnod0_2 + myreldevnod0_3)); var myabsdevnod1_4 = (1/2)*(abs(myabsdevnod0_4 - myabsdevnod0_5) + (myabsdevnod0_4 + myabsdevnod0_5)); var myreldevnod1_4 = (1/2)*(abs(myreldevnod0_4 - myreldevnod0_5) + (myreldevnod0_4 + myreldevnod0_5)); var myabsdevnod1_6 = (1/2)*(abs(myabsdevnod0_6 - myabsdevnod0_7) + (myabsdevnod0_6 + myabsdevnod0_7)); var myreldevnod1_6 = (1/2)*(abs(myreldevnod0_6 - myreldevnod0_7) + (myreldevnod0_6 + myreldevnod0_7)); var myabsdevnod1_8 = (1/2)*(abs(myabsdevnod0_8 - myabsdevnod0_9) + (myabsdevnod0_8 + myabsdevnod0_9)); var myreldevnod1_8 = (1/2)*(abs(myreldevnod0_8 - myreldevnod0_9) + (myreldevnod0_8 + myreldevnod0_9)); var myabsdevnod1_10 = (1/2)*(abs(myabsdevnod0_10 - myabsdevnod0_11) + (myabsdevnod0_10 + myabsdevnod0_11)); var myreldevnod1_10 = (1/2)*(abs(myreldevnod0_10 - myreldevnod0_11) + (myreldevnod0_10 + myreldevnod0_11)); var myabsdevnod1_12 = (1/2)*(abs(myabsdevnod0_12 - myabsdevnod0_13) + (myabsdevnod0_12 + myabsdevnod0_13)); var myreldevnod1_12 = (1/2)*(abs(myreldevnod0_12 - myreldevnod0_13) + (myreldevnod0_12 + myreldevnod0_13)); var myabsdevnod1_14 = (1/2)*(abs(myabsdevnod0_14 - myabsdevnod0_15) + (myabsdevnod0_14 + myabsdevnod0_15)); var myreldevnod1_14 = (1/2)*(abs(myreldevnod0_14 - myreldevnod0_15) + (myreldevnod0_14 + myreldevnod0_15)); var myabsdevnod2_0 = (1/2)*(abs(myabsdevnod1_0 - myabsdevnod1_2) + (myabsdevnod1_0 + myabsdevnod1_2)); var myreldevnod2_0 = (1/2)*(abs(myreldevnod1_0 - myreldevnod1_2) + (myreldevnod1_0 + myreldevnod1_2)); var myabsdevnod2_4 = (1/2)*(abs(myabsdevnod1_4 - myabsdevnod1_6) + (myabsdevnod1_4 + myabsdevnod1_6)); var myreldevnod2_4 = (1/2)*(abs(myreldevnod1_4 - myreldevnod1_6) + (myreldevnod1_4 + myreldevnod1_6)); var myabsdevnod2_8 = (1/2)*(abs(myabsdevnod1_8 - myabsdevnod1_10) + (myabsdevnod1_8 + myabsdevnod1_10)); var myreldevnod2_8 = (1/2)*(abs(myreldevnod1_8 - myreldevnod1_10) + (myreldevnod1_8 + myreldevnod1_10)); var myabsdevnod2_12 = (1/2)*(abs(myabsdevnod1_12 - myabsdevnod1_14) + (myabsdevnod1_12 + myabsdevnod1_14)); var myreldevnod2_12 = (1/2)*(abs(myreldevnod1_12 - myreldevnod1_14) + (myreldevnod1_12 + myreldevnod1_14)); var myabsdevnod3_0 = (1/2)*(abs(myabsdevnod2_0 - myabsdevnod2_4) + (myabsdevnod2_0 + myabsdevnod2_4)); var myreldevnod3_0 = (1/2)*(abs(myreldevnod2_0 - myreldevnod2_4) + (myreldevnod2_0 + myreldevnod2_4)); var myabsdevnod3_8 = (1/2)*(abs(myabsdevnod2_8 - myabsdevnod2_12) + (myabsdevnod2_8 + myabsdevnod2_12)); var myreldevnod3_8 = (1/2)*(abs(myreldevnod2_8 - myreldevnod2_12) + (myreldevnod2_8 + myreldevnod2_12)); var myabsdevnod4_0 = (1/2)*(abs(myabsdevnod3_0 - myabsdevnod3_8) + (myabsdevnod3_0 + myabsdevnod3_8)); var myreldevnod4_0 = (1/2)*(abs(myreldevnod3_0 - myreldevnod3_8) + (myreldevnod3_0 + myreldevnod3_8)); var zmyabsdevmax = myabsdevnod4_0; var zmyreldevmax = myreldevnod4_0; minimize obj: myminfun; subject to ce_1: cons_1 = 0; subject to ce_2: cons_2 = 0; subject to ce_3: cons_3 = 0; subject to ce_4: cons_4 = 0; subject to ce_5: cons_5 = 0; subject to ce_6: cons_6 = 0; subject to ce_7: cons_7 = 0; subject to ce_8: cons_8 = 0; subject to ce_9: cons_9 = 0; subject to ce_10: cons_10 = 0; solve; display x_1; display x_2; display x_3; display x_4; display x_5; display x_6; display x_7; display x_8; display x_9; display x_10; display x_11; display x_12; display x_13; display x_14; display x_15; display myminfun; display zmyabsdevmax; display zmyreldevmax; # End Model