If Cut/Copy and Paste fails, then click here for download.
fmcTitle("tp121"): # 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: mypi := 4*atan(1): c2 := 2: c3 := 3: c10 := 10: c20 := 20: c1000 := 1000: c100000 := 100000: rrough := ((50/c1000)/((2700 + 19300 + 7860)*(4/c3)*mypi))^(1/c3): rcage := 1/c10: fmcInitialValue('x_1', 1.020462601383630): fmcInitialValue('x_2', 1.067249920905851): fmcInitialValue('x_3', -10): fmcInitialValue('x_4', 1.056302685455057): fmcInitialValue('x_5', 0.9888734173342870): fmcInitialValue('x_6', 1.030255683555398): fmcInitialValue('x_7', 1.002173322039949): fmcInitialValue('x_8', 0.9898553374984422): fmcInitialValue('x_9', 1.074494882526627): fmcInitialValue('x_10', 1.095044196509762): fmcInitialValue('x_11', -1000): fmcInitialValue('x_12', 1.089828605856584): massa := 2700*(4/c3)*mypi*x_1^3: massg := 19300*(4/c3)*mypi*x_2^3: massi := 7860*(4/c3)*mypi*x_3^3: dista0p2 := x_4^2 + x_7^2 + x_10^2: distg0p2 := x_5^2 + x_8^2 + x_11^2: disti0p2 := x_6^2 + x_9^2 + x_12^2: distag := sqrt((x_4 - x_5)^2 + (x_7 - x_8)^2 + (x_10 - x_11)^2): distgi := sqrt((x_5 - x_6)^2 + (x_8 - x_9)^2 + (x_11 - x_12)^2): distia := sqrt((x_6 - x_4)^2 + (x_9 - x_7)^2 + (x_12 - x_10)^2): rsumag := x_1 + x_2: rsumgi := x_2 + x_3: rsumia := x_3 + x_1: mf := (980665/c100000)*(massa*x_10 + massg*x_11 + massi*x_12): c_1 := x_8 + x_2/c10: c_2 := massa + massg + massi - 50/c1000: c_3 := (x_1^2 + 2*rcage*(x_10 - x_1) - dista0p2)/rrough: c_4 := (x_2^2 + 2*rcage*(x_11 - x_2) - distg0p2)/rrough: c_5 := (x_3^2 + 2*rcage*(x_12 - x_3) - disti0p2)/rrough: c_6 := distag - rsumag: c_7 := distgi - rsumgi: c_8 := distia - rsumia: c_9 := (-1)*(x_4 + x_1/c10): c_10 := x_5 - x_2/c10: c_11 := (-1)*(x_6 + x_3/c10): c_12 := (-1)*(x_7 + x_1/c10): c_13 := x_9 - x_3/c10: c_14 := x_1 - x_2/c2: c_15 := x_1 - x_3/c2: c_16 := x_2 - x_1/c2: c_17 := x_2 - x_3/c2: c_18 := x_3 - x_1/c2: c_19 := x_3 - x_2/c2: myminfun := mf: myabsdevnod0_0 := myownabs(myminfun - 0.003748448926892757): myreldevnod0_0 := myownabs(myminfun/0.003748448926892757 - 1): myabsdevnod0_1 := myownabs(x_1 - 0.006880225167214264): myreldevnod0_1 := myownabs(x_1/0.006880225167214264 - 1): myabsdevnod0_2 := myownabs(x_2 - 0.007557877754559033): myreldevnod0_2 := myownabs(x_2/0.007557877754559033 - 1): myabsdevnod0_3 := myownabs(x_3 - 0.007025116248247118): myreldevnod0_3 := myownabs(x_3/0.007025116248247118 - 1): myabsdevnod0_4 := myownabs(x_4 + 0.008109269192985781): myreldevnod0_4 := myownabs(x_4/0.008109269192985781 + 1): myabsdevnod0_5 := myownabs(x_5 - 0.003933807693760132): myreldevnod0_5 := myownabs(x_5/0.003933807693760132 - 1): myabsdevnod0_6 := myownabs(x_6 + 0.009411021460678573): myreldevnod0_6 := myownabs(x_6/0.009411021460678573 + 1): myabsdevnod0_7 := myownabs(x_7 + 0.008719650850600085): myreldevnod0_7 := myownabs(x_7/0.008719650850600085 + 1): myabsdevnod0_8 := myownabs(x_8 + 0.0007557877754559033): myreldevnod0_8 := myownabs(x_8/0.0007557877754559033 + 1): myabsdevnod0_9 := myownabs(x_9 - 0.005124624533619279): myreldevnod0_9 := myownabs(x_9/0.005124624533619279 - 1): myabsdevnod0_10 := myownabs(x_10 - 0.007644708288544523): myreldevnod0_10 := myownabs(x_10/0.007644708288544523 - 1): myabsdevnod0_11 := myownabs(x_11 - 0.007644708288544523): myreldevnod0_11 := myownabs(x_11/0.007644708288544523 - 1): myabsdevnod0_12 := myownabs(x_12 - 0.007644708288544523): myreldevnod0_12 := myownabs(x_12/0.007644708288544523 - 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)): myabsdevnod1_10 := (1/2)*(myownabs(myabsdevnod0_10 - myabsdevnod0_11) + (myabsdevnod0_10 + myabsdevnod0_11)): myreldevnod1_10 := (1/2)*(myownabs(myreldevnod0_10 - myreldevnod0_11) + (myreldevnod0_10 + myreldevnod0_11)): myabsdevnod1_12 := myabsdevnod0_12: myreldevnod1_12 := myreldevnod0_12: 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 := (1/2)*(myownabs(myabsdevnod1_8 - myabsdevnod1_10) + (myabsdevnod1_8 + myabsdevnod1_10)): myreldevnod2_8 := (1/2)*(myownabs(myreldevnod1_8 - myreldevnod1_10) + (myreldevnod1_8 + myreldevnod1_10)): myabsdevnod2_12 := myabsdevnod1_12: myreldevnod2_12 := myreldevnod1_12: 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 := (1/2)*(myownabs(myabsdevnod2_8 - myabsdevnod2_12) + (myabsdevnod2_8 + myabsdevnod2_12)): myreldevnod3_8 := (1/2)*(myownabs(myreldevnod2_8 - myreldevnod2_12) + (myreldevnod2_8 + myreldevnod2_12)): 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', c_1): fmcEquality('ce_2', c_2): fmcInequality('ci_1', c_3): fmcInequality('ci_2', c_4): fmcInequality('ci_3', c_5): fmcInequality('ci_4', c_6): fmcInequality('ci_5', c_7): fmcInequality('ci_6', c_8): fmcInequality('ci_7', c_9): fmcInequality('ci_8', c_10): fmcInequality('ci_9', c_11): fmcInequality('ci_10', c_12): fmcInequality('ci_11', c_13): fmcInequality('ci_12', c_14): fmcInequality('ci_13', c_15): fmcInequality('ci_14', c_16): fmcInequality('ci_15', c_17): fmcInequality('ci_16', c_18): fmcInequality('ci_17', c_19): 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('x_10', x_10): fmcEscortFloat('x_11', x_11): fmcEscortFloat('x_12', x_12): fmcEscortFloat('myminfun', myminfun): fmcEscortFloat('zmyabsdevmax', zmyabsdevmax): fmcEscortFloat('zmyreldevmax', zmyreldevmax): fmcControlMinimum(1, 0): # End Model