fmcmap/tp103.map


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


fmcTitle("tp103"):
# Source version 1
# Simple APM canonicalizer version 1.3
# FMCMAP back end version 1.1
asin := proc(x::algebraic) local y: y := arcsin(x): RETURN(y): end:
atan := proc(x::algebraic) local y: y := arctan(x): RETURN(y): end:
myownabs := proc(x::algebraic) local y: y := fmc_m_abs(x): RETURN(y): end:
a := 1/2:
fmcInitialValue('x_1', 6):
fmcStrongLowerBound('x_1', 1/10):
fmcStrongUpperBound('x_1', 10):
fmcInitialValue('x_2', 6):
fmcStrongLowerBound('x_2', 1/10):
fmcStrongUpperBound('x_2', 10):
fmcInitialValue('x_3', 6):
fmcStrongLowerBound('x_3', 1/10):
fmcStrongUpperBound('x_3', 10):
fmcInitialValue('x_4', 6):
fmcStrongLowerBound('x_4', 1/10):
fmcStrongUpperBound('x_4', 10):
fmcInitialValue('x_5', 6):
fmcStrongLowerBound('x_5', 1/10):
fmcStrongUpperBound('x_5', 10):
fmcInitialValue('x_6', 6):
fmcStrongLowerBound('x_6', 1/10):
fmcStrongUpperBound('x_6', 10):
fmcInitialValue('x_7', 6):
fmcStrongLowerBound('x_7', 1/100):
fmcStrongUpperBound('x_7', 10):
c_1 := 1 - (1/2)*x_1^(1/2)*x_3^(-1)*x_6^(-2)*x_7 - (7/10)*x_1^3*x_2*x_3^(-2)*x_6*x_7^(1/2) -
(2/10)*x_2^(-1)*x_3*x_4^(-1/2)*x_6^(2/3)* x_7^(1/4):
c_2 := 1 - (13/10)*x_1^(-1/2)*x_2*x_3^(-1)*x_5^(-1)* x_6 - (8/10)*x_3*x_4^(-1)*x_5^(-1)*x_6^2 -
(31/10)*x_1^(-1)*x_2^(1/2)*x_4^(-2)* x_5^(-1)*x_6^(1/3):
c_3 := 1 - 2*x_1*x_3^(-3/2)*x_5*x_6^(-1)*x_7^(1/3) - (1/10)*x_2*x_3^(-1/2)*x_5*x_6^(-1)* x_7^(-1/2) -
x_1^(-1)*x_2*x_3^(1/2)*x_5 - (65/100)*x_2^(-2)*x_3*x_5*x_6^(-1)*x_7:
c_4 := 1 - (2/10)*x_1^(-2)*x_2*x_4^(-1)*x_5^(1/2)* x_7^(1/3) - (3/10)*x_1^(1/2)*x_2^2*x_3*x_4^(1/3)*
x_7^(1/4)*x_5^(-2/3) - (4/10)*x_1^(-3)*x_2^(-2)*x_3*x_5* x_7^(3/4) - (1/2)*x_3^(-2)*x_4*x_7^(1/2):
mf := 10*x_1*x_2^(-1)*x_4^2*x_6^(-3)*x_7^a + 15*x_1^(-1)*x_2^(-2)*x_3*x_4*x_5^(-1)* x_7^(-1/2) +
20*x_1^(-2)*x_2*x_4^(-1)*x_5^(-2)*x_6 + 25*x_1^2*x_2^2*x_3^(-1)*x_5^(1/2)* x_6^(-2)*x_7:
c_5 := mf - 100:
c_6 := 3000 - mf:
myminfun := mf:
myabsdevnod0_0 := myownabs(myminfun - 543.6679584662806):
myreldevnod0_0 := myownabs(myminfun/543.6679584662806 - 1):
myabsdevnod0_1 := myownabs(x_1 - 4.394104510526405):
myreldevnod0_1 := myownabs(x_1/4.394104510526405 - 1):
myabsdevnod0_2 := myownabs(x_2 - 0.8544687387974248):
myreldevnod0_2 := myownabs(x_2/0.8544687387974248 - 1):
myabsdevnod0_3 := myownabs(x_3 - 2.843230313950895):
myreldevnod0_3 := myownabs(x_3/2.843230313950895 - 1):
myabsdevnod0_4 := myownabs(x_4 - 3.399978667686558):
myreldevnod0_4 := myownabs(x_4/3.399978667686558 - 1):
myabsdevnod0_5 := myownabs(x_5 - 0.7229261330073024):
myreldevnod0_5 := myownabs(x_5/0.7229261330073024 - 1):
myabsdevnod0_6 := myownabs(x_6 - 0.8704063818044572):
myreldevnod0_6 := myownabs(x_6/0.8704063818044572 - 1):
myabsdevnod0_7 := myownabs(x_7 - 0.02463882632722851):
myreldevnod0_7 := myownabs(x_7/0.02463882632722851 - 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)):
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):
fmcInequality('ci_1', c_1):
fmcInequality('ci_2', c_2):
fmcInequality('ci_3', c_3):
fmcInequality('ci_4', c_4):
fmcInequality('ci_5', c_5):
fmcInequality('ci_6', c_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('myminfun', myminfun):
fmcEscortFloat('zmyabsdevmax', zmyabsdevmax):
fmcEscortFloat('zmyreldevmax', zmyreldevmax):
fmcControlMinimum(1, 0):
# End Model

Stephan K.H. Seidl