If Cut/Copy and Paste fails, then click here for download.
fmcTitle("tp099"): # 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: a_1 := 0: a_2 := 50: a_3 := 50: a_4 := 75: a_5 := 75: a_6 := 75: a_7 := 100: a_8 := 100: b := 32: t_1 := 0: t_2 := 25: t_3 := 50: t_4 := 100: t_5 := 150: t_6 := 200: t_7 := 290: t_8 := 380: s_1 := 0: q_1 := 0: r_1 := 0: fmcInitialValue(x_1, 0.5): fmcStrongLowerBound(x_1, 0): fmcStrongUpperBound(x_1, 1.58): fmcInitialValue(x_2, 0.5): fmcStrongLowerBound(x_2, 0): fmcStrongUpperBound(x_2, 1.58): fmcInitialValue(x_3, 0.5): fmcStrongLowerBound(x_3, 0): fmcStrongUpperBound(x_3, 1.58): fmcInitialValue(x_4, 0.5): fmcStrongLowerBound(x_4, 0): fmcStrongUpperBound(x_4, 1.58): fmcInitialValue(x_5, 0.5): fmcStrongLowerBound(x_5, 0): fmcStrongUpperBound(x_5, 1.58): fmcInitialValue(x_6, 0.5): fmcStrongLowerBound(x_6, 0): fmcStrongUpperBound(x_6, 1.58): fmcInitialValue(x_7, 0.5): fmcStrongLowerBound(x_7, 0): fmcStrongUpperBound(x_7, 1.58): s_2 := s_1 + (t_2 - t_1)*(a_2*sin(x_1) - b): s_3 := s_2 + (t_3 - t_2)*(a_3*sin(x_2) - b): s_4 := s_3 + (t_4 - t_3)*(a_4*sin(x_3) - b): s_5 := s_4 + (t_5 - t_4)*(a_5*sin(x_4) - b): s_6 := s_5 + (t_6 - t_5)*(a_6*sin(x_5) - b): s_7 := s_6 + (t_7 - t_6)*(a_7*sin(x_6) - b): s_8 := s_7 + (t_8 - t_7)*(a_8*sin(x_7) - b): q_2 := q_1 + 0.5*(t_2 - t_1)^2*(a_2*sin(x_1) - b) + (t_2 - t_1)*s_1: q_3 := q_2 + 0.5*(t_3 - t_2)^2*(a_3*sin(x_2) - b) + (t_3 - t_2)*s_2: q_4 := q_3 + 0.5*(t_4 - t_3)^2*(a_4*sin(x_3) - b) + (t_4 - t_3)*s_3: q_5 := q_4 + 0.5*(t_5 - t_4)^2*(a_5*sin(x_4) - b) + (t_5 - t_4)*s_4: q_6 := q_5 + 0.5*(t_6 - t_5)^2*(a_6*sin(x_5) - b) + (t_6 - t_5)*s_5: q_7 := q_6 + 0.5*(t_7 - t_6)^2*(a_7*sin(x_6) - b) + (t_7 - t_6)*s_6: q_8 := q_7 + 0.5*(t_8 - t_7)^2*(a_8*sin(x_7) - b) + (t_8 - t_7)*s_7: c_1 := q_8 - 100000: c_2 := s_8 - 1000: r_2 := r_1 + a_2*(t_2 - t_1)*cos(x_1): r_3 := r_2 + a_3*(t_3 - t_2)*cos(x_2): r_4 := r_3 + a_4*(t_4 - t_3)*cos(x_3): r_5 := r_4 + a_5*(t_5 - t_4)*cos(x_4): r_6 := r_5 + a_6*(t_6 - t_5)*cos(x_5): r_7 := r_6 + a_7*(t_7 - t_6)*cos(x_6): r_8 := r_7 + a_8*(t_8 - t_7)*cos(x_7): mf := -r_8^2: myminfun := mf: myabsdevnod0_0 := myownabs(myminfun + 831079891.5101075): myreldevnod0_0 := myownabs(myminfun/831079891.5101075 + 1): myabsdevnod0_1 := myownabs(x_1 - 0.542467816212317): myreldevnod0_1 := myownabs(x_1/0.542467816212317 - 1): myabsdevnod0_2 := myownabs(x_2 - 0.5290214242019767): myreldevnod0_2 := myownabs(x_2/0.5290214242019767 - 1): myabsdevnod0_3 := myownabs(x_3 - 0.5084491553164001): myreldevnod0_3 := myownabs(x_3/0.5084491553164001 - 1): myabsdevnod0_4 := myownabs(x_4 - 0.4802688509618159): myreldevnod0_4 := myownabs(x_4/0.4802688509618159 - 1): myabsdevnod0_5 := myownabs(x_5 - 0.4512363497966467): myreldevnod0_5 := myownabs(x_5/0.4512363497966467 - 1): myabsdevnod0_6 := myownabs(x_6 - 0.4091830824209853): myreldevnod0_6 := myownabs(x_6/0.4091830824209853 - 1): myabsdevnod0_7 := myownabs(x_7 - 0.3527878917811228): myreldevnod0_7 := myownabs(x_7/0.3527878917811228 - 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): fmcEquality(ce_1, c_1): fmcEquality(ce_2, c_2): 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