ampl/tp109v1.mod


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


# Model tp109v1
# Source version 1
# Simple APM canonicalizer version 1.3
# AMPL backend version 1.1
param c22938a := -22.938;
param c22938b := 22.938;
param c22938 := c22938a;
param a := 50.176;
param arg := 0.25;
param b := sin(arg);
param c := cos(arg);
var x_1 >= 0;
let x_1 := 0;
var x_2 >= 0;
let x_2 := 0;
var x_3 >= -0.55, <= 0.55;
let x_3 := 0;
var x_4 >= -0.55, <= 0.55;
let x_4 := 0;
var x_5 >= 196, <= 252;
let x_5 := 0;
var x_6 >= 196, <= 252;
let x_6 := 0;
var x_7 >= 196, <= 252;
let x_7 := 0;
var x_8 >= -400, <= 800;
let x_8 := 0;
var x_9 >= -400, <= 800;
let x_9 := 0;
var cf_1 = x_4 - x_3 + .55;
var cf_2 = x_3 - x_4 + .55;
var cf_3 = 2250000 - x_1^2 - x_8^2;
var cf_4 = 2250000 - x_2^2 - x_9^2;
var cf_5 = x_5*x_6*sin((-1)*x_3 - 1/4) + x_5*x_7*sin((-1)*x_4 - 1/4) + 2*b*x_5^2 - a*x_1 + 400*a;
var cf_6 = x_5*x_6*sin(x_3 - 1/4) + x_6*x_7*sin(x_3 - x_4 - 1/4) + 2*b*x_6^2 - a*x_2 + 400*a;
var cf_7 = x_5*x_7*sin(x_4 - 1/4) + x_6*x_7*sin(x_4 - x_3 - 1/4) + 2*b*x_7^2 + 881.779*a;
var cf_8 = a*x_8 + x_5*x_6*cos((-1)*x_3 - 1/4) + x_5*x_7*cos((-1)*x_4 - 1/4) - 200*a - 2*c*x_5^2 +
0.7533e-3*a*x_5^2;
var cf_9 = a*x_9 + x_5*x_6*cos(x_3 - 1/4) + x_6*x_7*cos(x_3 - x_4 - 1/4) - 2*c*x_6^2 + 0.7533e-3*a*x_6^2 -
200*a;
var cf_10 = x_5*x_7*cos(x_4 - 1/4) + x_6*x_7*cos(x_4 - x_3 - 1/4) - 2*c*x_7^2 + c22938*a + 0.7533e-3*a*x_7^2;
var mf = 3*x_1 + 1.0e-6*x_1^3 + 2*x_2 + 0.522074e-6*x_2^3;
var myminfun = mf;
var myabsdevnod0_0 = abs(myminfun - 5362.069181109596);
var myreldevnod0_0 = abs(myminfun/5362.069181109596 - 1);
var myabsdevnod0_1 = abs(x_1 - 675.0253392597418);
var myreldevnod0_1 = abs(x_1/675.0253392597418 - 1);
var myabsdevnod0_2 = abs(x_2 - 1134.021089714841);
var myreldevnod0_2 = abs(x_2/1134.021089714841 - 1);
var myabsdevnod0_3 = abs(x_3 - 0.1334850509182756);
var myreldevnod0_3 = abs(x_3/0.1334850509182756 - 1);
var myabsdevnod0_4 = abs(x_4 + 0.37119026264778);
var myreldevnod0_4 = abs(x_4/0.37119026264778 + 1);
var myabsdevnod0_5 = abs(x_5 - 252);
var myreldevnod0_5 = abs(x_5/252 - 1);
var myabsdevnod0_6 = abs(x_6 - 252);
var myreldevnod0_6 = abs(x_6/252 - 1);
var myabsdevnod0_7 = abs(x_7 - 201.4658577338128);
var myreldevnod0_7 = abs(x_7/201.4658577338128 - 1);
var myabsdevnod0_8 = abs(x_8 - 426.6190056621182);
var myreldevnod0_8 = abs(x_8/426.6190056621182 - 1);
var myabsdevnod0_9 = abs(x_9 - 368.4881990875219);
var myreldevnod0_9 = abs(x_9/368.4881990875219 - 1);
var myabsdevnod1_0 = (1/2)*(abs(myabsdevnod0_0 - myabsdevnod0_1) + (myabsdevnod0_0 + myabsdevnod0_1));
var myreldevnod1_0 = (1/2)*(abs(myreldevnod0_0 - myreldevnod0_1) + (myreldevnod0_0 + myreldevnod0_1));
var myabsdevnod1_2 = (1/2)*(abs(myabsdevnod0_2 - myabsdevnod0_3) + (myabsdevnod0_2 + myabsdevnod0_3));
var myreldevnod1_2 = (1/2)*(abs(myreldevnod0_2 - myreldevnod0_3) + (myreldevnod0_2 + myreldevnod0_3));
var myabsdevnod1_4 = (1/2)*(abs(myabsdevnod0_4 - myabsdevnod0_5) + (myabsdevnod0_4 + myabsdevnod0_5));
var myreldevnod1_4 = (1/2)*(abs(myreldevnod0_4 - myreldevnod0_5) + (myreldevnod0_4 + myreldevnod0_5));
var myabsdevnod1_6 = (1/2)*(abs(myabsdevnod0_6 - myabsdevnod0_7) + (myabsdevnod0_6 + myabsdevnod0_7));
var myreldevnod1_6 = (1/2)*(abs(myreldevnod0_6 - myreldevnod0_7) + (myreldevnod0_6 + myreldevnod0_7));
var myabsdevnod1_8 = (1/2)*(abs(myabsdevnod0_8 - myabsdevnod0_9) + (myabsdevnod0_8 + myabsdevnod0_9));
var myreldevnod1_8 = (1/2)*(abs(myreldevnod0_8 - myreldevnod0_9) + (myreldevnod0_8 + myreldevnod0_9));
var myabsdevnod2_0 = (1/2)*(abs(myabsdevnod1_0 - myabsdevnod1_2) + (myabsdevnod1_0 + myabsdevnod1_2));
var myreldevnod2_0 = (1/2)*(abs(myreldevnod1_0 - myreldevnod1_2) + (myreldevnod1_0 + myreldevnod1_2));
var myabsdevnod2_4 = (1/2)*(abs(myabsdevnod1_4 - myabsdevnod1_6) + (myabsdevnod1_4 + myabsdevnod1_6));
var myreldevnod2_4 = (1/2)*(abs(myreldevnod1_4 - myreldevnod1_6) + (myreldevnod1_4 + myreldevnod1_6));
var myabsdevnod2_8 = myabsdevnod1_8;
var myreldevnod2_8 = myreldevnod1_8;
var myabsdevnod3_0 = (1/2)*(abs(myabsdevnod2_0 - myabsdevnod2_4) + (myabsdevnod2_0 + myabsdevnod2_4));
var myreldevnod3_0 = (1/2)*(abs(myreldevnod2_0 - myreldevnod2_4) + (myreldevnod2_0 + myreldevnod2_4));
var myabsdevnod3_8 = myabsdevnod2_8;
var myreldevnod3_8 = myreldevnod2_8;
var myabsdevnod4_0 = (1/2)*(abs(myabsdevnod3_0 - myabsdevnod3_8) + (myabsdevnod3_0 + myabsdevnod3_8));
var myreldevnod4_0 = (1/2)*(abs(myreldevnod3_0 - myreldevnod3_8) + (myreldevnod3_0 + myreldevnod3_8));
var zmyabsdevmax = myabsdevnod4_0;
var zmyreldevmax = myreldevnod4_0;
minimize obj: myminfun;
subject to ce_1: cf_5 = 0;
subject to ce_2: cf_6 = 0;
subject to ce_3: cf_7 = 0;
subject to ce_4: cf_8 = 0;
subject to ce_5: cf_9 = 0;
subject to ce_6: cf_10 = 0;
subject to ci_1: cf_1 >= 0;
subject to ci_2: cf_2 >= 0;
subject to ci_3: cf_3 >= 0;
subject to ci_4: cf_4 >= 0;
solve;
display x_1;
display x_2;
display x_3;
display x_4;
display x_5;
display x_6;
display x_7;
display x_8;
display x_9;
display myminfun;
display zmyabsdevmax;
display zmyreldevmax;
# End Model

Stephan K.H. Seidl