## ams_version=1.0 Model Main_heatexch_gen2 { Variable b1 { Range: binary; } Variable b2 { Range: binary; } Variable b3 { Range: binary; } Variable b4 { Range: binary; } Variable b5 { Range: binary; } Variable b6 { Range: binary; } Variable b7 { Range: binary; } Variable b8 { Range: binary; } Variable b9 { Range: binary; } Variable b10 { Range: binary; } Variable b11 { Range: binary; } Variable b12 { Range: binary; } Variable b13 { Range: binary; } Variable b14 { Range: binary; } Variable b15 { Range: binary; } Variable b16 { Range: binary; } Variable x17; Variable x18; Variable x19; Variable x20; Variable x21; Variable x22; Variable x23; Variable x24; Variable x25; Variable x26; Variable x27; Variable x28; Variable x29; Variable x30; Variable x31; Variable x32; Variable x33; Variable x34; Variable x35 { Range: nonnegative; } Variable x36 { Range: nonnegative; } Variable x37 { Range: nonnegative; } Variable x38 { Range: nonnegative; } Variable x39 { Range: nonnegative; } Variable x40 { Range: nonnegative; } Variable x41 { Range: nonnegative; } Variable x42 { Range: nonnegative; } Variable x43 { Range: nonnegative; } Variable x44 { Range: nonnegative; } Variable x45 { Range: nonnegative; } Variable x46 { Range: nonnegative; } Variable x47 { Range: nonnegative; } Variable x48 { Range: nonnegative; } Variable x49 { Range: nonnegative; } Variable x50 { Range: nonnegative; } Variable x51; Variable x52; Variable x53; Variable x54; Variable x55; Variable x56; Variable x57; Variable x58; Variable x59; Variable x60; Variable x61; Variable x62; Variable x63; Variable x64; Variable x65; Variable x66; Variable x67; Variable x68; Variable x69; Variable x70; Variable x71; Variable x72 { Range: nonnegative; } Variable x73 { Range: nonnegative; } Variable x74 { Range: nonnegative; } Variable x75 { Range: nonnegative; } Variable x76 { Range: nonnegative; } Variable x77 { Range: nonnegative; } Variable x78 { Range: nonnegative; } Variable x79 { Range: nonnegative; } Variable x80 { Range: nonnegative; } Variable x81 { Range: nonnegative; } Variable x82 { Range: nonnegative; } Variable x83 { Range: nonnegative; } Variable x84 { Range: nonnegative; } Variable x85 { Range: nonnegative; } Variable x86 { Range: nonnegative; } Variable x87 { Range: nonnegative; } Variable x88 { Range: nonnegative; } Variable x89 { Range: nonnegative; } Variable x90 { Range: nonnegative; } Variable x91 { Range: nonnegative; } Variable x92; Variable x93; Variable x94; Variable x95; Variable x96; Variable x97; Variable x98; Variable x99; Variable x100; Variable x101; Variable x102; Variable x103; Variable x104; Variable x105; Variable x106; Variable x107; Variable x108; Variable x109; Variable x110; Variable x111; Variable x112 { Range: nonnegative; } Variable x113 { Range: nonnegative; } Variable x114 { Range: nonnegative; } Variable x115 { Range: nonnegative; } Variable x116 { Range: nonnegative; } Variable x117 { Range: nonnegative; } Variable x118 { Range: nonnegative; } Variable x119 { Range: nonnegative; } Variable x120 { Range: nonnegative; } Variable x121 { Range: nonnegative; } Variable x122 { Range: nonnegative; } Variable x123 { Range: nonnegative; } Variable x124 { Range: nonnegative; } Variable x125 { Range: nonnegative; } Variable x126 { Range: nonnegative; } Variable x127 { Range: nonnegative; } Variable x128 { Range: nonnegative; } Variable x129 { Range: nonnegative; } Variable x130 { Range: nonnegative; } Variable x131 { Range: nonnegative; } Variable x132 { Range: nonnegative; } Variable x133 { Range: nonnegative; } Variable x134 { Range: nonnegative; } Variable x135 { Range: nonnegative; } Variable x136 { Range: nonnegative; } Variable x137 { Range: nonnegative; } Variable x138 { Range: nonnegative; } Variable x139 { Range: nonnegative; } Variable x140 { Range: nonnegative; } Variable x141 { Range: nonnegative; } Variable x142 { Range: nonnegative; } Variable x143 { Range: nonnegative; } Variable x144 { Range: nonnegative; } Variable x145 { Range: nonnegative; } Variable x146 { Range: nonnegative; } Variable x147 { Range: nonnegative; } Variable x148 { Range: nonnegative; } Variable objvar; Constraint e1 { Definition: 6*x17 - 6*x18 - x35 = 0; } Constraint e2 { Definition: 6*x18 - 6*x19 - x36 = 0; } Constraint e3 { Definition: 4*x20 - 4*x21 - x37 = 0; } Constraint e4 { Definition: 4*x21 - 4*x22 - x38 = 0; } Constraint e5 { Definition: 6*x23 - 6*x24 - x39 = 0; } Constraint e6 { Definition: 6*x24 - 6*x25 - x40 = 0; } Constraint e7 { Definition: 20*x26 - 20*x27 - x41 = 0; } Constraint e8 { Definition: 20*x27 - 20*x28 - x42 = 0; } Constraint e9 { Definition: 12*x29 - 12*x30 - x43 = 0; } Constraint e10 { Definition: 12*x30 - 12*x31 - x44 = 0; } Constraint e11 { Definition: 18*x32 - 18*x33 - x35 - x37 - x39 - x41 - x43 = 0; } Constraint e12 { Definition: 18*x33 - 18*x34 - x36 - x38 - x40 - x42 - x44 = 0; } Constraint e13 { Definition: 6*x19 - x45 = 1920; } Constraint e14 { Definition: 4*x22 - x46 = 1520; } Constraint e15 { Definition: 6*x25 - x47 = 2160; } Constraint e16 { Definition: 20*x28 - x48 = 7200; } Constraint e17 { Definition: 12*x31 - x49 = 3840; } Constraint e18 { Definition: - x35 - x36 - x45 = -1080; } Constraint e19 { Definition: - x37 - x38 - x46 = -400; } Constraint e20 { Definition: - x39 - x40 - x47 = -600; } Constraint e21 { Definition: - x41 - x42 - x48 = -400; } Constraint e22 { Definition: - x43 - x44 - x49 = -720; } Constraint e23 { Definition: - 18*x32 - x50 = -11880; } Constraint e24 { Definition: { - x35 - x36 - x37 - x38 - x39 - x40 - x41 - x42 - x43 - x44 - x50 = -6660 } } Constraint e25 { Definition: x17 - x18 >= 0; } Constraint e26 { Definition: x18 - x19 >= 0; } Constraint e27 { Definition: x20 - x21 >= 0; } Constraint e28 { Definition: x21 - x22 >= 0; } Constraint e29 { Definition: x23 - x24 >= 0; } Constraint e30 { Definition: x24 - x25 >= 0; } Constraint e31 { Definition: x26 - x27 >= 0; } Constraint e32 { Definition: x27 - x28 >= 0; } Constraint e33 { Definition: x29 - x30 >= 0; } Constraint e34 { Definition: x30 - x31 >= 0; } Constraint e35 { Definition: x32 - x33 >= 0; } Constraint e36 { Definition: x33 - x34 >= 0; } Constraint e37 { Definition: x19 >= 320; } Constraint e38 { Definition: x22 >= 380; } Constraint e39 { Definition: x25 >= 360; } Constraint e40 { Definition: x28 >= 360; } Constraint e41 { Definition: x31 >= 320; } Constraint e42 { Definition: - x32 >= -660; } Constraint e43 { Definition: - x17 = -500; } Constraint e44 { Definition: - x20 = -480; } Constraint e45 { Definition: - x23 = -460; } Constraint e46 { Definition: - x26 = -380; } Constraint e47 { Definition: - x29 = -380; } Constraint e48 { Definition: - x34 = -290; } Constraint e49 { Definition: - x72 = -6; } Constraint e50 { Definition: - x73 = -6; } Constraint e51 { Definition: - x74 = -4; } Constraint e52 { Definition: - x75 = -4; } Constraint e53 { Definition: - x76 = -6; } Constraint e54 { Definition: - x77 = -6; } Constraint e55 { Definition: - x78 = -20; } Constraint e56 { Definition: - x79 = -20; } Constraint e57 { Definition: - x80 = -12; } Constraint e58 { Definition: - x81 = -12; } Constraint e59 { Definition: - x82 - x84 - x86 - x88 - x90 = -18; } Constraint e60 { Definition: - x83 - x85 - x87 - x89 - x91 = -18; } Constraint e61 { Definition: -x72*(x17 - x92) + x35 = 0; } Constraint e62 { Definition: -x73*(x18 - x93) + x36 = 0; } Constraint e63 { Definition: -x74*(x20 - x94) + x37 = 0; } Constraint e64 { Definition: -x75*(x21 - x95) + x38 = 0; } Constraint e65 { Definition: -x76*(x23 - x96) + x39 = 0; } Constraint e66 { Definition: -x77*(x24 - x97) + x40 = 0; } Constraint e67 { Definition: -x78*(x26 - x98) + x41 = 0; } Constraint e68 { Definition: -x79*(x27 - x99) + x42 = 0; } Constraint e69 { Definition: -x80*(x29 - x100) + x43 = 0; } Constraint e70 { Definition: -x81*(x30 - x101) + x44 = 0; } Constraint e71 { Definition: -x82*(x102 - x33) + x35 = 0; } Constraint e72 { Definition: -x83*(x103 - x34) + x36 = 0; } Constraint e73 { Definition: -x84*(x104 - x33) + x37 = 0; } Constraint e74 { Definition: -x85*(x105 - x34) + x38 = 0; } Constraint e75 { Definition: -x86*(x106 - x33) + x39 = 0; } Constraint e76 { Definition: -x87*(x107 - x34) + x40 = 0; } Constraint e77 { Definition: -x88*(x108 - x33) + x41 = 0; } Constraint e78 { Definition: -x89*(x109 - x34) + x42 = 0; } Constraint e79 { Definition: -x90*(x110 - x33) + x43 = 0; } Constraint e80 { Definition: -x91*(x111 - x34) + x44 = 0; } Constraint e81 { Definition: -x72*x92 + 6*x18 = 0; } Constraint e82 { Definition: -x73*x93 + 6*x19 = 0; } Constraint e83 { Definition: -x74*x94 + 4*x21 = 0; } Constraint e84 { Definition: -x75*x95 + 4*x22 = 0; } Constraint e85 { Definition: -x76*x96 + 6*x24 = 0; } Constraint e86 { Definition: -x77*x97 + 6*x25 = 0; } Constraint e87 { Definition: -x78*x98 + 20*x27 = 0; } Constraint e88 { Definition: -x79*x99 + 20*x28 = 0; } Constraint e89 { Definition: -x80*x100 + 12*x30 = 0; } Constraint e90 { Definition: -x81*x101 + 12*x31 = 0; } Constraint e91 { Definition: -(x82*x102 + x84*x104 + x86*x106 + x88*x108 + x90*x110) + 18*x32 = 0; } Constraint e92 { Definition: -(x83*x103 + x85*x105 + x87*x107 + x89*x109 + x91*x111) + 18*x33 = 0; } Constraint e93 { Definition: -(x51 - x52)/log(x51/(1e-6 + x52)) + x112 = 0; } Constraint e94 { Definition: -(x52 - x53)/log(x52/(1e-6 + x53)) + x113 = 0; } Constraint e95 { Definition: -(x54 - x55)/log(x54/(1e-6 + x55)) + x114 = 0; } Constraint e96 { Definition: -(x55 - x56)/log(x55/(1e-6 + x56)) + x115 = 0; } Constraint e97 { Definition: -(x57 - x58)/log(x57/(1e-6 + x58)) + x116 = 0; } Constraint e98 { Definition: -(x58 - x59)/log(x58/(1e-6 + x59)) + x117 = 0; } Constraint e99 { Definition: -(x60 - x61)/log(x60/(1e-6 + x61)) + x118 = 0; } Constraint e100 { Definition: -(x61 - x62)/log(x61/(1e-6 + x62)) + x119 = 0; } Constraint e101 { Definition: -(x63 - x64)/log(x63/(1e-6 + x64)) + x120 = 0; } Constraint e102 { Definition: -(x64 - x65)/log(x64/(1e-6 + x65)) + x121 = 0; } Constraint e103 { Definition: -x35/(0.01 + x112) + x128 = 0; } Constraint e104 { Definition: -x36/(0.01 + x113) + x129 = 0; } Constraint e105 { Definition: -x37/(0.01 + x114) + x131 = 0; } Constraint e106 { Definition: -x38/(0.01 + x115) + x132 = 0; } Constraint e107 { Definition: -x39/(0.01 + x116) + x134 = 0; } Constraint e108 { Definition: -x40/(0.01 + x117) + x135 = 0; } Constraint e109 { Definition: -x41/(0.01 + x118) + x137 = 0; } Constraint e110 { Definition: -x42/(0.01 + x119) + x138 = 0; } Constraint e111 { Definition: -x43/(0.01 + x120) + x140 = 0; } Constraint e112 { Definition: -x44/(0.01 + x121) + x141 = 0; } Constraint e113 { Definition: -(-20 + x66)/log(0.0499999975000001*x66) + x122 = 0; } Constraint e114 { Definition: -(-80 + x67)/log(0.01249999984375*x67) + x123 = 0; } Constraint e115 { Definition: -(-60 + x68)/log(0.0166666663888889*x68) + x124 = 0; } Constraint e116 { Definition: -(-60 + x69)/log(0.0166666663888889*x69) + x125 = 0; } Constraint e117 { Definition: -(-20 + x70)/log(0.0499999975000001*x70) + x126 = 0; } Constraint e118 { Definition: -(-40 + x71)/log(0.024999999375*x71) + x127 = 0; } Constraint e119 { Definition: -x45/(0.01 + x122) + x143 = 0; } Constraint e120 { Definition: -x46/(0.01 + x123) + x144 = 0; } Constraint e121 { Definition: -x47/(0.01 + x124) + x145 = 0; } Constraint e122 { Definition: -x48/(0.01 + x125) + x146 = 0; } Constraint e123 { Definition: -x49/(0.01 + x126) + x147 = 0; } Constraint e124 { Definition: -x50/(0.01 + x127) + x148 = 0; } Constraint e125 { Definition: - 1080*b1 + x35 <= 0; } Constraint e126 { Definition: - 1080*b2 + x36 <= 0; } Constraint e127 { Definition: - 400*b3 + x37 <= 0; } Constraint e128 { Definition: - 400*b4 + x38 <= 0; } Constraint e129 { Definition: - 600*b5 + x39 <= 0; } Constraint e130 { Definition: - 600*b6 + x40 <= 0; } Constraint e131 { Definition: - 400*b7 + x41 <= 0; } Constraint e132 { Definition: - 400*b8 + x42 <= 0; } Constraint e133 { Definition: - 720*b9 + x43 <= 0; } Constraint e134 { Definition: - 720*b10 + x44 <= 0; } Constraint e135 { Definition: - 6660*b16 + x50 <= 0; } Constraint e136 { Definition: - 1080*b11 + x45 <= 0; } Constraint e137 { Definition: - 400*b12 + x46 <= 0; } Constraint e138 { Definition: - 600*b13 + x47 <= 0; } Constraint e139 { Definition: - 400*b14 + x48 <= 0; } Constraint e140 { Definition: - 720*b15 + x49 <= 0; } Constraint e141 { Definition: 340*b1 - x17 + x32 + x51 <= 340; } Constraint e142 { Definition: 340*b2 - x18 + x33 + x52 <= 340; } Constraint e143 { Definition: 280*b3 - x20 + x32 + x54 <= 280; } Constraint e144 { Definition: 280*b4 - x21 + x33 + x55 <= 280; } Constraint e145 { Definition: 300*b5 - x23 + x32 + x57 <= 300; } Constraint e146 { Definition: 300*b6 - x24 + x33 + x58 <= 300; } Constraint e147 { Definition: 300*b7 - x26 + x32 + x60 <= 300; } Constraint e148 { Definition: 300*b8 - x27 + x33 + x61 <= 300; } Constraint e149 { Definition: 340*b9 - x29 + x32 + x63 <= 340; } Constraint e150 { Definition: 340*b10 - x30 + x33 + x64 <= 340; } Constraint e151 { Definition: 340*b1 - x18 + x33 + x52 <= 340; } Constraint e152 { Definition: 340*b2 - x19 + x34 + x53 <= 340; } Constraint e153 { Definition: 280*b3 - x21 + x33 + x55 <= 280; } Constraint e154 { Definition: 280*b4 - x22 + x34 + x56 <= 280; } Constraint e155 { Definition: 300*b5 - x24 + x33 + x58 <= 300; } Constraint e156 { Definition: 300*b6 - x25 + x34 + x59 <= 300; } Constraint e157 { Definition: 300*b7 - x27 + x33 + x61 <= 300; } Constraint e158 { Definition: 300*b8 - x28 + x34 + x62 <= 300; } Constraint e159 { Definition: 340*b9 - x30 + x33 + x64 <= 340; } Constraint e160 { Definition: 340*b10 - x31 + x34 + x65 <= 340; } Constraint e161 { Definition: - x19 + x66 <= -320; } Constraint e162 { Definition: - x22 + x67 <= -320; } Constraint e163 { Definition: - x25 + x68 <= -320; } Constraint e164 { Definition: - x28 + x69 <= -320; } Constraint e165 { Definition: - x31 + x70 <= -320; } Constraint e166 { Definition: x32 + x71 <= 700; } Constraint e167 { Definition: { -(1200*(0.01 + x128)**0.6 + 1200*(0.01 + x129)**0.6 + 1200*(0.01 + x130) **0.6 + 1200*(0.01 + x131)**0.6 + 1200*(0.01 + x132)**0.6 + 1200*(0.01 + x133)**0.6 + 1200*(0.01 + x134)**0.6 + 1200*(0.01 + x135)**0.6 + 1200 *(0.01 + x136)**0.6 + 1200*(0.01 + x137)**0.6 + 1200*(0.01 + x138)**0.6 + 1200*(0.01 + x139)**0.6 + 1200*(0.01 + x140)**0.6 + 1200*(0.01 + x141 )**0.6 + 1200*(0.01 + x142)**0.6 + 1200*(0.01 + x143)**0.6 + 1200*(0.01 + x144)**0.6 + 1200*(0.01 + x145)**0.6 + 1200*(0.01 + x146)**0.6 + 1200 *(0.01 + x147)**0.6 + 1200*(0.01 + x148)**0.6) - 5500*b1 - 5500*b2 - 5500*b3 - 5500*b4 - 5500*b5 - 5500*b6 - 5500*b7 - 5500*b8 - 5500*b9 - 5500*b10 - 5500*b11 - 5500*b12 - 5500*b13 - 5500*b14 - 5500*b15 - 5500*b16 - 10*x45 - 10*x46 - 10*x47 - 10*x48 - 10*x49 - 140*x50 + objvar = 0 } } Procedure MainInitialization { Body: { x17.lower := 320; x17.upper := 500; x18.lower := 320; x18.upper := 500; x19.lower := 320; x19.upper := 500; x20.lower := 380; x20.upper := 480; x21.lower := 380; x21.upper := 480; x22.lower := 380; x22.upper := 480; x23.lower := 360; x23.upper := 460; x24.lower := 360; x24.upper := 460; x25.lower := 360; x25.upper := 460; x26.lower := 360; x26.upper := 380; x27.lower := 360; x27.upper := 380; x28.lower := 360; x28.upper := 380; x29.lower := 320; x29.upper := 380; x30.lower := 320; x30.upper := 380; x31.lower := 320; x31.upper := 380; x32.lower := 290; x32.upper := 660; x33.lower := 290; x33.upper := 660; x34.lower := 290; x34.upper := 660; x51.lower := 10; x52.lower := 10; x53.lower := 10; x54.lower := 10; x55.lower := 10; x56.lower := 10; x57.lower := 10; x58.lower := 10; x59.lower := 10; x60.lower := 10; x61.lower := 10; x62.lower := 10; x63.lower := 10; x64.lower := 10; x65.lower := 10; x66.lower := 10; x67.lower := 10; x68.lower := 10; x69.lower := 10; x70.lower := 10; x71.lower := 10; x72.upper := 6; x73.upper := 6; x74.upper := 4; x75.upper := 4; x76.upper := 6; x77.upper := 6; x78.upper := 20; x79.upper := 20; x80.upper := 12; x81.upper := 12; x82.upper := 18; x83.upper := 18; x84.upper := 18; x85.upper := 18; x86.upper := 18; x87.upper := 18; x88.upper := 18; x89.upper := 18; x90.upper := 18; x91.upper := 18; x92.lower := 320; x92.upper := 500; x93.lower := 320; x93.upper := 500; x94.lower := 380; x94.upper := 480; x95.lower := 380; x95.upper := 480; x96.lower := 360; x96.upper := 460; x97.lower := 360; x97.upper := 460; x98.lower := 360; x98.upper := 380; x99.lower := 360; x99.upper := 380; x100.lower := 320; x100.upper := 380; x101.lower := 320; x101.upper := 380; x102.lower := 290; x102.upper := 660; x103.lower := 290; x103.upper := 660; x104.lower := 290; x104.upper := 660; x105.lower := 290; x105.upper := 660; x106.lower := 290; x106.upper := 660; x107.lower := 290; x107.upper := 660; x108.lower := 290; x108.upper := 660; x109.lower := 290; x109.upper := 660; x110.lower := 290; x110.upper := 660; x111.lower := 290; x111.upper := 660; x17.l := 500; x18.l := 500; x19.l := 500; x20.l := 480; x21.l := 480; x22.l := 480; x23.l := 460; x24.l := 460; x25.l := 460; x26.l := 380; x27.l := 380; x28.l := 380; x29.l := 380; x30.l := 380; x31.l := 380; x35.l := 1080; x36.l := 1080; x37.l := 400; x38.l := 400; x39.l := 600; x40.l := 600; x41.l := 400; x42.l := 400; x43.l := 720; x44.l := 720; x51.l := 210; x52.l := 210; x53.l := 210; x54.l := 190; x55.l := 190; x56.l := 190; x57.l := 170; x58.l := 170; x59.l := 170; x60.l := 90; x61.l := 90; x62.l := 90; x63.l := 90; x64.l := 90; x65.l := 90; x66.l := 180; x67.l := 160; x68.l := 140; x69.l := 60; x70.l := 60; x71.l := 410; x72.l := 6; x73.l := 6; x74.l := 4; x75.l := 4; x76.l := 6; x77.l := 6; x78.l := 20; x79.l := 20; x80.l := 12; x81.l := 12; x82.l := 18; x83.l := 18; x84.l := 18; x85.l := 18; x86.l := 18; x87.l := 18; x88.l := 18; x89.l := 18; x90.l := 18; x91.l := 18; x92.l := 500; x93.l := 500; x94.l := 480; x95.l := 480; x96.l := 460; x97.l := 460; x98.l := 380; x99.l := 380; x100.l := 380; x101.l := 380; } } MathematicalProgram heatexch_gen2 { Objective: objvar; Direction: minimize; Constraints: AllConstraints; Variables: AllVariables; Type: MINLP; } ElementParameter myGMP { Range: AllGeneratedMathematicalPrograms; } Procedure MainExecution { Body: { solve heatexch_gen2; } } Procedure MainTermination { Body: { return 1; } } }