Alkylation Process
{ Process.mpl }
{ GAMS Model Library, http://www.gams.com/modlib/libhtml/process.htm }
{ Alkylation Process Optimization, Non Linear, Process:- Size: 8 x 11, Rproc:- Size: 8 x 15 }
#define process
!#define rproc
Option
Modeltype=nonlinear
Parsertype=extended
TITLE
Process;
VARIABLE
Olefin INITIAL 1745;
Isor INITIAL 12000;
Acid INITIAL 110;
Alkylate INITIAL 3048;
Isom INITIAL 1974;
Strength INITIAL 0;
Octane INITIAL 0;
Ratio INITIAL 8;
Dilute INITIAL 3.6;
F4 INITIAL 145;
Profit INITIAL 872;
Rangey INITIAL 1;
Rangem INITIAL 1;
Ranged INITIAL 1;
Rangef INITIAL 1;
MODEL
MAX Profit;
SUBJECT TO
Makeup: Alkylate = Olefin + Isom - 0.22 * Alkylate;
Sdef: Acid = Alkylate * Dilute * Strength / (98 - Strength) / 1000;
Drat: Ratio = (Isor + Isom) / Olefin;
Dprofit: Profit = 0.063 * Alkylate * Octane - 5.04 * Olefin - 0.035 * Isor - 10 * Acid - 3.36 * Isom;
#ifdef process
Yield: Alkylate = Olefin * (1.12 + 0.13167 * Ratio - 0.00667 * sqr(Ratio));
Motor: Octane = 86.35 + 1.098 * Ratio - 0.038 * sqr(Ratio) - 0.325 * (89 - Strength);
Ddil: Dilute = 35.82 - 0.222 * F4;
Df4: F4 = -133 + 3 * Octane;
#endif
#ifdef rproc
Rngyield: Rangey * Alkylate = Olefin * (1.12 + 0.13167 * Ratio - 0.00667 * sqr(Ratio));
Rngmotor: Rangem * Octane = 86.35 + 1.098 * Ratio - 0.038 * sqr(Ratio) - 0.325 * (89 - Strength);
Rngddil: Ranged * Dilute = 35.82 - 0.222 * F4;
Rngdf4: Rangef * F4 = -133 + 3 * Octane;
#endif
BOUNDS
0.9 <= Rangey <= 1.1;
0.9 <= Rangem <= 1.1;
0.9 <= Ranged <= 1.1;
0.9 <= Rangef <= 1.1;
0.85 <= Strength <= 93;
90 <= Octane <= 95;
3 <= Ratio <= 12;
1.2 <= Dilute <= 4;
145 <= F4 <= 162;
10 <= Olefin <= 2000;
0 <= Isor <= 16000;
0 <= Acid <= 16000;
0 <= Alkylate <= 5000;
0 <= Isom <= 2000;
END
Back To Top
|
Maximal Home Page
|
List of Models |
Previous Page
|
Next Page