If Cut/Copy and Paste fails, then click here for download.
fmcTitle("tp054v1"): # Source version 1 # Simple APM canonicalizer version 1.3 # FMCMAP backend version 1.2 myownabs := proc(x::algebraic) return(fmc_m_abs(x)): end proc: fmcInitialValue(x_1, 6000): fmcStrongLowerBound(x_1, 0): fmcStrongUpperBound(x_1, 20000): fmcInitialValue(x_2, 1.5): fmcStrongLowerBound(x_2, -10): fmcStrongUpperBound(x_2, 10): fmcInitialValue(x_3, 4000000): fmcStrongLowerBound(x_3, 0): fmcStrongUpperBound(x_3, 10000000): fmcInitialValue(x_4, 2): fmcStrongLowerBound(x_4, 0): fmcStrongUpperBound(x_4, 20): fmcInitialValue(x_5, 0.003): fmcStrongLowerBound(x_5, -1): fmcStrongUpperBound(x_5, 1): fmcInitialValue(x_6, 50000000): fmcStrongLowerBound(x_6, 0): fmcStrongUpperBound(x_6, 200000000): y_1 := (x_1 - 10000)/8000: y_2 := (x_2 - 1)/1: y_3 := (x_3 - 2000000)/7000000: y_4 := (x_4 - 10)/50: y_5 := (x_5 - 1/1000)*20: y_6 := (x_6 - 100000000)/500000000: h1 := (y_1^2 + y_1*y_2*2/5 + y_2^2)*25/24: h2 := y_3^2 + y_4^2 + y_5^2 + y_6^2: mf := -exp(-(h1 + h2)/2): myminfun := mf: myabsdevnod0_0 := myownabs(myminfun + 0.9080747577659853): myreldevnod0_0 := myownabs(myminfun/0.9080747577659853 + 1): myabsdevnod0_1 := myownabs(x_1 - 13085.71428571429): myreldevnod0_1 := myownabs(x_1/13085.71428571429 - 1): myabsdevnod0_2 := myownabs(x_2 - 1.128571428571429): myreldevnod0_2 := myownabs(x_2/1.128571428571429 - 1): myabsdevnod0_3 := myownabs(x_3 - 2000000): myreldevnod0_3 := myownabs(x_3/2000000 - 1): myabsdevnod0_4 := myownabs(x_4 - 10): myreldevnod0_4 := myownabs(x_4/10 - 1): myabsdevnod0_5 := myownabs(x_5 - 0.001): myreldevnod0_5 := myownabs(x_5/0.001 - 1): myabsdevnod0_6 := myownabs(x_6 - 100000000): myreldevnod0_6 := myownabs(x_6/100000000 - 1): myabsdevnod1_0 := (1/2)*(myownabs(myabsdevnod0_0 - myabsdevnod0_1) + (myabsdevnod0_0 + myabsdevnod0_1)): myreldevnod1_0 := (1/2)*(myownabs(myreldevnod0_0 - myreldevnod0_1) + (myreldevnod0_0 + myreldevnod0_1)): myabsdevnod1_2 := (1/2)*(myownabs(myabsdevnod0_2 - myabsdevnod0_3) + (myabsdevnod0_2 + myabsdevnod0_3)): myreldevnod1_2 := (1/2)*(myownabs(myreldevnod0_2 - myreldevnod0_3) + (myreldevnod0_2 + myreldevnod0_3)): myabsdevnod1_4 := (1/2)*(myownabs(myabsdevnod0_4 - myabsdevnod0_5) + (myabsdevnod0_4 + myabsdevnod0_5)): myreldevnod1_4 := (1/2)*(myownabs(myreldevnod0_4 - myreldevnod0_5) + (myreldevnod0_4 + myreldevnod0_5)): myabsdevnod1_6 := myabsdevnod0_6: myreldevnod1_6 := myreldevnod0_6: myabsdevnod2_0 := (1/2)*(myownabs(myabsdevnod1_0 - myabsdevnod1_2) + (myabsdevnod1_0 + myabsdevnod1_2)): myreldevnod2_0 := (1/2)*(myownabs(myreldevnod1_0 - myreldevnod1_2) + (myreldevnod1_0 + myreldevnod1_2)): myabsdevnod2_4 := (1/2)*(myownabs(myabsdevnod1_4 - myabsdevnod1_6) + (myabsdevnod1_4 + myabsdevnod1_6)): myreldevnod2_4 := (1/2)*(myownabs(myreldevnod1_4 - myreldevnod1_6) + (myreldevnod1_4 + myreldevnod1_6)): myabsdevnod3_0 := (1/2)*(myownabs(myabsdevnod2_0 - myabsdevnod2_4) + (myabsdevnod2_0 + myabsdevnod2_4)): myreldevnod3_0 := (1/2)*(myownabs(myreldevnod2_0 - myreldevnod2_4) + (myreldevnod2_0 + myreldevnod2_4)): zmyabsdevmax := myabsdevnod3_0: zmyreldevmax := myreldevnod3_0: obj := myminfun: fmcMinimum(obj): fmcEquality(ce_1, x_1 + 4000*x_2 - 17600): fmcEscortFloat(x_1, x_1): fmcEscortFloat(x_2, x_2): fmcEscortFloat(x_3, x_3): fmcEscortFloat(x_4, x_4): fmcEscortFloat(x_5, x_5): fmcEscortFloat(x_6, x_6): fmcEscortFloat('myminfun', myminfun): fmcEscortFloat('zmyabsdevmax', zmyabsdevmax): fmcEscortFloat('zmyreldevmax', zmyreldevmax): fmcControlMinimum(1, 0): # End Model