fmcmap/tp107.map


If Cut/Copy and Paste fails, then click here for download.


fmcTitle("tp107"):
# 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:
c := (48.4/50.176)*sin(.25):
d := (48.4/50.176)*cos(.25):
fmcInitialValue(x_1, .8):
fmcStrongLowerBound(x_1, 0):
fmcInitialValue(x_2, .8):
fmcStrongLowerBound(x_2, 0):
fmcInitialValue(x_3, .2):
fmcInitialValue(x_4, .2):
fmcInitialValue(x_5, 1.0454):
fmcStrongLowerBound(x_5, .90909):
fmcStrongUpperBound(x_5, 1.0909):
fmcInitialValue(x_6, 1.0454):
fmcStrongLowerBound(x_6, .90909):
fmcStrongUpperBound(x_6, 1.0909):
fmcInitialValue(x_7, 1.0454):
fmcStrongLowerBound(x_7, .90909):
fmcStrongUpperBound(x_7, 1.0909):
fmcInitialValue(x_8, 0):
fmcInitialValue(x_9, 0):
y1 := sin(x_8):
y2 := cos(x_8):
y3 := sin(x_9):
y4 := cos(x_9):
y5 := sin(x_8 - x_9):
y6 := cos(x_8 - x_9):
ec_1 := .4 - x_1 + 2*c*x_5^2 - x_5*x_6*(d*y1 + c*y2) - x_5*x_7*(d*y3 + c*y4):
ec_2 := .4 - x_2 + 2*c*x_6^2 + x_5*x_6*(d*y1 - c*y2) + x_6*x_7*(d*y5 - c*y6):
ec_3 := .8 + 2*c*x_7^2 + x_5*x_7*(d*y3 - c*y4) - x_6*x_7*(d*y5 + c*y6):
ec_4 := .2 - x_3 + 2*d*x_5^2 + x_5*x_6*(c*y1 - d*y2) + x_5*x_7*(c*y3 - d*y4):
ec_5 := .2 - x_4 + 2*d*x_6^2 - x_5*x_6*(c*y1 + d*y2) - x_6*x_7*(c*y5 + d*y6):
ec_6 := (-.337) + 2*d*x_7^2 - x_5*x_7*(c*y3 + d*y4) + x_6*x_7*(c*y5 - d*y6):
mf := 3000*x_1 + 1000*x_1^3 + 2000*x_2 + 666.667*x_2^3:
myminfun := mf:
myabsdevnod0_0 := myownabs(myminfun - 5055.011803543816):
myreldevnod0_0 := myownabs(myminfun/5055.011803543816 - 1):
myabsdevnod0_1 := myownabs(x_1 - 0.6670127623153279):
myreldevnod0_1 := myownabs(x_1/0.6670127623153279 - 1):
myabsdevnod0_2 := myownabs(x_2 - 1.022384717050832):
myreldevnod0_2 := myownabs(x_2/1.022384717050832 - 1):
myabsdevnod0_3 := myownabs(x_3 - 0.2282871446675199):
myreldevnod0_3 := myownabs(x_3/0.2282871446675199 - 1):
myabsdevnod0_4 := myownabs(x_4 - 0.1848217561297505):
myreldevnod0_4 := myownabs(x_4/0.1848217561297505 - 1):
myabsdevnod0_5 := myownabs(x_5 - 1.0909):
myreldevnod0_5 := myownabs(x_5/1.0909 - 1):
myabsdevnod0_6 := myownabs(x_6 - 1.0909):
myreldevnod0_6 := myownabs(x_6/1.0909 - 1):
myabsdevnod0_7 := myownabs(x_7 - 1.069036003142822):
myreldevnod0_7 := myownabs(x_7/1.069036003142822 - 1):
myabsdevnod0_8 := myownabs(x_8 - 0.1066106224065641):
myreldevnod0_8 := myownabs(x_8/0.1066106224065641 - 1):
myabsdevnod0_9 := myownabs(x_9 + 0.3387876190699065):
myreldevnod0_9 := myownabs(x_9/0.3387876190699065 + 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 := (1/2)*(myownabs(myabsdevnod0_6 - myabsdevnod0_7) + (myabsdevnod0_6 + myabsdevnod0_7)):
myreldevnod1_6 := (1/2)*(myownabs(myreldevnod0_6 - myreldevnod0_7) + (myreldevnod0_6 + myreldevnod0_7)):
myabsdevnod1_8 := (1/2)*(myownabs(myabsdevnod0_8 - myabsdevnod0_9) + (myabsdevnod0_8 + myabsdevnod0_9)):
myreldevnod1_8 := (1/2)*(myownabs(myreldevnod0_8 - myreldevnod0_9) + (myreldevnod0_8 + myreldevnod0_9)):
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)):
myabsdevnod2_8 := myabsdevnod1_8:
myreldevnod2_8 := myreldevnod1_8:
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)):
myabsdevnod3_8 := myabsdevnod2_8:
myreldevnod3_8 := myreldevnod2_8:
myabsdevnod4_0 := (1/2)*(myownabs(myabsdevnod3_0 - myabsdevnod3_8) + (myabsdevnod3_0 + myabsdevnod3_8)):
myreldevnod4_0 := (1/2)*(myownabs(myreldevnod3_0 - myreldevnod3_8) + (myreldevnod3_0 + myreldevnod3_8)):
zmyabsdevmax := myabsdevnod4_0:
zmyreldevmax := myreldevnod4_0:
obj := myminfun:
fmcMinimum(obj):
fmcEquality(ce_1, ec_1):
fmcEquality(ce_2, ec_2):
fmcEquality(ce_3, ec_3):
fmcEquality(ce_4, ec_4):
fmcEquality(ce_5, ec_5):
fmcEquality(ce_6, ec_6):
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(x_7, x_7):
fmcEscortFloat(x_8, x_8):
fmcEscortFloat(x_9, x_9):
fmcEscortFloat('myminfun', myminfun):
fmcEscortFloat('zmyabsdevmax', zmyabsdevmax):
fmcEscortFloat('zmyreldevmax', zmyreldevmax):
fmcControlMinimum(1, 0):
# End Model

Stephan K.H. Seidl