source: trunk/BioModel/Flowsheets/var1_2_teste.mso @ 1008

Last change on this file since 1008 was 1008, checked in by Argimiro Resende Secchi, 21 months ago

Adding BioModel? to the MSO library.

File size: 103.6 KB
Line 
1#*-------------------------------------------------------------------
2* Biorrefinaria Virtual
3*--------------------------------------------------------------------
4* Nome do arquivo: var1_2_pinch_evap_econ.mso
5* Projeto: producao de etanol 1G e 2G
6* Conteudo: Maxima producao de etanol. Soh queimando o
7*                       bagaco necessario para atender a demanda do processo
8* (baixa carga de solidos). Sem turbina de condensacao no CHP.
9*                       Etanol anidro do C12/C6/C5
10* Integracao energetica atraves da analise pinch
11* 5 evaporadores na etapa de concentracao do caldo
12* 3 evaporadores na etapa de concentracao da xylose
13*--------------------------------------------------------------------*#
14
15#*-------------------------------------------------------------------
16*
17* versao 2.3
18* Data:    11/2019
19* Atualizada por: Andreza A. Longati, Andrew Elias
20* Utiliza a versao 2.2 da biorrefinaria
21*
22*--------------------------------------------------------------------
23*Descricao: simulacao da producao de E1G e E2G
24*--------------------------------------------------------------------*
25
26*--------------------------------------------------------------------
27*Notas: Cada componente eh representado na simulacao por um Index number
28* Abaixo segue o Index number para cada componente
29-- fase fluida
30* 1 - agua
31* 2 - sacarose
32* 3 - glicose
33* 4 - xilose
34* 5 - etanol
35* 6 - CO2
36* 7 - CO
37* 8 - O2
38* 9 - N2
39* 10 - H2
40* 11 - CH4
41* 12 - amonia
42* 13 - lignina
43* 14 - xilana
44* 15 - acido acetico
45* 16 - furfural
46* 17 - hidroximetilfurfural (HMF)
47* 18 - glicerol
48* 19 - Solunkn (acucares desconhecidos)
49* 20 - MEG (monoetilenoglicol)
50* 21 - H2SO4
51* 22 - acido fosforico
52* 23 - impurezas
53* 24 - celobiose
54* 25 - hidroxido de amonia
55
56-- fase solida
57* 1(26) - celulose
58* 2(27) - xilana (hemicelulose)
59* 3(28) - lignina
60* 4(29) - cinzas
61* 5(30) - enzima
62* 6(31) - levedura
63* 7(32) - hidroxido de calcio
64* 8(33) - fosfato de calcio
65* 9(34) - impurities
66*--------------------------------------------------------------------*#
67
68using "assumptions";
69using "separators/dry_cleaning";
70using "mixers_and_splitters/mixer_and_splitter_m";
71using "separators/mill";
72using "separators/sieve";
73using "heat_exchangers/heater_m";
74using "reactors/liming_tank";
75using "pressure_changers/pump_m";
76using "separators/flash_m";
77using "separators/decanter";
78using "separators/filter";
79using "separators/evaporator";
80using "mixers_and_splitters/mixer_and_splitter_w";
81using "reactors/stoic_reactor";
82using "reactors/fermenter";
83using "separators/absorption_tower";
84using "separators/centrifuge";
85using "heat_exchangers/heater_w";
86using "separators/column";
87using "separators/separator";
88using "reactors/boiler";
89using "pressure_changers/turbine_w";
90using "separators/flash_w";
91using "pressure_changers/pump_w";
92using "heat_exchangers/Modelo_pinch";
93using "environmental_assumptions";
94using "economic_assumptions";
95
96FlowSheet var1_2_teste
97#------------------------ Parte comum ---------------------------#
98        PARAMETERS
99        PP as Plugin    (Brief = "External Physical Properties",
100                Type="PP",
101                Project = "../Flowsheets/v2_2/Fluid_v2_2.vrtherm"
102        );
103        PPS as Plugin   (Brief = "External Physical Properties",
104                Type="PP",
105                Project = "../Flowsheets/v2_2/Solid_v2_2.vrtherm"
106        );
107
108        NComp as Integer;
109        NCompS as Integer;
110       
111        ProPar as Assumptions   (Brief = "Model With All the Assumptions Made");
112        flu as ConstituentFluid (Brief = "Indexes of All Compounds in the Fluid Phase", Symbol = " ", Protected = true);
113        sol as ConstituentSolid (Brief = "Indexes of All Compounds in the Solid Phase", Symbol = " ", Protected = true);
114       
115        SET
116        #number of components in the liquid and solid phase
117        NComp = PP.NumberOfComponents();
118        NCompS = PPS.NumberOfComponents();
119       
120#---------------------- extracao -----------------------#
121        DEVICES
122        MSS101 as main_sourceR;# entrada de cana crua no processo
123        MSS102 as main_sourceR;#entrada de palha no processo
124        DCL101 as dry_cleaning; #limpeza a seco da cana
125       
126        MSS103 as main_sourceL; #fonte de terra da palha enfardada
127       
128        mSP102 as splitter_mL; #splitter da eficiencia de remocao da terra
129       
130        MSS104 as main_sourceL; #fonte de palha enfardada
131       
132        mMX103 as mixer2_mR; #misturador da palha enfardada e terra nao liberada
133        mMX104 as mixer2_mR; #misturador da palha enfardada e palha da impureza vegetal
134       
135        MSS105 as main_sourceL;#agua que alimenta o primeiro terno (nulo)
136        MLL105 as mill; #primeiro terno da moenda
137       
138        MLL106 as mill; #segundo terno da moenda
139       
140        MLL107 as mill; #terceiro terno da moenda
141
142        MLL108 as mill; #quarto terno da moenda
143       
144        MSS106 as main_sourceR;# agua que alimenta o quinto terno
145
146        MLL109 as mill; #quinto terno da moenda
147       
148        mMX110 as mixer2_mR; #misturador para o caldo primario e secundario
149       
150        SIE111 as sieve; #peneira para o caldo primario e secundario
151       
152        mMX112 as mixer2_mR; #misturador para o bagaco do primeiro terno e torta da peneira     
153
154        CONNECTIONS
155        MSS101.Outlet to DCL101.CrudeCane; #cana-de-acucar para limpeza a seco
156        MSS102.Outlet to DCL101.InletStraw; #palha para limpeza a seco
157       
158        MSS103.Outlet to mSP102.Inlet; #terra para splitter da limpeza
159        #MSS104.Outlet to mMX103.Inlet1; #Fonte de palha enfardada
160       
161        mSP102.Outlet1 to mMX103.Inlet2; #resto da terra para limpeza
162       
163        mMX103.Outlet to mMX104.Inlet1; #palha enfardada para mixer da caldeira
164        DCL101.OutletStraw to mMX104.Inlet2; #palha (impureza vegetal) para mixer da caldeira   
165
166        DCL101.SugarCane to MLL105.Cane; #cana limpa para primeiro terno
167        MSS105.Outlet to MLL105.Water; #agua (nula) para o primeiro terno
168
169        mMX112.Outlet to MLL106.Cane; #misturador para segundo terno da moenda
170        MLL107.MixedJuice to MLL106.Water; #caldo do terceiro para o segundo terno
171       
172        MLL106.Bagasse to MLL107.Cane; #cana do segundo para o terceiro terno
173        MLL108.MixedJuice to MLL107.Water; #caldo do quarto pro terceiro terno
174
175        MLL107.Bagasse to MLL108.Cane; #cana do terceiro para o quarto terno
176        MLL109.MixedJuice to MLL108.Water; #caldo do quinto pro quarto terno
177       
178        MLL108.Bagasse to MLL109.Cane; #cana do quarto para o quinto terno
179        MSS106.Outlet to MLL109.Water; #agua para o quinto terno
180       
181        MLL105.MixedJuice to mMX110.Inlet1; #caldo primario para o mixer
182        MLL106.MixedJuice to mMX110.Inlet2; #caldo secundario para o mixer
183       
184        mMX110.Outlet to SIE111.Inlet; #misturador dos caldos para peneira
185       
186        SIE111.SieveCake to mMX112.Inlet1; #torta da peneira para misturador
187        MLL105.Bagasse to mMX112.Inlet2; #bagaco do primeiro terno para misturador
188       
189        MLL109.Bagasse to mSP124.Inlet; #bagaco para splitter
190       
191        mSP124.Outlet1 to mSP125.Inlet; #splitter para splitter
192       
193        mSP125.Outlet1 to mSP126.Inlet; #splitter para splitter
194
195        SET
196        #entrada de cana-de-acucar
197        MSS101.ValidPhases = "Liquid-Only";
198        MSS101.CompositionBasis = "Mass";
199       
200        #entrada de palha no processo
201        MSS102.ValidPhases = "Liquid-Only";
202        MSS102.CompositionBasis = "Mass";
203       
204        #entrada de palha enfardada no processo
205        MSS103.ValidPhases = "Liquid-Only";
206        MSS103.CompositionBasis = "Mass";
207       
208        #entrada de terra da palha enfardada no processo
209        MSS104.ValidPhases = "Liquid-Only";
210        MSS104.CompositionBasis = "Mass";
211
212        #agua para o primeiro terno
213        MSS105.ValidPhases = "Liquid-Only";
214        MSS105.CompositionBasis = "Mass";
215       
216        #primeiro terno
217        MLL105.Brix = [0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0];
218        #segundo terno
219        MLL106.Brix = [0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0];
220        #terceiro terno
221        MLL107.Brix = [0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0];
222        #quarto terno
223        MLL108.Brix = [0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0];
224        #quinto terno
225        MLL109.Brix = [0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0];
226       
227        #agua para o sexto terno
228        MSS106.ValidPhases = "Liquid-Only";
229        MSS106.CompositionBasis = "Mass";
230
231        SPECIFY
232        #entrada de cana-de-acucar
233        MSS101.CompositionOfFluid = ProPar.SugarcaneComposition;
234        MSS101.CompositionOfSolid = ProPar.SugarcaneCompositionSolid;
235        MSS101.T = ProPar.roomT;
236        MSS101.P = 1 * 'atm';
237       
238        #entrada de palha no processo (impureza vegetal)
239        MSS102.CompositionOfFluid = ProPar.StrawComposition;
240        MSS102.CompositionOfSolid = ProPar.StrawCompositionSolid;
241        MSS102.T = ProPar.roomT;
242        MSS102.P = 1 * 'atm';
243       
244        #limpeza a seco
245        DCL101.Cleaning_effVeg = 0.65;
246        DCL101.Cleaning_effMin = 0.70; #http://www.jacare.ind.br/Limpeza-de-Cana-Seco-por-Ventilacao.php
247        #DCL101.SugarLosses = 0.005;
248        DCL101.SugarLosses = 1e-6 ;
249        DCL101.Fiber_cane = ProPar.SugarcaneFiber;
250        DCL101.Duty = ProPar.DryCleaningDuty;
251       
252        #terra da palha que entra enfardada
253        MSS103.CompositionOfFluid(1) = 1;
254        MSS103.CompositionOfFluid(2:NComp) = 0;
255        MSS103.CompositionOfSolid = [0, 0, 0, 0, 0, 0, 0, 0, 1];
256        MSS103.T = ProPar.roomT;
257        MSS103.P = 1 * 'atm';
258        MSS103.Fluid.Fw = 1e-6 * 'kg/h';
259        MSS103.Solid.Fw = 1e-6 * 'kg/h';
260       
261        #Limpeza da palha enfardada
262        #mSP102.frac = 0.65;
263        mSP102.frac = 0.70;
264       
265        #palha que entra enfardada
266        MSS104.CompositionOfFluid = ProPar.StrawComposition_baled;
267        MSS104.CompositionOfSolid = ProPar.StrawCompositionSolid_baled;
268        MSS104.T = ProPar.roomT;
269        MSS104.P = 1 * 'atm';
270
271        #agua para o primeiro terno
272        MSS105.CompositionOfFluid(1) = 1;
273        MSS105.CompositionOfFluid(2:NComp) = 0;
274        MSS105.CompositionOfSolid = [0.431, 0.252, 0.229, 0.028, 0, 0, 0, 0, 0];
275        #######
276        #MSS105.Solid.Fw = 1 * 'kg/h';
277        MSS105.Solid.Fw = 1e-6 * 'kg/h';
278        MSS105.T = ProPar.roomT;
279        MSS105.P = 1 * 'atm';
280       
281        #primeiro terno
282        MLL105.WFPTC = 0;
283        MLL105.Duty = ProPar.MillDuty;
284        MLL105.humidity = 0.56;
285        MLL105.frac_sol = 0.9;
286       
287        #segundo terno
288        MLL106.Duty = ProPar.MillDuty;
289        MLL106.humidity = 0.58;
290        MLL106.frac_sol = 0.9;
291        MLL106.Extract = 0.617;
292       
293        #terceiro terno
294        MLL107.Duty = ProPar.MillDuty;
295        MLL107.humidity = 0.55;
296        MLL107.frac_sol = 0.9;
297        MLL107.Extract = 0.588;
298       
299        #quarto terno
300        MLL108.Duty = ProPar.MillDuty;
301        MLL108.humidity = 0.53;
302        MLL108.frac_sol = 0.9;
303        MLL108.Extract = 0.554;
304       
305        #quinto terno
306        MLL109.Duty = ProPar.MillDuty;
307        MLL109.humidity = 0.5;
308        MLL109.frac_sol = 0.9;
309        MLL109.Extract = 0.472;
310       
311        #agua para o quinto terno
312        MSS106.CompositionOfFluid(1) = 1;
313        MSS106.CompositionOfFluid(2:NComp) = 0;
314        MSS106.CompositionOfSolid = [0.431, 0.252, 0.229, 0.028, 0, 0, 0, 0, 0];
315        MSS106.Solid.Fw = 1e-6 * 'kg/h';
316        #MSS106.T = 323.15 * 'K';
317        MSS106.T = (60 + 273.15) * 'K';
318        MSS106.P = 1 * 'atm';
319       
320        #peneira
321        SIE111.frac_per = 0.88;
322        SIE111.humidity = 0.72;
323        SIE111.frac_insol = 0.92;
324
325        #splitter reserva de bagaco
326        mSP124.frac = 0.95;
327       
328        VARIABLES
329        #frac_E2G as fraction (Brief = "E2G Mass Fraction for the Process", Default = 0.5);
330       
331        EQUATIONS
332        #Quantidade de cana que entra na usina
333        MSS101.Outlet.Total.Fw = ProPar.SugarcaneFlow;
334       
335        #Quantidade de palha que entra como impureza vegetal
336        MSS102.Outlet.Total.Fw = 0.048 * (MSS101.Outlet.Total.Fw + MSS102.Outlet.Total.Fw);
337       
338        #Umidade da palha que entra como impureza vegetal
339        MSS102.Outlet.Total.zw(flu.Water) = ProPar.humidity_straw;
340       
341        #Umidade da palha que entra como fardo
342        MSS104.Outlet.Total.zw(flu.Water) = ProPar.humidity_baled_straw;
343       
344        #Vazao de palha que entra enfardada
345        #Vazao total * (1 - umidade da palha) = (fracao que eh trazida do campo) * (producao especifica) * vazao de cana - o que jah vem como impureza vegetal
346        MSS104.Outlet.Total.Fw * (1 -  ProPar.humidity_baled_straw) = 0.5 * 140 * 'kg/t' * MSS101.Outlet.Total.Fw - MSS102.Outlet.Total.Fw * (1 - ProPar.humidity_straw);
347
348        #Recuperacao global dos acucares com base na quantidade que entra na primeira moenda
349        ProPar.SugarRecovery * MLL105.Cane.Fluid.Fw * (MLL105.Cane.Fluid.zw(flu.Sucrose) + MLL105.Cane.Fluid.zw(flu.Glucose)) =
350        SIE111.Permeate.Fluid.Fw * (SIE111.Permeate.Fluid.zw(flu.Sucrose) + SIE111.Permeate.Fluid.zw(flu.Glucose));
351       
352        #Agua adicionada ao quinto terno (Com base no total de cana que eh moida)
353        ProPar.SoakingWater * ProPar.SugarcaneFlow = MSS106.Fluid.Fw;
354#*
355*#
356        #* A simulacao foi construida de forma a maximizar a producao de etanol 2G.
357        A fracao de bagaco que entra na caldeira eh a variavel controle.
358        Em situacoes onde todo o bagaco eh desviado para o 2G (mSP126.frac = 1)
359        a quantidade de palha enfardada eh calculada (atraves do balanco de energia)
360        *#     
361       
362        DEVICES
363        mSP103 as splitter_mL; #splitter para uso da palha
364       
365        CONNECTIONS
366        MSS104.Outlet   to mSP103.Inlet;
367        mSP103.Outlet1  to mMX103.Inlet1;
368       
369        PARAMETERS
370        StrawSwitcher as Switcher (Valid = ["On", "Off"], Default = "Off");
371       
372        EQUATIONS
373       
374        switch StrawSwitcher
375                case "Off":
376                        mSP103.Outlet2.Total.Fw = 1e-2 *'kg/h';
377                when mSP126.frac >= 1 switchto "On";
378               
379                case "On":
380                        mSP126.frac = 1;
381                when mSP103.frac >= 1 switchto "Off";
382        end
383#*
384*#
385#------------------------- tratamento -----------------------------#
386        DEVICES
387        mMX113 as mixer2_mR; #misturador para o bagaco do primeiro terno e torta da peneira     
388       
389        LTS115 as liming_tank; #tanque de calagem
390        MSS107 as main_sourceR; #fonte de acido fosforico
391        MSS108 as main_sourceR; #fonte de hidroxido de calcio
392       
393        mPP116 as pump_mL; #primeira bomba
394        PSS101 as power_sourceR; #potencia para a primeira bomba
395       
396        mFL118 as exo_flash; #flash
397
398        MSS109 as main_sourceR;#polimero para o decantador
399       
400        mMX119 as mixer2_mR; #misturador (caldo e polimero)
401
402        DEC120 as decanter3; #decantador
403
404        MSS110 as main_sourceL;#agua para filtracao na planta 1G
405        mMX121 as mixer2_mR; #misturador (lodo e agua)
406       
407        mMX122 as mixer2_mR; #misturador (lodo+agua e bagacilho)
408
409        FLT123 as filter; #filtro de tambor rotativo
410       
411        mSP124 as splitter_mL; #splitter do bagaco (reserva de bagaco)
412       
413        mSP125 as splitter_mL; #splitter do bagaco (bagacilho para filtro)
414       
415        mSP126 as splitter_mL; #splitter do bagaco (bagaco para 2G)
416#*
417*#
418        CONNECTIONS
419        SIE111.Permeate to mMX113.Inlet1; #filtrado da peneira misturador
420        FLT123.Filtrate to mMX113.Inlet2; #filtrado para misturador
421
422        #mMX113.Outlet to pinch to LTS115.Inlet; #misturador para o pinch para o tanque de calagem
423
424        MSS107.Outlet to LTS115.Acid; #fonte de acido fosforico para o tanque de calagem
425        MSS108.Outlet to LTS115.Lime; #fonte de hidroxido de calcio para o tanque de calagem
426       
427        LTS115.Outlet to mPP116.Inlet; #caldo para primeira bomba
428        PSS101.Outlet_p to mPP116.Inlet_p; #potencia para a primeira bomba
429       
430        #mPP116.Outlet to pinch to mFL118.Inlet ; #primeira bomba para o pinch para o flash
431
432        mFL118.OutletL to mMX119.Inlet1; #flash para misturador
433        MSS109.Outlet to mMX119.Inlet2; #polimero para misturador
434
435        mMX119.Outlet to DEC120.Inlet; #misturador para decantador
436
437        DEC120.Sludge to mMX121.Inlet1; #lodo do decantador para misturador
438        MSS110.Outlet to mMX121.Inlet2; #agua para misturador
439       
440        mMX121.Outlet to mMX122.Inlet1; #agua+lodo para misturador
441        mSP125.Outlet2 to mMX122.Inlet2; #bagacilho para misturador
442
443        mMX122.Outlet to FLT123.Inlet; #misturador para filtro de tambor rotativo
444
445        SET
446       
447        #fonte de acido fosforico
448        MSS107.ValidPhases = "Liquid-Only";
449        MSS107.CompositionBasis = "Mass";
450       
451        #fonte de cal
452        MSS108.ValidPhases = "Liquid-Only";
453        MSS108.CompositionBasis = "Mass";
454       
455        #tanque de calagem
456        LTS115.Brix = [0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0];
457        LTS115.NReac = 2;
458        LTS115.stoic (:,1) = [2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -2/3, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, 1/3, 0]; # Reaction 1: 1.Ca(OH)2 + 2/3.H3PO4  --> 1/3Ca3(PO4)2 + 2H2O
459        LTS115.stoic (:,2) = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1]; # Reaction 1: Impurities(fluida) --> Impurities(solido)
460        LTS115.h = [0, 0] * 'kJ/kmol';
461        LTS115.density = 1000 * 'kg/m^3';
462        LTS115.SugarcaneFlow = ProPar.SugarcaneFlow;
463        LTS115.limit = [NComp+sol.CaOH2, flu.Impurities];
464       
465        #primeira bomba
466        mPP116.density = 1000 * 'kg/m^3';
467       
468        #polimero
469        MSS109.ValidPhases = "Liquid-Only";
470        MSS109.CompositionBasis = "Mass";
471       
472       
473        #decantador
474        DEC120.Brix = [0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0];
475       
476        #agua de lavagem do filtro
477        MSS110.ValidPhases = "Liquid-Only";
478        MSS110.CompositionBasis = "Mass";
479       
480       
481       
482        SPECIFY
483
484        #fonte de acido fosforico
485        MSS107.CompositionOfFluid = [0.85, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.15, 0, 0, 0];
486        MSS107.CompositionOfSolid = [0, 0, 0, 0, 0, 0, 1.0, 0, 0];
487        MSS107.Solid.Fw = 1e-6 * 'kg/h';
488        MSS107.T = (70 + 273.15) * 'K';
489        MSS107.P = 1 * 'atm';
490       
491        #fonte de cal
492        MSS108.CompositionOfFluid = [1.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
493        MSS108.CompositionOfSolid = [0, 0, 0, 0, 0, 0, 1.0, 0, 0];
494        MSS108.T = (70 + 273.15) * 'K';
495        MSS108.P = 1 * 'atm';
496       
497        #tanque de calagem
498        LTS115.KCPTC = 1.057 * 'kg/t';
499        LTS115.LFPTJ = 17.6 * 'kg/t';
500        LTS115.Ex_Acid = 0;
501        LTS115.conv = [1.0, 1.0];
502        LTS115.T = (70 + 273.15) * 'K';
503        LTS115.reac_time = 48 * 'h';
504       
505        #Bomba para garantir que nao vai evaporar nos trocadores
506        mPP116.PIn = 0.7 * 'atm';
507        mPP116.n = ProPar.PumpEff;
508       
509        #Flash
510        mFL118.Pdrop = 0.7 * 'atm';
511        mFL118.OutletL.T = (98 + 273.15) * 'K';
512
513        #Fonte de polimero (soh considera agua)
514        MSS109.CompositionOfFluid(1) = 1;
515        MSS109.CompositionOfFluid(2:NComp) = 0;
516        MSS109.CompositionOfSolid = [1, 0, 0, 0, 0, 0, 0, 0, 0];
517        MSS109.Solid.Fw = 1e-6 * 'kg/h';
518        MSS109.T = (98 + 273.15) * 'K';
519        MSS109.P = 1 * 'atm';
520       
521        #Decantador
522        DEC120.Clarified.Fluid.T = (97 + 273.15) * 'K';
523        DEC120.frac_dec = 0.9;
524        DEC120.Sludge.Total.zw(flu.Water) = 0.91;
525        DEC120.frac_insol = 0.997;
526        DEC120.reac_time = 0.1 * 'h';   
527
528        #agua que lava o lodo
529        MSS110.CompositionOfFluid(1) = 1;
530        MSS110.CompositionOfFluid(2:NComp) = 0;
531        MSS110.CompositionOfSolid = [1, 0, 0, 0, 0, 0, 0, 0, 0];
532        MSS110.Solid.Fw = 1e-6 * 'kg/h';
533        MSS110.T = (75 + 273.15) * 'K';
534        MSS110.P = 1 * 'atm';
535
536        #Filtro de tambor rotativo
537        #FLT123.frac_insol = 0.9;
538        FLT123.frac_insol = 0.9394; #conferir se acha referencia desse valor, uma vez que ele \C3 de um ausina real
539        #FLT123.humidity = 0.75;
540        FLT123.humidity = 0.70;
541        FLT123.FilterCake.Total.zw(flu.Sucrose) = 0.018; #antes estava 0.02 - referencia \C3 de 1.8% a 2.0%
542       
543        EQUATIONS
544       
545        #Quantidade de polimero adicionado ao decantador
546        ProPar.PolymerFraction * mMX119.Outlet.Total.Fw = MSS109.Fluid.Fw;
547       
548        #bagacilho para filtro
549        mSP125.Outlet2.Total.Fw = ProPar.Pith_proportion * ProPar.SugarcaneFlow;
550
551        #Quantidade de agua adicionada
552        MSS110.Outlet.Total.Fw = ProPar.Water_filter * ProPar.SugarcaneFlow;
553
554        # Custo operacional - tratamento
555        Input_Treat = EcoPar.WorkedHours * (MSS107.Outlet.Total.Fw * EcoPar.FosfCost +
556                                                                MSS108.Outlet.Total.Fw * EcoPar.CalCost +
557                                                                MSS109.Outlet.Total.Fw * EcoPar.PolCost +
558                                                                MSS110.Outlet.Total.Fw * EcoPar.WaterCost);
559       
560        VARIABLES
561        Input_Treat as currency (Brief = "Operational expenditure in the treatment");
562#*
563*#
564
565#------------------ concentracao e fermentacao --------------------#
566        DEVICES
567       
568        mPP201 as pump_mL; #bomba para o caldo
569        PSS201 as power_sourceR; #potencia para a bomba
570       
571        WSS201 as water_sourceR; #Fonte de vapor de processo
572        EVP202 as evaporator3; # 1 evaporador
573        EVP203 as evaporator3; # 2 evaporador
574        EVP204 as evaporator3; # 3 evaporador
575        EVP205 as evaporator3; # 4 evaporador
576        EVP206 as evaporator3; # 5 evaporador
577       
578        mPP204 as pump_mL; #bomba para o caldo concentrado
579        PSS204 as power_sourceR; #potencia para a bomba
580       
581        MSS202 as main_sourceR; #Fonte de amonia
582        mMX205 as mixer2_mR; #misturador para a amonia
583
584        mMX206 as mixer_mR; #misturador de levedura
585       
586        RTS207 as stoic_reactor; #"reator" que converte sacarose em glicose...
587
588        FMS208 as stoic_fermenter; #dornas de fermentacao
589       
590        MSS203 as main_sourceR; #fonte de agua para a torre de absorcao
591        ABT209 as absorption_tower; #torre de absorcao
592
593        CFG210 as centrifuge; #centrifuga
594        PSS202 as power_sourceR; #potencia para a bomba
595
596        #sequencia de misturadores...
597        mMX211 as mixer_mR; #misturador levedura e agua da torre de absorcao
598
599        MSS204 as main_sourceR; #fonte de agua para diluicao da levedura
600        mMX212 as mixer_mR; #misturador levedura e agua de diluicao
601
602        MSS205 as main_sourceR; #fonte de acido sulfurico
603        mMX213 as mixer_mR; #misturador levedura e acido sulfurico
604
605        mSP214 as splitter_mR; #purga de levedura
606       
607        mMX608 as mixer_mR; #misturador caldo 1G e 2G
608
609#*
610*#
611        CONNECTIONS
612        DEC120.Clarified to mPP201.Inlet; #caldo clarificado para a bomba
613        PSS201.Outlet_p to mPP201.Inlet_p; #potencia para a bomba
614       
615        mPP201.Outlet to mMX608.Inlet1; #caldo para o misturador
616        mPP607.Outlet to mMX608.Inlet2; # caldo 2G para o misturador
617       
618        mMX608.Outlet to EVP202.Inlet; #caldo da bomba para o evaporador
619        WSS201.Outlet to EVP202.InletS; #vapor para o evaporador
620       
621        EVP202.OutletL to EVP203.Inlet; #caldo para o evaporador
622        EVP202.OutletV to EVP203.InletS; #vapor vegetal para o evaporador
623       
624        EVP203.OutletL to EVP204.Inlet; #caldo para o evaporador
625        EVP203.OutletV to EVP204.InletS; #vapor vegetal para o evaporador
626       
627        EVP204.OutletL to EVP205.Inlet;#caldo para o evaporador
628        EVP204.OutletV to EVP205.InletS;#vapor vegetal para o evaporador
629       
630        EVP205.OutletL to EVP206.Inlet;#caldo para o evaporador
631        EVP205.OutletV to EVP206.InletS;#vapor vegetal para o evaporador
632       
633        EVP206.OutletL to mPP204.Inlet; #caldo concetrado para a bomba
634        PSS204.Outlet_p to mPP204.Inlet_p; #potencia para a bomba
635       
636        #mPP204.Outlet to pinch to mMX205.Inlet1; #caldo concentrado para o pinch para o misturador
637
638        MSS202.Outlet to mMX205.Inlet2; #amonia para misturador
639
640        mMX205.Outlet to mMX206.Inlet1; #misturador para misturador
641
642        mMX206.Outlet to RTS207.Inlet; #misturador para "reator"
643       
644        RTS207.Outlet to FMS208.Inlet; #"reator" para fermentador
645       
646        MSS203.Outlet to ABT209.InletL; #fonte de agua para torre de absorcao
647        FMS208.Gas to ABT209.InletG; #gases da fermentacao para torre de absorcao
648       
649        FMS208.Outlet to CFG210.Inlet; #fermentador para centrifuga
650        PSS202.Outlet_p to CFG210.Inlet_p; #trabalho para a centrifuga
651
652        CFG210.FilterCake to mMX211.Inlet1; #leite de levedura para misturador
653        ABT209.OutletL to mMX211.Inlet2; #agua da torre de absorcao para misturador
654
655        mMX211.Outlet to mMX212.Inlet1; #misturador para misturador
656        MSS204.Outlet to mMX212.Inlet2; #agua de diluicao para misturador
657
658        mMX212.Outlet to mMX213.Inlet1; #misturador para misturador
659        MSS205.Outlet to mMX213.Inlet2; #acido sulfurico para misturador
660
661        mMX213.Outlet to mSP214.Inlet; #misturador para purga
662       
663        mSP214.Outlet1 to mMX206.Inlet2; #reciclo real da levedura
664#*
665*#
666        SET
667       
668        #Bomba
669        mPP201.density = 1000 * 'kg/m^3';
670       
671        #Bomba caldo concentrado
672        mPP204.density = 1000 * 'kg/m^3';
673       
674        #Fonte de vapor
675        WSS201.ValidPhases = "Vapour-Liquid";
676
677        #Evaporador
678        EVP202.Brix = [0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
679        EVP203.Brix = [0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
680        EVP204.Brix = [0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
681        EVP205.Brix = [0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
682        EVP206.Brix = [0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
683       
684        #Fonte de amonia
685        MSS202.ValidPhases = "Liquid-Only";
686        MSS202.CompositionBasis = "Mass";
687
688        #"reator"
689        RTS207.NReac = 1;
690        #Reacao 1: C12H22O11 + H2O -> 2 C6H12O6
691        RTS207.stoic(:,1) = [-1, -1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ,0];
692        RTS207.h = [0] * 'kJ/kmol';
693        RTS207.density = 1000 * 'kg/m^3';
694        RTS207.limit = [flu.Sucrose];
695
696        #fermentador
697        #reacoes:
698        #                       C6H12O6 -> 2C2H6O + 2CO2 conv = 90.48 %
699        #                       C6H12O6 + 2H2O -> 2C2H4O + 2CO2 + 4H2 conv = 1.19 %
700        #                       C6H12O6 + 2H2 -> 2C3H8O3 conv = 2.67 %
701        #                       0.174C6H12O6 + 0.12NH3 -> CH1.74O0.6N0.12 + 0.355H2O + 0.045CO2 conv = 1.37 %
702        FMS208.NReac = 4;
703        #glucose to ethanol
704        FMS208.stoic (:,1) = [0, 0, -1, 0, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
705        #glucose to acetic acid
706        FMS208.stoic (:,2) = [-1.5524, 0, -1, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
707        #glucose to glycerol
708        FMS208.stoic (:,3) = [-0.2238, 0, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
709        #glucose to yeast
710        FMS208.stoic (:,4) = [2.0355, 0, -1, 0, 0, 0.2586, 0, 0, 0, 0, 0, -0.6897, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5.7471, 0, 0, 0];
711        FMS208.limit = [flu.Glucose, flu.Glucose, flu.Glucose, flu.Glucose];
712        FMS208.h = [0, 0, 0, 0] * 'kJ/mol';
713        FMS208.Outlet.Phase = "Liquid";
714        FMS208.fermentation = "glucose";
715        FMS208.Brix = [0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
716
717        #agua para torre de absorcao
718        MSS203.ValidPhases = "Liquid-Only";
719        MSS203.CompositionBasis = "Mass";
720       
721        #torre de absorcao
722        ABT209.Target = flu.Ethanol;
723       
724        #agua de diluicao da levedura
725        MSS204.ValidPhases = "Liquid-Only";
726        MSS204.CompositionBasis = "Mass";
727
728        #acido sulfurico
729        MSS205.ValidPhases = "Liquid-Only";
730        MSS205.CompositionBasis = "Mass";
731       
732#*
733*#
734        SPECIFY
735        #Bomba
736        mPP201.Outlet.P = 1.7 * 'atm';
737        mPP201.n = ProPar.PumpEff;
738       
739        #Bomba para caldo concentrado
740        mPP204.Outlet.P = 1 * 'atm';
741        mPP204.n = ProPar.PumpEff;
742       
743        #Fonte de vapor
744        WSS201.P = 2.5 * 'bar';
745        WSS201.v = 1;
746
747        #Pressao evaporadores
748        EVP202.OutletV.P = 1.69 * 'bar';
749        EVP203.OutletV.P = 1.31 * 'bar';
750        EVP204.OutletV.P = 0.93 * 'bar';
751        EVP205.OutletV.P = 0.54 * 'bar';
752        EVP206.OutletV.P = 0.16 * 'bar';
753       
754        #Brix final
755        EVP206.Outlet_Brix = 0.20; #18 - 22 de acordo com o chandel. Este intervalo no 2G.
756       
757        #Fonte de amonia
758        MSS202.T = ProPar.roomT;
759        MSS202.P = 1 * 'atm';
760        MSS202.Solid.Fw = 1e-6 * 'kg/h';
761        MSS202.CompositionOfFluid = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
762        MSS202.CompositionOfSolid = [0.431, 0.252, 0.229, 0.028, 0, 0, 0, 0, 0];
763
764        #"reator"
765        RTS207.conv = [1];
766        RTS207.T = (30 + 273.15) * 'K';
767        RTS207.reac_time = 1 * 'h';
768
769        #fermentador
770        #reacoes:
771        #                       C6H12O6 -> 2C2H6O + 2CO2 conv = 90.48 %
772        #                       C6H12O6 + 2H2O -> 2C2H4O + 2CO2 + 4H2 conv = 1.19 %
773        #                       C6H12O6 + 2H2 -> 2C3H8O3 conv = 2.67 %
774        #                       0.174C6H12O6 + 0.12NH3 -> CH1.74O0.6N0.12 + 0.355H2O + 0.045CO2 conv = 1.37 %
775        #FMS208.conv = [0.9048, 0.0119, 0.0267, 0.0137];
776        FMS208.conv = [0.92, 0.0119, 0.0267, 0.0137];
777        FMS208.Outlet.T = (30 + 273.15) * 'K';
778        FMS208.Outlet.Total.z(flu.Ammonia) = 0.0001; #Soh amonia suficiente eh adicionada
779
780        #Fonte de agua
781        MSS203.CompositionOfFluid(1) = 1;
782        MSS203.CompositionOfFluid(2:NComp) = 0;
783        MSS203.CompositionOfSolid = [1, 0, 0, 0, 0, 0, 0, 0, 0];
784        MSS203.Solid.Fw = 1e-6 * 'kg/h';
785        MSS203.T = ProPar.roomT;
786        MSS203.P = 1 * 'atm';
787       
788        #torre de absorcao
789        ABT209.R = 0.9996;
790        ABT209.f = 1.5;
791        ABT209.T = (30 + 273.15) * 'K';
792        ABT209.P = 1 * 'atm';
793        ABT209.m = 0.88;
794       
795        #centrifuga
796        CFG210.humidity = 0.3;
797        CFG210.frac_sol = 0.999;
798        CFG210.Power = 100 * 'hp';
799
800        #agua de diluicao de levedura
801        MSS204.CompositionOfFluid(1) = 1;
802        MSS204.CompositionOfFluid(2:NComp) = 0;
803        MSS204.CompositionOfSolid = [1, 0, 0, 0, 0, 0, 0, 0, 0];
804        MSS204.Solid.Fw = 1e-6 * 'kg/h';
805        MSS204.T = (30 + 273.15) * 'K';
806        MSS204.P = 1 * 'atm';
807
808        #acido sulfurico
809        MSS205.CompositionOfFluid = [0.02, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.98, 0, 0, 0, 0];
810        MSS205.CompositionOfSolid = [1, 0, 0, 0, 0, 0, 0, 0, 0];
811        MSS205.Solid.Fw = 1e-6 * 'kg/h';
812        MSS205.T = (30 + 273.15) * 'K';
813        MSS205.P = 1 * 'atm';
814       
815        EQUATIONS
816        #Concentracao de leveduras depois da diluicao - Assumindo corrente solida somente com levedura
817        #apesar da fracao ser volumetrica,a utilizada eh massica pq a diferenca entre as densidades eh muito pequena
818        #o creme de leveduras eh diluido com agua da coluna de adsorcao
819        ProPar.yeastConcTreatment * mMX212.Outlet.Total.Fw = mMX212.Outlet.Solid.Fw;
820       
821        #fracao de acido sulfurico adicionado com base na vazao volumetrica de levedura
822####   
823        ProPar.SulfurAcTreatment * (mMX213.Outlet.Solid.Fw / ProPar.density_solution)= (MSS205.Fluid.Fw / ProPar.SulfurAcDensity);
824       
825        #concentracao de levedura no fermentador - Assumindo corrente solida somente com levedura
826        ProPar.yeastConcFermenter * mMX206.Outlet.Total.Fw = mMX206.Outlet.Solid.Fw;
827
828        # Custo operacional - etapas de concentracao e fermentacao
829
830        Input_ConcFerm = EcoPar.WorkedHours * (MSS202.Outlet.Total.Fw * EcoPar.AmmoniaCost +
831                                                                MSS203.Outlet.Total.Fw * EcoPar.WaterCost +
832                                                                MSS204.Outlet.Total.Fw * EcoPar.WaterCost +
833                                                                MSS205.Outlet.Total.Fw * EcoPar.SulfCost);
834        VARIABLES
835        Input_ConcFerm as currency (Brief = "Operational expenditure in the concentration and fermentation steps");
836       
837#*
838*#
839#----------------- destilacao ---------------------#
840        DEVICES
841       
842        mMX308 as mixer_mR; #misturador entre os vinhos do C6/C12 e do C5
843       
844        mPP309 as pump_mR; #primeira bomba
845        PSS301 as power_sourceR; #potencia para bomba
846       
847        QSS303 as heat_sourceR; #calor para o refervedor da coluna AA1
848        QSS304 as heat_sourceR; #calor para o refervedor da coluna BB1
849        COL303 as column; #trem de colunas de destilacao do hidratado
850       
851        QSS305 as heat_sourceR; #calor para a coluna de desidratacao
852        QSS306 as heat_sourceR; #calor para a coluna de recuperacao
853        MSS301 as main_sourceR; #fonte de MEG (total)
854        DEH304 as dehydration; #trem de colunas de desidratacao
855       
856        PSS302 as power_sourceR; #Trabalho para a bomba
857        mPP307 as pump_mR; #Bomba do MEG recuperado
858
859#*
860*#
861        CONNECTIONS
862       
863        CFG210.Filtrate to mMX308.Inlet1; #filtrado para misturador
864        FMS706.Outlet to mMX308.Inlet2; #vinho delevedurado para primeiro trocador
865       
866        mMX308.Outlet to mPP309.Inlet; #misturador para bomba
867        PSS301.Outlet_p to mPP309.Inlet_p; #potencia para bomba
868       
869        #Na var12 base, ha dois trocadores de calor nesta etapa. Aqui, o valor da saida eh
870        #com base no valor da simulacao (362.63 K). O primeiro trocador atinge 70 C e o segundo 362.63 K
871        #mPP309.Outlet to pinch to COL303.Wine # vinho delevedurado para o pinch para o aquecido para coluna
872
873        QSS303.Outlet_q to COL303.QAA1; #calor para o refervedor AA1
874        QSS304.Outlet_q to COL303.QBB1; #calor para o refervedor BB1
875       
876        QSS305.Outlet_q to DEH304.QREXT; #Calor para o refervedor da coluna extrativa
877        QSS306.Outlet_q to DEH304.QRREC; #Calor para o refervedor da coluna de recuperacao
878        MSS301.Outlet to DEH304.MEG; #MEG para a coluna extrativa
879        COL303.HydrEth to DEH304.HydrEth; #Etanol hidratado para a coluna extrativa
880       
881        #COL303.Vinasse to pinch  ; #vinhaca para segundo trocador
882       
883        #DEH304.RecMEG to pinch to mPP307.Inlet; #MEG recuperado para o pinch para a bomba
884       
885        PSS302.Outlet_p to mPP307.Inlet_p; #trabalho para bomba
886#*
887*#
888        SET
889       
890        #primeira bomba
891        mPP309.density = 1000 * 'kg/m^3';
892       
893        #coluna de destilacao - Liquid para etanol hidratado , Vapour para etanol anidro
894        COL303.HydrOutletPhase = "Vapour";
895       
896        #MEG de reposicao
897        MSS301.ValidPhases = "Liquid-Only";
898        MSS301.CompositionBasis = "Mass";
899       
900        #segunda bomba
901        mPP307.density = 1000 * 'kg/m^3';
902       
903#*
904*#
905        SPECIFY
906        #primeira bomba
907        mPP309.Outlet.P = 136.3 * 'kPa';
908        mPP309.n = ProPar.PumpEff;
909       
910       
911        #Fonte de MEG (total)
912        MSS301.T = (80 + 273.15) * 'K';
913        MSS301.P = 1 * 'atm';
914        MSS301.Solid.Fw = 1e-6 * 'kg/h';
915        MSS301.CompositionOfFluid = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0];
916        MSS301.CompositionOfSolid = [0.25, 0.20, 0.55, 0, 0, 0, 0, 0, 0];
917       
918        #Coluna de desidratacao
919        DEH304.SolventRatio = 0.5;
920       
921        #bomba do retorno do MEG
922        mPP307.Outlet.P = 1 * 'atm';
923        mPP307.n = ProPar.PumpEff;
924       
925#*
926*#
927        VARIABLES
928        F_MEG as flow_mass      (Brief = "MEG Replacement Flow");
929       
930        EQUATIONS
931        #vazao de reposicao do MEG
932        F_MEG = MSS301.Fluid.Fw * MSS301.Outlet.Fluid.zw(flu.MEG) - mPP307.Outlet.Fluid.Fw * mPP307.Outlet.Fluid.zw(flu.MEG);
933       
934        # Custo Operacional -  Etapa de purificacao
935        OpEx_Purif = 1e-6 * 'US$' * ((AnhyEthProd - EcoPar.Ethanol1GProduction) / AnhyEthProd);
936       
937        VARIABLES
938        OpEx_Purif      as currency (Brief = "Operational expenditure in the Purification stage");
939       
940#*
941*#
942
943#---------------------- CHP-NC -------------------------#
944        DEVICES
945       
946        MSS401 as main_sourceR; #fonte de ar
947        QSS401 as heat_sourceR; #fonte de calor para a caldeira...
948        mMX401 as mixer_mR; #misturador para material lignocelulosico e bagaco
949        mMX402 as mixer_mR; #misturador para material lignicelulosico e palha
950        BLR403 as boiler; #caldeira
951
952        wTB404 as turbine_w; #turbina de alta
953       
954        wSP405 as splitter_wL; #splitter pos turbina de alta
955
956        wMX406 as mixer_wL; #dessuper
957
958        Cwq407 as cooler_wLD; #trocador de calor de alta
959
960        wSP408 as splitter_wL; #splitter com as perdas do condensado de alta
961
962        wFL409 as flash_wR; #flash de agua
963
964        wTB410 as turbine_w; #turbina de media
965
966        wSP411 as splitter_wR; #splitter pos turbina de media
967
968        wMX412 as mixer_wL; #dessuper de media
969
970        wMX413 as mixer_wL;
971
972        Cwq414 as cooler_wLD; #trocador de calor de media
973
974        wSP415 as splitter_wR; #splitter com as perdas do condensado de media
975
976        wMX416 as mixer_wL;
977
978        wFL417 as flash_wR; #flash de agua
979       
980        wTB418 as turbine_w; #turbina de baixa
981
982        wSP419 as splitter_wR; #vapor para o desaerador
983
984        wMX420 as mixer_wL; #dessuper de baixa
985       
986        wMX421 as mixer_wL; #misturador (vapor do flash de media e dessuper de baixa)
987
988        Cwq422 as cooler_wLD; #trocador de calor baixa
989
990        wSP423 as splitter_wR; #Perdas de vapor do processo
991
992        wMX424 as mixer_wR; #misturador (liquido do flash de media e condensado de baixa)
993
994        WSS402 as water_sourceR; #agua de reposicao
995        wPP425 as pump_wR; #bomba da agua de reposicao
996        PSS401 as power_sourceR; #trabalho para a bomba da agua de reposicao
997
998        wMX426 as mixer_wR; #misturador (condensados e agua de reposicao)
999
1000        wMX427 as mixer_wR; #desaerador
1001
1002        wSP428 as splitter_wR; #agua para o dessuper de baixa
1003       
1004        PSS402 as power_sourceR; #trabalho para a bomba do dessuper de baixa
1005        wPP429 as pump_wR; #agua para o dessuper de baixa
1006
1007        wSP430 as splitter_wR; #agua para o dessuper de media
1008
1009        PSS403 as power_sourceR; #trabalho para a bomba do dessuper de media
1010        wPP431 as pump_wR; #agua para o dessuper de media
1011
1012        wSP432 as splitter_wR; #agua para o dessuper de alta
1013
1014        PSS404 as power_sourceR; #potencia para a bomba do dessuper de alta
1015        wPP433 as pump_wR; #agua para o dessuper de alta
1016
1017        PSS405 as power_sourceR; #potencia para a bomba do retorno da caldeira
1018        wPP434 as pump_wR; #retorno da agua para a caldeira
1019
1020#*
1021*#
1022        CONNECTIONS
1023       
1024        mSP126.Outlet2 to mMX401.Inlet1; #bagaco para misturador
1025        SEP606.OutletS to mMX401.Inlet2; #material lignocelulosico 2G para misturador
1026        mMX401.Outlet to mMX402.Inlet1; #material lignocelulosico (1G+2G) para misturador
1027        mMX104.Outlet to mMX402.Inlet2; #palha para misturador
1028        mMX402.Outlet to BLR403.Fuel; #combustiveis para caldeira
1029        MSS401.Outlet to BLR403.Air; #ar para a caldeira
1030        QSS401.Outlet_q to BLR403.Inlet_q; #calor para a caldeira
1031       
1032        BLR403.Steam to wTB404.Inlet; #vapor para a turbina de alta
1033
1034        wTB404.Outlet to wSP405.Inlet; #turbina de alta para splitter
1035       
1036        wSP405.Outlet1 to wMX406.Inlet1; #splitter para dessuper de alta
1037
1038        wMX406.Outlet to Cwq407.Inlet; #dessuper para trocador de alta
1039       
1040        Cwq407.Outlet to wSP408.Inlet; #trocador de alta para splitter de perdas
1041
1042        wSP408.Outlet1 to wFL409.Inlet; #splitter para flash
1043
1044        wSP405.Outlet2 to wTB410.Inlet; #splitter de alta para turbina de media
1045       
1046        wTB410.Outlet to wSP411.Inlet; #turbina de media para splitter de media
1047
1048        wSP411.Outlet1 to wMX412.Inlet1; #splitter de media para dessuper de media
1049       
1050        wFL409.OutletV to wMX413.Inlet1;
1051        wFL417.OutletV to wMX413.Inlet2;
1052       
1053        wMX412.Outlet to Cwq414.Inlet; #misturador de media para trocador de media
1054       
1055        Cwq414.Outlet to wSP415.Inlet; #trocador de media para splitter de perdas
1056       
1057        wFL409.OutletL to wMX416.Inlet1;
1058        wFL417.OutletL to wMX416.Inlet2;
1059
1060        wSP415.Outlet1 to wFL417.Inlet; #misturador para flash de media
1061       
1062        wSP411.Outlet2 to wTB418.Inlet; #splitter de media para turbina de baixa
1063       
1064        wTB418.Outlet to wSP419.Inlet; #turbina de baixa para splitter de baixa
1065
1066        wSP419.Outlet1 to wMX420.Inlet1; #splitter de baixa para dessuper de baixa
1067
1068        wMX420.Outlet to wMX421.Inlet1; #dessuper para misturador (vapor do flash de media e vapor saturado de baixa)
1069
1070        wMX413.Outlet to wMX421.Inlet2;
1071
1072        wMX421.Outlet to Cwq422.Inlet; #misturador de baixa para trocador de baixa
1073       
1074        Cwq422.Outlet to wSP423.Inlet; #trocador de baixa para splitter de perdas
1075
1076        wSP423.Outlet1 to wMX424.Inlet1; #condensado de baixa para misturador (liquido do flash de media e condensado de baixa)
1077        wMX416.Outlet to wMX424.Inlet2;
1078
1079        WSS402.Outlet to wPP425.Inlet; #agua de reposicao para bomba
1080        PSS401.Outlet_p to wPP425.Inlet_p; #potencia para a bomba da agua de reposicao
1081
1082        wMX424.Outlet to wMX426.Inlet1; #condensados para misturador (condensados e agua de reposicao)
1083        wPP425.Outlet to wMX426.Inlet2; #agua de reposicao para misturador
1084
1085        wMX426.Outlet to wMX427.Inlet1; #agua para desaerador
1086        wSP419.Outlet2 to wMX427.Inlet2; #vapor para desaerador
1087       
1088        wMX427.Outlet to wSP428.Inlet; #agua desaerada para splitter (dessuper de baixa)
1089       
1090        wSP428.Outlet1 to wPP429.Inlet; #splitter para bomba (dessuper de baixa)
1091        PSS402.Outlet_p to wPP429.Inlet_p; #trabalho para bomba do dessuper de baixa
1092
1093        wPP429.Outlet to wMX420.Inlet2; #bomba para dessuper de baixa
1094
1095        wSP428.Outlet2 to wSP430.Inlet; #splitter (dessuper de baixa) para splitter (dessuper de media)
1096       
1097        wSP430.Outlet1 to wPP431.Inlet; #splitter para bomba (dessuper de media)
1098        PSS403.Outlet_p to wPP431.Inlet_p; #trabalho para bomba do dessuper de media
1099
1100        wPP431.Outlet to wMX412.Inlet2; #bomba para dessuper de media
1101       
1102        wSP430.Outlet2 to wSP432.Inlet; #splitter (dessuper de media) para splitter (dessuper de alta)
1103
1104        wSP432.Outlet1 to wPP433.Inlet; #splitter para bomba (dessuper de alta)
1105        PSS404.Outlet_p to wPP433.Inlet_p; #potencia para bomba do dessuper de alta
1106       
1107        wPP433.Outlet to wMX406.Inlet2; #bomba para dessuper de alta
1108
1109        wSP432.Outlet2 to wPP434.Inlet; #splitter (dessuper de alta) para bomba (retorno da caldeira)
1110        PSS405.Outlet_p to wPP434.Inlet_p; #potencia para bomba do retorno da caldeira
1111       
1112        wPP434.Outlet to BLR403.Water; #bomba para retorno da caldeira
1113#*
1114*#
1115        SET
1116       
1117        #fonte de ar
1118        MSS401.CompositionBasis = "Molar";
1119        MSS401.ValidPhases = "Vapour-Only";
1120       
1121        #boiler
1122        BLR403.NReac = 4;
1123        # Reaction 1:cellulose(C6H10O5) + 6O2 --> 5H2O + 6CO2
1124        BLR403.stoic (:,1) = [5, 0, 0, 0, 0, 6, 0, -6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, 0, 0, 0, 0, 0, 0, 0, 0];
1125        # Reaction 2:hemicellulose(C5H8O4) + 5O2 --> 4H2O + 5CO2
1126        BLR403.stoic (:,2) = [4, 0, 0, 0, 0, 5, 0, -5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, 0, 0, 0, 0, 0, 0, 0];
1127        # Reaction 3:lignina(C10H11.6O3.9) + 10.95O2 --> 5.8H2O + 10CO2
1128        BLR403.stoic (:,3) = [5.8, 0, 0, 0, 0, 10, 0, -10.95, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, 0, 0, 0, 0, 0, 0];
1129        # Reaction 4:CH4 + 2 O2 --> CO2 + 2 H2O
1130        BLR403.stoic (:,4) = [2, 0, 0, 0, 0, 1, 0, -2, 0, 0, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
1131        BLR403.h = [-2804.2, -2170.9, -5243, -802.6] * 'kJ/mol';
1132        BLR403.limit = [NComp+sol.Cellulose, NComp+sol.Hemicell, NComp+sol.Lignin, flu.CH4];
1133
1134        #dessuper (alta)
1135        wMX406.Outlet.ValidPhases = "Vapour-Liquid";
1136
1137        #condensador alta
1138        Cwq407.Outlet.ValidPhases = "Liquid-Only";
1139
1140        #Dessuper de media
1141        wMX412.Outlet.ValidPhases = "Vapour-Liquid";
1142
1143        #misturador
1144        wMX413.Outlet.ValidPhases = "Vapour-Liquid";
1145
1146        #condensador media
1147        Cwq414.Outlet.ValidPhases = "Liquid-Only";
1148
1149        #misturador
1150        wMX416.Outlet.ValidPhases = "Vapour-Liquid";
1151       
1152        #Dessuper de baixa
1153        wMX420.Outlet.ValidPhases = "Vapour-Liquid";
1154
1155        #misturador (vapor do flash e dessuper baixa)
1156        wMX421.Outlet.ValidPhases = "Vapour-Liquid";
1157
1158        #condensador baixa
1159        Cwq422.Outlet.ValidPhases = "Liquid-Only";
1160
1161        #misturador (liquido do flash de media e condensado de baixa)
1162        wMX424.Outlet.ValidPhases = "Liquid-Only";
1163       
1164        #agua de reposicao
1165        WSS402.ValidPhases = "Liquid-Only";
1166
1167        #bomba
1168        wPP425.density = 1000 * 'kg/m^3';
1169
1170        #primeiro mixer (desaerador)
1171        wMX426.Outlet.ValidPhases = "Liquid-Only";
1172
1173        #segundo mixer (desaerador)
1174        wMX427.Outlet.ValidPhases = "Vapour-Liquid";
1175
1176        #bomba (dessuper baixa)
1177        wPP429.density = 1000 * 'kg/m^3';
1178
1179        #bomba (dessuper media)
1180        wPP431.density = 1000 * 'kg/m^3';
1181
1182        #bomba (dessuper alta)
1183        wPP433.density = 1000 * 'kg/m^3';
1184
1185        #bomba (retorno da caldeira)
1186        wPP434.density = 1000 * 'kg/m^3';
1187#*
1188*#
1189        SPECIFY
1190       
1191        #fonte de ar
1192        MSS401.Solid.Fw = 1e-6 * 'kg/h';
1193        MSS401.T = (50 + 273.15) * 'K';
1194        MSS401.P = 1 * 'atm';
1195        MSS401.CompositionOfSolid = [0.455992, 0.278661, 0.241138, 0.0242091, 0, 0, 0, 0, 0];
1196        MSS401.CompositionOfFluid = [0, 0, 0, 0, 0, 0, 0, 0.21, 0.79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
1197       
1198        #boiler
1199        #BLR403.f_losses = 0.01;
1200        BLR403.Gas.T = (190 + 273.15) * 'K'; #usina Alta Mogiana
1201        BLR403.Efficiency_LHV = 0.88; #comunicacao pessoal
1202        BLR403.T = (485 + 273.15) * 'K';
1203        BLR403.Pdrop = 0 * 'bar';
1204        BLR403.conv = [1, 1, 1, 1];
1205        BLR403.Ex_Air = 0.3;
1206        BLR403.Inlet_q.Q = 0 * 'kW';
1207
1208        #turbina de alta
1209        wTB404.Outlet.P = 17.4 * 'bar';
1210        wTB404.EF_T = ProPar.TurbineEff;
1211        wTB404.EF_ME = ProPar.MechanicalEff;
1212       
1213        #dessuper de alta
1214        wMX406.Outlet.v = 1;
1215
1216        #trocador representando demanda de vapor de alta do processo
1217        Cwq407.Outlet.P = 17.4 * 'bar';
1218        Cwq407.Outlet.T = (200 + 273.15) * 'K';
1219        Cwq407.U = ProPar.U;
1220        Cwq407.lmtd = 10 * 'K';
1221
1222        #perdas do processo (alta)
1223        wSP408.frac = 0.96;
1224
1225        #flash (alta)
1226        #wFL409.P = 6 * 'bar';
1227        wFL409.P = 2.5 * 'bar';
1228        wFL409.v = 0.145390044; #valor especificado para que 'Q' seja aproximadamente 0
1229       
1230        #turbina de media
1231        wTB410.Outlet.P = 6 * 'bar';
1232        wTB410.EF_T = ProPar.TurbineEff;
1233        wTB410.EF_ME = ProPar.MechanicalEff;
1234
1235        #dessuper de media
1236        wMX412.Outlet.v = 1;
1237
1238        #trocador representando demanda de vapor de media do processo
1239        Cwq414.Pdrop = 0 * 'bar';
1240        Cwq414.Outlet.T = (154 + 273.15) * 'K';
1241        Cwq414.U = ProPar.U;
1242        Cwq414.lmtd = 10 * 'K';
1243
1244        #perdas do processo (media)
1245        wSP415.frac = 0.96;
1246
1247        #flash (media)
1248        wFL417.P = 2.5 * 'bar';
1249        wFL417.v = 0.0523755; #valor especificado para que 'Q' seja aproximadamente 0
1250
1251        #turbina de baixa
1252        wTB418.Outlet.P = 2.5 * 'bar';
1253        wTB418.EF_T = ProPar.TurbineEff;
1254        wTB418.EF_ME = ProPar.MechanicalEff;
1255
1256        #dessuper de baixa
1257        wMX420.Outlet.v = 1;
1258
1259        #trocador representando demanda de vapor de baixa do processo
1260        Cwq422.Outlet.P = 2.092 * 'bar';
1261        Cwq422.Outlet.T = (102 + 273.15) * 'K';
1262        Cwq422.U = ProPar.U;
1263        Cwq422.lmtd = 10 * 'K';
1264
1265        #perdas do processo (baixa)
1266        wSP423.frac = 0.96;
1267
1268        #agua de reposicao
1269        WSS402.T = ProPar.roomT;
1270        WSS402.P = 1 * 'atm';
1271
1272        #bomba reposicao
1273        wPP425.PIn = 1.65 * 'bar';
1274        wPP425.n = ProPar.PumpEff;
1275
1276        #desaerador
1277        wMX427.Outlet.v = 0;
1278       
1279        #bomba dessuper baixa
1280        wPP429.Outlet.P = 2.5 * 'bar';
1281        wPP429.n = ProPar.PumpEff;
1282
1283        #bomba dessuper media
1284        wPP431.Outlet.P = 6 * 'bar';
1285        wPP431.n = ProPar.PumpEff;
1286
1287        #bomba dessuper alta
1288        wPP433.Outlet.P = 17.4 * 'bar';
1289        wPP433.n = ProPar.PumpEff;
1290
1291        #bomba retrno a caldeira
1292        wPP434.Outlet.P = 65 * 'bar';
1293        wPP434.n = ProPar.PumpEff;
1294
1295        # Custo operacional - Cogeracao
1296        VARIABLES
1297        EnergyProduction     as positive (Unit = 'kW/h');
1298       
1299        EQUATIONS
1300        # Vapor produzido
1301        EnergyProduction = wTB404.Outlet.Fw / (11.92 * 'kg/kW') * 0.001
1302                                         + wTB410.Outlet.Fw / (18.06 * 'kg/kW') * 0.001
1303                                         + wTB418.Outlet.Fw / (26.13 * 'kg/kW') * 0.001;
1304       
1305#*
1306*#
1307#-------------------- pretratamento ----------------------#
1308        DEVICES
1309        PSS501 as power_sourceR; #trabalho para a bomba
1310        mPP501 as pump_mL; #"bomba" que pressuriza o bagaco
1311
1312        mMX502 as mixer_mR; #misturador bagaco-agua
1313
1314        RTS504 as stoic_reactor; #reator de pre-tratamento
1315       
1316        MSS501 as main_sourceR; #fonte de agua de diluicao
1317        mPP505 as pump_mL; #bomba que pressuriza a agua de diluicao
1318        PSS502 as power_sourceR; #trabalho para a bomba
1319       
1320        mFL508 as exo_flash; #flash para abaixar a pressao da mistura
1321
1322        MSS502 as main_sourceR; #fonte de amonia para neutralizacao da mistura
1323        mMX509 as mixer_mR; #misturador
1324
1325        MSS503 as main_sourceR; #fonte de agua de diluicao
1326        mMX510 as mixer_mR; #misturador bagaco tratado - agua de diluicao
1327
1328        SEP511 as sepR; #filtro
1329#*
1330*#
1331        CONNECTIONS
1332        mSP126.Outlet1 to mPP501.Inlet; #bagaco
1333        PSS501.Outlet_p to mPP501.Inlet_p; #potencia para bomba
1334
1335        mPP501.Outlet to mMX502.Inlet1; #bomba para misturador
1336
1337        #mMX502.Outlet to pinch to RTS504.Inlet; #misturador para o pinch para o reator de pre-tratamento
1338
1339        MSS501.Outlet to mPP505.Inlet; #fonte de agua para bomba
1340        PSS502.Outlet_p to mPP505.Inlet_p; #trabalho para bomba
1341       
1342        #mPP505.Outlet to pinch to mMX502.Inlet2; #agua de diluicao para aquecedor
1343       
1344        #RTS504.Outlet to pinch to mFL508.Inlet; #bagaco pre-tratado para o pinch para o flash
1345
1346        mFL508.OutletL to mMX509.Inlet1; #flash (liquido) para misturador
1347        MSS502.Outlet to mMX509.Inlet2; #amonia para misturador
1348
1349        mMX509.Outlet to mMX510.Inlet1; #misturador para misturador
1350        MSS503.Outlet to mMX510.Inlet2; #agua de diluicao para misturador
1351
1352        mMX510.Outlet to SEP511.Inlet; #misturador para filtro
1353#*
1354*#
1355        SET
1356
1357        #pretreatment reactor
1358        #reactions:
1359        #                       C6H10O5(limit) + H2O -> C6H12O6 conv = 8.12 %
1360        #                       C6H10O5(limit) -> C6H6O3 + 2H2O conv = 0.07 %
1361        #                       C6H10O5(limit) + H2O -> 12C0.5HO0.5 conv = 5.28 %
1362        #                       C5H8O5(limit) + H2O -> C5H10O5 conv = 46.53 %
1363        #                       C5H8O5(limit) + H2O -> 10C0.5HO0.5 conv = 25.77 % This represents the arabinose reaction + unknowns produced
1364        #                       C5H8O5(limit) -> C5H4O2 + 2H2O conv = 3.89 %
1365        #                       C5H8O5(limit) + H2O -> 5/2C2H4O2 conv = 7.39 %
1366        #                       C10H11.6O2.9(limit) -> C10H11.6O2.9(liq) conv = 17.2 %
1367       
1368        RTS504.NReac = 8;
1369        #cellulose to glucose
1370        RTS504.stoic (:,1) = [-1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, 0, 0, 0, 0, 0, 0, 0, 0];
1371        #cellulose to 5-HMF
1372        RTS504.stoic (:,2) = [2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, -1, 0, 0, 0, 0, 0, 0, 0, 0];
1373        #cellulose to solunkn
1374        RTS504.stoic (:,3) = [-1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 0, 0, 0, 0, 0, 0, -1, 0, 0, 0, 0, 0, 0, 0, 0];
1375        #hemicellulose to xylose
1376        RTS504.stoic (:,4) = [-1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, 0, 0, 0, 0, 0, 0, 0];
1377        #hemicellulose to solunkn
1378        RTS504.stoic (:,5) = [-1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 0, 0, 0, 0, 0, 0, 0, -1, 0, 0, 0, 0, 0, 0, 0];
1379        #hemicellulose to furfural
1380        RTS504.stoic (:,6) = [2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, 0, 0, 0, 0, 0, 0, 0];
1381        #hemicellulose to acetic acid
1382        RTS504.stoic (:,7) = [-1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, 0, 0, 0, 0, 0, 0, 0];
1383        #lignin to solunkn
1384        RTS504.stoic (:,8) = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, -1, 0, 0, 0, 0, 0, 0];
1385        RTS504.limit = [NComp+sol.Cellulose, NComp+sol.Cellulose, NComp+sol.Cellulose, NComp+sol.Hemicell, NComp+sol.Hemicell, NComp+sol.Hemicell, NComp+sol.Hemicell, NComp+sol.Lignin];
1386        RTS504.h = [0, 0, 0, 0, 0, 0, 0, 0] * 'kJ/mol';
1387       
1388        #entrada de agua
1389        MSS501.ValidPhases = "Liquid-Only";
1390        MSS501.CompositionBasis = "Mass";
1391
1392        #entrada de amonia
1393        MSS502.ValidPhases = "Liquid-Only";
1394        MSS502.CompositionBasis = "Mass";
1395
1396        #entrada de agua
1397        MSS503.ValidPhases = "Liquid-Only";
1398        MSS503.CompositionBasis = "Mass";
1399#*
1400*#
1401        SPECIFY
1402       
1403        #bomba para o bagaco
1404        mPP501.PIn = 14.1 * 'atm';
1405        mPP501.n = ProPar.PumpEff;
1406       
1407        #reator de pre-tratamento
1408        #reactions:
1409        #                       C6H10O5(limit) + H2O -> C6H12O6 conv = 8.12 %
1410        #                       C6H10O5(limit) -> C6H6O3 + 2H2O conv = 0.07 %
1411        #                       C6H10O5(limit) + H2O -> 12C0.5HO0.5 conv = 5.28 %
1412        #                       C5H8O5(limit) + H2O -> C5H10O5 conv = 46.53 %
1413        #                       C5H8O5(limit) + H2O -> 10C0.5HO0.5 conv = 25.77 % This represents the arabinose reaction + unknowns produced
1414        #                       C5H8O5(limit) -> C5H4O2 + 2H2O conv = 3.89 %
1415        #                       C5H8O5(limit) + H2O -> 5/2C2H4O2 conv = 7.39 %
1416        #                       C10H11.6O2.9(limit) -> C10H11.6O2.9(liq) conv = 17.2 %
1417        #RTS504.conv = [0.0812, 0.0007, 0.0528, 0.4653, 0.2577, 0.0389, 0.0739, 0.172];
1418        #RTS504.Outlet.T = (195 + 273.15) * 'K';
1419        RTS504.reac_time = 600 * 's'; #10 min
1420       
1421        #fonte de agua
1422        MSS501.CompositionOfFluid = [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
1423        MSS501.Solid.Fw = 1e-6 * 'kg/h';
1424        MSS501.CompositionOfSolid = [1, 0, 0, 0, 0, 0, 0, 0, 0];
1425        MSS501.T = 303.15 * 'K';
1426        MSS501.P = 1 * 'atm';
1427
1428        #bomba da agua de diluicao
1429        mPP505.PIn = 14.1 * 'atm';
1430        mPP505.n = ProPar.PumpEff;
1431
1432        #flash
1433        mFL508.Pdrop = 14.1 * 'atm';
1434        mFL508.OutletV.T = (80 + 273.15) * 'K';
1435
1436        #fonte de amonia
1437        MSS502.CompositionOfFluid = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
1438        MSS502.Solid.Fw = 1e-6 * 'kg/h';
1439        MSS502.CompositionOfSolid = [1, 0, 0, 0, 0, 0, 0, 0, 0];
1440        MSS502.T = ProPar.roomT;
1441        MSS502.P = 1 * 'atm';
1442
1443        #fonte de agua de diluicao
1444        MSS503.CompositionOfFluid = [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
1445        MSS503.Fluid.Fw = 1e-6 * 'kg/h';
1446        MSS503.Solid.Fw = 1e-6 * 'kg/h';
1447        MSS503.CompositionOfSolid = [1, 0, 0, 0, 0, 0, 0, 0, 0];
1448        MSS503.T = ProPar.roomT;
1449        MSS503.P = 1 * 'atm';
1450
1451        #filtro
1452        SEP511.humidity = 0.5;
1453        SEP511.frac_sol = 0.995;
1454       
1455        #fracao de solidos
1456        #SolMassFracPre = 0.15;
1457        #SolMassFracPre = 0.2;
1458       
1459        VARIABLES
1460        SolMassFracPre as fraction      (Brief = "Solid Mass Fraction in the Pretreatment Reactor", Default = 0.15);
1461
1462        EQUATIONS
1463        #fracao de solidos no reator de pre-tratamento
1464        mMX502.Outlet.Solid.Fw = SolMassFracPre * mMX502.Outlet.Total.Fw;
1465       
1466        #amonia neutraliza metade do acido acetico produzido no reator de pre-tratamento
1467        MSS502.Fluid.Fw = 0.5 * mFL508.OutletL.Fluid.Fw * mFL508.OutletL.Fluid.zw(flu.AceticAcid);
1468       
1469        # Custo operacional - Etapa de pretratamento   
1470        Input_PreTreat = EcoPar.WorkedHours * (MSS501.Outlet.Total.Fw * EcoPar.WaterCost +
1471                                                                   MSS502.Outlet.Total.Fw * EcoPar.AmmoniaCost +
1472                                                                   MSS503.Outlet.Total.Fw * EcoPar.WaterCost);
1473       
1474        VARIABLES
1475        Input_PreTreat as currency (Brief = "Operational expenditure in the pretreatment stage");
1476       
1477#*
1478*#
1479#---------------------- hidrolise ------------------------#
1480        DEVICES
1481        MSS601 as main_sourceR; #fonte de agua de diluicao
1482        mMX601 as mixer_mR; #misturador
1483
1484        MSS602 as main_sourceR; #fonte de enzimas
1485        mMX603 as mixer_mR; #misturador
1486
1487        HLS604 as stoic_reactor; #reator de hidrolise
1488
1489        MSS603 as main_sourceR; #fonte de agua de diluicao
1490        mMX605 as mixer_mR; #misturador
1491
1492        SEP606 as sepR; #filtro
1493       
1494        mPP607 as pump_mR; #bomba do hidrolisado
1495        PSS601 as power_sourceR; #trabalho para bomba
1496#*
1497*#
1498        CONNECTIONS
1499        SEP511.OutletS to mMX601.Inlet1; #bagaco pre-tratado para misturador
1500        MSS601.Outlet to mMX601.Inlet2; #agua de diluicao para misturador
1501
1502        #mMX601.Outlet to pinch to mMX603.Inlet1; #misturador para pinch para misturador
1503
1504        MSS602.Outlet to mMX603.Inlet2; #enzima para misturador
1505
1506        mMX603.Outlet to HLS604.Inlet; #misturador para reator
1507
1508        HLS604.Outlet to mMX605.Inlet1; #reator para misturador
1509        MSS603.Outlet to mMX605.Inlet2; #agua de diluicao para misturador
1510
1511        mMX605.Outlet to SEP606.Inlet; #misturador para filtro
1512       
1513        SEP606.OutletL to mPP607.Inlet; #filtrado para bomba
1514        PSS601.Outlet_p to mPP607.Inlet_p; #trabalho para bomba
1515#*
1516*#
1517        SET
1518        #entrada de agua de diluicao
1519        MSS601.ValidPhases = "Liquid-Only";
1520        MSS601.CompositionBasis = "Mass";
1521       
1522        #fonte de enzima
1523        MSS602.ValidPhases = "Liquid-Only";
1524        MSS602.CompositionBasis = "Mass";
1525       
1526        #hydrolysis reactor
1527        #reactions:
1528        #                       C6H10O5(limit) + H2O -> C6H12O6
1529        HLS604.NReac = 1;
1530        #cellulose to glucose
1531        HLS604.stoic (:,1) = [-1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, 0, 0, 0, 0, 0, 0, 0, 0];
1532        HLS604.limit = [NComp+sol.Cellulose];
1533        HLS604.h = [0] * 'kJ/mol';
1534        HLS604.density = 1000 * 'kg/m^3';
1535
1536        #entrada de bagaco agua de diluicao
1537        MSS603.ValidPhases = "Liquid-Only";
1538        MSS603.CompositionBasis = "Mass";
1539       
1540        #Bomba
1541        mPP607.density = 1000 * 'kg/m^3';
1542       
1543       
1544#*
1545*#
1546        SPECIFY
1547       
1548        #fonte de agua
1549        MSS601.CompositionOfFluid = [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
1550        MSS601.Solid.Fw = 1e-6 * 'kg/h';
1551        MSS601.CompositionOfSolid = [1, 0, 0, 0, 0, 0, 0, 0, 0];
1552        MSS601.T = ProPar.roomT;
1553        MSS601.P = 1 * 'atm';
1554
1555        #fonte de enzima
1556        MSS602.CompositionOfFluid = [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
1557        MSS602.CompositionOfSolid = [0, 0, 0, 0, 1, 0, 0, 0, 0];
1558        MSS602.T = 303.15 * 'K';
1559        MSS602.P = 1 * 'atm';
1560
1561        #reator de hidrolise
1562        #reactions:
1563        #                       C6H10O5(limit) + H2O -> C6H12O6
1564        #HLS604.conv = [0.59];
1565        #HLS604.Outlet.T = (50 + 273.15) * 'K';
1566        #HLS604.reac_time = 48 * 'h';
1567
1568        #fonte de agua
1569        MSS603.CompositionOfFluid = [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
1570        MSS603.Fluid.Fw = 1e-6 * 'kg/h';
1571        MSS603.Solid.Fw = 1e-6 * 'kg/h';
1572        MSS603.CompositionOfSolid = [1, 0, 0, 0, 0, 0, 0, 0, 0];
1573        MSS603.T = 303.15 * 'K';
1574        MSS603.P = 1 * 'atm';
1575
1576        #filtro
1577        SEP606.humidity = 0.5;
1578        SEP606.frac_sol = 0.99;
1579       
1580        #bomba
1581        mPP607.Outlet.P = 1.7 * 'atm';
1582        mPP607.n = ProPar.PumpEff;
1583       
1584        #principais condicoes operacionais hidrolise
1585        #EnzymeConc = 150 * 'g/l';
1586        #SolMassFracHydro = 0.15;
1587        #SolMassFracHydro = 0.10;
1588        #EnzymeLoad = 10;
1589
1590#*
1591*#
1592        VARIABLES
1593        EnzymeConc as Real (Brief = "Enzyme Concentration", Unit='g/l', Default = 150);
1594        SolMassFracHydro as fraction (Brief = "Solid Mass Fraction in the Hydrolysis Reactor", Default = 0.10);
1595        EnzymeLoad as positive (Brief = "Enzyme Load in FPU/g of cellulose", Default = 10);
1596       
1597        PARAMETERS
1598        EnzymeActivity as positive (Brief = "Complex enzyme activity in U/g", Default = 500);
1599       
1600        SET
1601        EnzymeActivity = 500;
1602       
1603        EQUATIONS
1604
1605        #Enzyme concentration
1606        #1000 * 'kg/m^3' * MSS602.Outlet.Solid.zw(sol.Enzyme) * MSS602.Outlet.Solid.Fw = EnzymeConc * MSS602.Outlet.Total.Fw;
1607        #assumindo densidade da mistura de 1000 * 'kg/m^3'
1608        1150 * 'kg/m^3' * MSS602.Outlet.Solid.zw(sol.Enzyme) * MSS602.Outlet.Solid.Fw = EnzymeConc * MSS602.Outlet.Total.Fw;
1609        #assumindo densidade da mistura de 1.15 g/mL - Cellic CTec2 - Sigma-Aldrich
1610       
1611        #amount of enzyme in the hydrolysis reactor
1612        EnzymeLoad * HLS604.Inlet.Solid.zw(sol.Cellulose) = EnzymeActivity * HLS604.Inlet.Solid.zw(sol.Enzyme);
1613       
1614        #Solid mass fraction in the hydrolysis reactor
1615        HLS604.Inlet.Solid.Fw = SolMassFracHydro * HLS604.Inlet.Total.Fw;
1616
1617        # Custo operacional - Etapa de hidrolise e da producao de enzima
1618        Input_Hydr = EcoPar.WorkedHours * (MSS601.Outlet.Total.Fw * EcoPar.WaterCost +
1619                                                           MSS602.Outlet.Total.Fw * MSS602.Outlet.Total.zw(NComp + sol.Enzyme) * EnzymecostFinal +
1620                                                           MSS603.Outlet.Total.Fw * EcoPar.WaterCost);
1621       
1622        Input_Enzyme = EcoPar.WorkedHours *  MSS602.Outlet.Total.Fw * MSS602.Outlet.Total.zw(NComp + sol.Enzyme) * EnzymecostFinal;
1623       
1624       
1625        VARIABLES
1626        Input_Hydr      as currency (Brief = "Operational expenditure in the Hydrolisis stage");
1627        Input_Enzyme as currency (Brief = "Operational expenditure in the enzyme in Hydrolisis stage");
1628       
1629#*
1630*#
1631#----------------- fermentacao xilose ---------------------#
1632        DEVICES
1633
1634        PSS701 as power_sourceR; #potencia para bomba
1635        mPP701 as pump_mL; #bomba para licor de C5
1636
1637        WSS701 as water_sourceR; #vapor de aquecimento para o evaporador
1638        EVP702 as evaporator3; # 1 evaporador
1639        EVP703 as evaporator3; # 2 evaporador
1640        EVP704 as evaporator3; # 3 evaporador
1641
1642        PSS702 as power_sourceR; #potencia para segunda bomba
1643        mPP704 as pump_mL; #segunda bomba
1644
1645        FMS706 as stoic_fermenter; #fermentador C5 e C6
1646       
1647#*
1648*#
1649        CONNECTIONS
1650
1651        SEP511.OutletL to mPP701.Inlet; #licor C5 para bomba
1652        PSS701.Outlet_p to mPP701.Inlet_p; #potencia para bomba
1653
1654        mPP701.Outlet to EVP702.Inlet; #licor C5 para evaporador
1655        WSS701.Outlet to EVP702.InletS; #vapor para o 2 evaporador
1656       
1657        EVP702.OutletL to EVP703.Inlet; #licor C5 concentrado para 2 evaporador
1658        EVP702.OutletV to EVP703.InletS; #vapor para o 3 evaporador
1659       
1660        EVP703.OutletL to EVP704.Inlet; #licor C5 concentrado para 3 evaporador
1661        EVP703.OutletV to EVP704.InletS;
1662       
1663        EVP704.OutletL to mPP704.Inlet; #licor C5 concentrado para segunda bomba
1664       
1665        PSS702.Outlet_p to mPP704.Inlet_p; #potencia para segunda bomba
1666
1667        #mPP704.Outlet to pinch to FMS706.Inlet; #licor C5 para o resfriador para o fermentador
1668       
1669#*
1670*#     
1671        SET
1672       
1673        #bomba da agua de diluicao
1674        mPP701.density = 1000 * 'kg/m^3';
1675
1676        #Fonte de vapor
1677        WSS701.ValidPhases = "Vapour-Liquid";
1678       
1679        #Evaporador
1680        EVP702.Brix = [0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
1681        EVP703.Brix = [0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
1682        EVP704.Brix = [0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
1683
1684        #bomba para licor concetrado
1685        mPP704.density = 1000 * 'kg/m^3';
1686       
1687        #C5 fermentor
1688        #reactions:
1689        #                       C6H12O6 -> 2C2H6O + 2CO2 conv = 90.48 %
1690        #                       C6H12O6 + 2H2O -> 2C2H4O + 2CO2 + 4H2 conv = 1.19 %
1691        #                       C6H12O6 + 2H2 -> 2C3H8O3 conv = 2.67 %
1692        #                       C5H10O5 -> 5/3C2H6O + 5/3CO2 conv = 91.7742%
1693        #                       C5H10O5 -> 5/2C2H4O2 conv = 1.5 %
1694        #                       C5H10O5 + 5/3H2 -> 5/3C3H8O3 conv = 2.8 %
1695        FMS706.NReac = 6;
1696        #glucose to ethanol
1697        FMS706.stoic (:,1) = [0, 0, -1, 0, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
1698        #glucose to acetic acid
1699        FMS706.stoic (:,2) = [-1.5524, 0, -1, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
1700        #glucose to glycerol
1701        FMS706.stoic (:,3) = [-0.2238, 0, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
1702        #xylose to ethanol
1703        FMS706.stoic (:,4) = [0, 0, 0, -1, 5/3, 5/3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
1704        #xylose to acetic acid
1705        FMS706.stoic (:,5) = [0, 0, 0, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
1706        #xylose to glycerol
1707        FMS706.stoic (:,6) = [-0.1865, 0, 0, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5/3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
1708        FMS706.limit = [flu.Glucose, flu.Glucose, flu.Glucose, flu.Xylose, flu.Xylose, flu.Xylose];
1709        FMS706.Brix = [0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
1710        FMS706.fermentation = "glucose-xylose";
1711       
1712#*
1713*#
1714        SPECIFY
1715
1716        #bomba do licor de pentoses
1717        mPP701.Outlet.P = 1.7 * 'atm';
1718        mPP701.n = ProPar.PumpEff;
1719       
1720        #segunda bomba
1721        mPP704.Outlet.P = 1.2 * 'atm';
1722        mPP704.n = ProPar.PumpEff;
1723       
1724        #vapor de aquecimento para concentracao do caldo C5
1725        WSS701.v = 1;
1726        WSS701.P = 2.5 * 'bar';
1727       
1728        #evaporadores
1729        EVP702.OutletV.P = 1.69 * 'bar';
1730        EVP703.OutletV.P = 1.31 * 'bar';
1731        EVP704.OutletV.P = 0.93 * 'bar';
1732
1733        #C5 fermentor
1734        #reactions:
1735        #                       C6H12O6 -> 2C2H6O + 2CO2 conv = 90.48 %
1736        #                       C6H12O6 + 2H2O -> 2C2H4O + 2CO2 + 4H2 conv = 1.19 %
1737        #                       C6H12O6 + 2H2 -> 2C3H8O3 conv = 2.67 %
1738        #                       C5H10O5 -> 5/3C2H6O + 5/3CO2 conv = 91.7742%
1739        #                       C5H10O5 -> 5/2C2H4O2 conv = 1.5 %
1740        #                       C5H10O5 + 5/3H2 -> 5/3C3H8O3 conv = 2.8 %
1741        #FMS706.conv = [0.9048, 0.0119, 0.0267, (0.95-1/31), 0.015, 0.028];
1742        FMS706.conv(1:3) = [0.9048, 0.0119, 0.0267];
1743        FMS706.conv(5:6) = [0.015, 0.028];
1744        #FMS706.conv(4) = 0.917742;
1745       
1746        FMS706.Outlet.T = (35 + 273.15) * 'K';
1747       
1748        #Conc_xylose = 60 * 'g/l';
1749       
1750        VARIABLES
1751        Conc_xylose as Real     (Brief = "Xylose Concentration", Unit='g/l', Lower = 1e-6);
1752        RT_Fermenter as time_h (Brief = "Residence Time", Default = 5.4);
1753        Pr_xylose       as Real (Brief =  "C5 ethanol global volumetric productivity", Unit = 'g/l/h', Lower = 1e-6);
1754       
1755        EQUATIONS
1756        #concentracao de acucares no evaporador
1757        Conc_xylose * EVP704.OutletL.Total.Fw = 1000 * 'kg/m^3' * EVP704.OutletL.Fluid.zw(flu.Xylose) * EVP704.OutletL.Fluid.Fw;
1758       
1759        RT_Fermenter / (994.01 * 'kg/m^3') = FMS706.Outlet.Total.zw(flu.Ethanol) / Pr_xylose;
1760        #RT_Fermenter * Pr_xylose = FMS706.Outlet.Total.Fw * FMS706.Outlet.Total.zw(flu.Ethanol) / (FMS706.Outlet.Total.Fw / (994.01 * 'kg/m^3'));
1761       
1762        SPECIFY
1763        RT_Fermenter = 5.4 * 'h';
1764#*
1765*#
1766       
1767        PARAMETERS
1768        C5FermRaw as Real (Brief = "Raw material Costs", Unit = 'US$ / kg');
1769       
1770        SET
1771        C5FermRaw = (0.84 /EcoPar.ExchangeRate) * 'US$'/ 12 / 0.98 * '1/kg' #KH2PO4 - xylose base - (preco / qde usada por g de xylose / pureza)
1772                                        + (0.168/EcoPar.ExchangeRate) * 'US$' / 30 / 0.99 * '1/kg' #MgSO4 - xylose base - (preco / qde usada por g de xylose / pureza)
1773                                        + (0.42/EcoPar.ExchangeRate) * 'US$'/ 40 / 0.99 * '1/kg' #Ureia  - xylose base - (preco / qde usada por g de xylose / pureza)
1774                                        + (0.21/EcoPar.ExchangeRate) * 'US$'/ 30 / 0.94 * '1/kg'; #CaCl2  - xylose base - (preco / qde usada por g de xylose / pureza)
1775               
1776        VARIABLES
1777        Input_C5Ferm as currency (Brief = "Operational expenditure in the Xylose Fermentation stage");
1778       
1779        EQUATIONS       
1780        Input_C5Ferm = FMS706.Inlet.Total.Fw * FMS706.Inlet.Total.zw(flu.Xylose) * C5FermRaw * EcoPar.WorkedHours;
1781#*
1782*#
1783       
1784#------------------- Calculos extras ----------------------#
1785        VARIABLES
1786        HydrEthProd as flow_vol (Brief = "Hydrous Ethanol Volumetric Production @ 35 C");
1787        HydrEthSpecProd as Real (Brief = "Hydrous Ethanol Specific Production @ 35 C", Unit = 'l/t');
1788       
1789        AnhyEthProd as flow_vol (Brief = "Anhydrous Ethanol Volumetric Production @ 35 C");
1790        AnhyEthSpecProd as Real (Brief = "Anhydrous Ethanol Specific Production @ 35 C", Unit = 'l/t');
1791       
1792        VinasseProd as flow_vol (Brief = "Vinasse Volumetric Production @ 75 C");
1793        VinSpecProd as Real (Brief = "Vinasse Specific Production @ 75 C");
1794       
1795        SteamCons(3) as flow_mass (Brief = "Steam Consumption by the Several Process Stages");
1796        SteamCons_total as flow_mass (Brief = "Steam Consumption");
1797        SteamSpecCons(3) as Real (Brief = "Steam Specific Consumption by the process", Unit = 'kg/t');
1798        SteamSpecConsEtOH(3) as Real (Brief = "Steam Specific Consumption by the Several Process Stages (Etanol Base)", Unit = 'kg/l');
1799       
1800        Wtotal as potency (Brief = "Total Electric Energy Produced", Upper = 1e10);
1801        WCons(3) as potency (Brief = "Power Consumption by the Several Process Stages", Upper = 1e10);
1802        Wnet as potency (Brief = "Electric Energy Surplus Produced", Upper = 1e10);
1803       
1804        EQUATIONS
1805        HydrEthProd = COL303.HydrEth.Fluid.Fw / (790.5 * 'kg/m^3');
1806       
1807        HydrEthSpecProd = HydrEthProd / ProPar.SugarcaneFlow;
1808       
1809        AnhyEthProd = DEH304.AnhyEth.Fluid.Fw / (778.24 * 'kg/m^3');
1810       
1811        AnhyEthSpecProd = AnhyEthProd / ProPar.SugarcaneFlow;
1812       
1813        VinasseProd = COL303.Vinasse.Fluid.Fw / (974.850 * 'kg/m^3'); #considerando a densidade da agua a 75 C
1814       
1815        VinSpecProd = VinasseProd / AnhyEthProd;
1816       
1817        SteamCons(1) = Cwq422.Inlet.Fw; #vapor de escape a 2.5 bar
1818        SteamCons(2) = Cwq414.Inlet.Fw; #vapor de 6 bar
1819        SteamCons(3) = Cwq407.Inlet.Fw; #vapor de 17.4 bar
1820        SteamCons_total = sum(SteamCons);
1821       
1822        SteamSpecCons = SteamCons / ProPar.SugarcaneFlow;
1823       
1824        SteamSpecConsEtOH = SteamCons / AnhyEthProd;
1825       
1826        Wtotal = wTB404.Outlet_p.W + wTB410.Outlet_p.W + wTB418.Outlet_p.W;
1827       
1828        WCons(1) = 16 * 'kW * h/t' * ProPar.SugarcaneFlow; #consumo da moenda Cortez rodrigues (2017) e pina (2017)
1829        WCons(2) = 12 * 'kW * h/t' * ProPar.SugarcaneFlow; #consumo do processo Cortez rodrigues (2017) e pina (2017)
1830        WCons(3) = 0 * 'kW';
1831
1832        Wnet = Wtotal - sum(WCons);
1833#*
1834*#
1835#*--------------------------------------------
1836*               Pinch
1837---------------------------------------------*#
1838
1839        PARAMETERS
1840        Pinch as Plugin (Type = "Pinch", numCorrentes = 15, numUtilQuente = 3, numUtilFria = 1);
1841       
1842        DEVICES
1843        INT101 as heat_source_int;
1844        INT102 as heat_source_int;
1845        INT103 as heat_source_int;
1846        INT104 as heat_source_int;
1847
1848        SS101 as water_sourceR;
1849       
1850        SS102 as water_sourceR;
1851        SS103 as water_sourceR;
1852        SS104 as water_sourceR;
1853       
1854        PinchPoint as PinchPointInt;
1855       
1856        TAC_HEN as TAC_HEN;
1857       
1858       
1859#*------Fonte de agua e vapor do pinch-------------*#
1860       
1861        CONNECTIONS             
1862        # Fonte de agua de resfriamento
1863        SS101.Outlet to PinchPoint.Inlet_f(1);
1864       
1865        #Fonte de baixa, media e alta
1866        SS102.Outlet to PinchPoint.Inlet_q(1);
1867        SS103.Outlet to PinchPoint.Inlet_q(2);
1868        SS104.Outlet to PinchPoint.Inlet_q(3);
1869       
1870        SET
1871        SS101.ValidPhases = "Liquid-Only";
1872       
1873        SS102.ValidPhases = "Vapour-Liquid";
1874        SS103.ValidPhases = "Vapour-Liquid";
1875        SS104.ValidPhases = "Vapour-Liquid";
1876       
1877        PinchPoint.NCorrentes = 11; #numero de correntes de processo que trocam calor
1878        PinchPoint.NCorrentesInt = 4;#Numero de correntes que entram ou saem do interpolador
1879        PinchPoint.NUtilQuente = 3; #Numero de utilidades quentes
1880        PinchPoint.NUtilFria = 1; #Numero de utilidades frias
1881        PinchPoint.method = "h";
1882
1883        #Parametros para a estimativa do TAC da HEN
1884        TAC_HEN.a_annu = 4897 * 'US$/yr';
1885        TAC_HEN.b_annu = 33.0 * 'US$/(m^1.56)/yr';
1886        TAC_HEN.c_annu = 0.78;
1887        TAC_HEN.Cost_Hot_Util = 96 * 'US$/kW/yr';
1888        TAC_HEN.Cost_Cold_Util = 50 * 'US$/kW/yr';
1889       
1890        SPECIFY
1891        #Temperatura minima de aproximacao
1892        PinchPoint.DTmin = 10 * 'K';
1893       
1894        #Fonte de agua de resfriamento
1895        SS101.T = 303.15 * 'K';
1896        SS101.P = 1 * 'bar';
1897        PinchPoint.Outlet_f(1).T = 333.15 * 'K';
1898        PinchPoint.heat_trans_cold(1) = 1.38 * 'kW/m^2/K';
1899       
1900        #Fonte de vapor
1901        SS102.P = 2.5 * 'bar';
1902        SS102.v = 1;
1903        PinchPoint.heat_trans_hot(1) = 1.38 * 'kW/m^2/K' ;
1904
1905        SS103.P = 6 * 'bar';
1906        SS103.v = 1;
1907        PinchPoint.heat_trans_hot(2) = 1.38 * 'kW/m^2/K' ;
1908       
1909        SS104.P = 17.5 * 'bar';
1910        SS104.v = 1;
1911        PinchPoint.heat_trans_hot(3) = 1.38 * 'kW/m^2/K' ;
1912       
1913        EQUATIONS
1914       
1915        TAC_HEN.Area_HEN        = PinchPoint.Area_HEN;
1916        TAC_HEN.Demand_Hot      = Cwq422.Outlet_q.Q + Cwq414.Outlet_q.Q + Cwq407.Outlet_q.Q;
1917        TAC_HEN.Demand_Cold = PinchPoint.QC_total;
1918        TAC_HEN.num_util        = PinchPoint.N_Troca;
1919       
1920#*----------Integracao correntes (aquecer ou resfriar) ------
1921        Os trocadores foram retirados e todas as correntes entram no pinch e
1922        retornam para o processo.
1923*#
1924        CONNECTIONS
1925       
1926        #Etapa de extracao e tratamento
1927        mMX113.Outlet to PinchPoint.Inlet(1);
1928        PinchPoint.Outlet(1) to LTS115.Inlet;
1929       
1930        mPP116.Outlet to PinchPoint.Inlet(2);
1931        PinchPoint.Outlet(2) to mFL118.Inlet;
1932       
1933        #Concentracao e fermentacao c6/c12
1934        mPP204.Outlet to PinchPoint.Inlet(3);
1935        PinchPoint.Outlet(3) to mMX205.Inlet1;
1936       
1937        #destilacao
1938        mPP309.Outlet to PinchPoint.Inlet(4);
1939        PinchPoint.Outlet(4) to COL303.Wine;
1940       
1941        COL303.Vinasse to PinchPoint.Inlet(5);
1942
1943        DEH304.RecMEG to PinchPoint.Inlet(6);
1944        PinchPoint.Outlet(6) to mPP307.Inlet;
1945       
1946        #Pre-tratamento e hidrolise
1947        mMX502.Outlet        to PinchPoint.Inlet(7);
1948        PinchPoint.Outlet(7) to RTS504.Inlet;
1949       
1950        mPP505.Outlet        to PinchPoint.Inlet(8);
1951        PinchPoint.Outlet(8)to mMX502.Inlet2;
1952
1953        RTS504.Outlet        to PinchPoint.Inlet(9);
1954        PinchPoint.Outlet(9)to mFL508.Inlet;
1955
1956        mMX601.Outlet        to PinchPoint.Inlet(10);
1957        PinchPoint.Outlet(10) to mMX603.Inlet1;
1958       
1959        #Fermentacao Xilose
1960        mPP704.Outlet        to PinchPoint.Inlet(11);
1961        PinchPoint.Outlet(11) to FMS706.Inlet;
1962       
1963        SPECIFY
1964        #Temperatura que deve ser atendida na saida do "pinch"
1965        PinchPoint.Outlet(1).T = (70 + 273.15) * 'K';
1966        PinchPoint.Outlet(2).T = (105 + 273.15) * 'K';
1967        PinchPoint.Outlet(3).T = (33 + 273.15) * 'K';
1968        #PinchPoint.Outlet(4).T = (70 + 273.15) * 'K';
1969        PinchPoint.Outlet(4).T = (90 + 273.15) * 'K';
1970        PinchPoint.Outlet(5).T = (90 + 273.15) * 'K';
1971        PinchPoint.Outlet(6).T = (80 + 273.15) * 'K';
1972        PinchPoint.Outlet(7).T = (195 + 273.15) * 'K';
1973        PinchPoint.Outlet(8).T = (185 + 273.15) * 'K';
1974        PinchPoint.Outlet(9).T = (80 + 273.15) * 'K';
1975        PinchPoint.Outlet(10).T = (50 + 273.15) * 'K';
1976        PinchPoint.Outlet(11).T = (35 + 273.15) * 'K';
1977       
1978        #Coeficiente de transferencia de calor para as correntes de calor: Calculo da HEN
1979        PinchPoint.heat_trans_corr(1:11) = 1.38 * 'kW/m^2/K';
1980       
1981
1982#*------Pinch no trem de colunas de destilacao (interpolador) ----*#
1983       
1984#*  A etapa de destilacao conta com um interpolador
1985        Para contornar a falta de acessibilidade da informacao no black box
1986        foi criada uma nova energy stream que contem apenas informacoes de T e Q
1987*#
1988        CONNECTIONS
1989        INT101.Outlet to PinchPoint.Inlet_Int(1);
1990        INT102.Outlet to PinchPoint.Inlet_Int(2);
1991        INT103.Outlet to PinchPoint.Inlet_Int(3);
1992        INT104.Outlet to PinchPoint.Inlet_Int(4);
1993
1994        SPECIFY
1995        #Coeficiente de transferencia de calor para as correntes de calor: Calculo da HEN
1996        PinchPoint.heat_trans_corr(12:15) = 1.38 * 'kW/m^2/K';
1997       
1998        EQUATIONS
1999
2000        INT101.Outlet.T = COL303.SecGrad.T;
2001        INT102.Outlet.T = COL303.HydrEth.T;
2002       
2003        INT101.Outlet.Q = -COL303.CD.Q;
2004        INT102.Outlet.Q = -COL303.CBB1.Q;
2005       
2006        INT103.Outlet.Q = -DEH304.QCEXT.Q;
2007        INT104.Outlet.Q = -DEH304.QCREC.Q;
2008
2009        INT103.Outlet.T = DEH304.AnhyEth.T;
2010        INT104.Outlet.T = DEH304.Water.T;
2011
2012#*
2013*#
2014#--------------------- integracoes -----------------------#
2015#Integracao entre a cogeracao e as demandas do processo (pinch e outros equipamentos)
2016        EQUATIONS
2017       
2018        #Vapor de 2.5 consumido
2019        Cwq422.Outlet_q.Q = PinchPoint.QH(1) +
2020                                                EVP202.Q +
2021                                                EVP702.Q +
2022                                                COL303.QAA1.Q +
2023                                                COL303.QBB1.Q;
2024       
2025        #Vapor de 6 bar consumido
2026        Cwq414.Outlet_q.Q = PinchPoint.QH(2) +
2027                                                DEH304.QREXT.Q +
2028                                                DEH304.QRREC.Q;
2029
2030        #Vapor de 17.4 bar consumido
2031        Cwq407.Outlet_q.Q = PinchPoint.QH(3);
2032#*
2033*#
2034        #*
2035        -----------------------Analise economica-----------
2036        *#
2037       
2038        DEVICES
2039        EcoPar  as EconomicParameters   (Brief = "Model With All the Assumptions Made");
2040       
2041        VARIABLES       
2042        RecExtCost                as currency (Brief = "Investment in the Reception and Extration stage");
2043        EvapCost                  as currency (Brief = "Investment in the Evaporation stage");
2044        EtOHprodCost      as currency (Brief = "Investment in the fermentation, distillation and dehydration stage (molecular sieve)");
2045        CHPCost           as currency (Brief = "Investment in the Combined Heat and Power stage - steam and electricity");
2046        InfrastrutureCost as currency (Brief = "Investment in the Infrastruture, engineering and utilities");
2047        ReceptionCost     as currency (Brief = "Investment in the Dust collection system and straw gathering stage");
2048       
2049        IG_InstalledEquipment   as currency; #1G custos diretos e indiretos, exceto contigencia
2050       
2051        EQUATIONS
2052        #Alguns parametros das equacoes de estimacao foram obtidos por comunicacao pessoaL
2053        RecExtCost = ((139.15E6 / EcoPar.ExchangeRate) * 'US$' - EvapCost - ReceptionCost) *
2054                                 ((ProPar.SugarcaneFlow * EcoPar.WorkedHours /(4E9 * 'kg'))^0.6); #fator de escala NREL, Humbird 2011
2055       
2056        #Evaporador do tipo Roberts de inox - 4 milhoes de reais com 6000 m2 de area de troca termica
2057        EvapCost = (4E6 / EcoPar.ExchangeRate) * 'US$' * (abs( EVP202.A /(6000  * 'm^2'))^0.54)  #fator de escala peters
2058                         + (4E6 / EcoPar.ExchangeRate) * 'US$' * (abs( EVP203.A /(6000  * 'm^2'))^0.54)  #fator de escala peters
2059                         + (4E6 / EcoPar.ExchangeRate) * 'US$' * (abs( EVP204.A /(6000  * 'm^2'))^0.54)  #fator de escala peters
2060                         + (4E6 / EcoPar.ExchangeRate) * 'US$' * (abs( EVP205.A /(6000  * 'm^2'))^0.54)  #fator de escala peters
2061                         + (4E6 / EcoPar.ExchangeRate) * 'US$' * (abs( EVP206.A /(6000  * 'm^2'))^0.54); #fator de escala peters
2062       
2063        #uma usina que produziu 340milhoes m3 de etanol em uma safra com titulo de etanol de 70g/L
2064        EtOHprodCost = (173.0E6 / EcoPar.ExchangeRate) * 'US$' *
2065                                   (abs( FMS208.Inlet.Total.Fw * FMS208.Inlet.Total.zw (5) * EcoPar.WorkedHours /(340E3 * 'm^3' * 70  * 'g / l'))^0.6);  #fator de escala NREL, Humbird 2011
2066       
2067        CHPCost = (140.0E6 / EcoPar.ExchangeRate) * 'US$' * #400
2068                          (abs((BLR403.Steam.Fw)/(200000 * 'kg/h'))^0.6); #fator de escala NREL, Humbird 2011
2069       
2070        ReceptionCost = (6.9E5 / EcoPar.ExchangeRate )* 'US$' * 1.7 *
2071                                        (abs((ProPar.SugarcaneFlow + MSS102.Outlet.Total.Fw + MSS103.Outlet.Total.Fw)/(94967 * 'kg/h'))^0.6) +
2072                                        (1500000 / EcoPar.ExchangeRate) * 'US$' * (abs((MSS102.Outlet.Total.Fw +  MSS104.Outlet.Total.Fw)/(15000 * 'kg/h'))^0.6) ; #fator de escala NREL, Humbird 2011
2073        #1.5 milhoes eh o custo total do recolhimento de palha
2074        #desde as modificacoes no campo para enfardar a palha,
2075        #modificacoes para receber os caminhoes
2076        #esteiras transportadoras e adaptacoes na caldeira.
2077        #(preco de 2016, atualiza???)
2078       
2079        #instalacao de 25% nesse caso
2080        InfrastrutureCost = 0.25 * (RecExtCost + EvapCost + EtOHprodCost + CHPCost + ReceptionCost );
2081       
2082        IG_InstalledEquipment  = InfrastrutureCost + RecExtCost + EvapCost + EtOHprodCost + CHPCost + ReceptionCost;
2083       
2084        VARIABLES
2085        OpEx_IG as currency (Brief = "Operational expenditure in the plant");
2086       
2087        EQUATIONS
2088        #O custo para producao do etanol anidro eh um valor fechado - inclui todas as etapas
2089        #####
2090        OpEx_IG = 87.0 * 'US$/m^3' * AnhyEthProd * EcoPar.WorkedHours ; #Custo para producao do etanol anidro, jah em dolar
2091       
2092        VARIABLES       
2093        n_Enzymeprice   as Real (Brief = "Price multiplicator");
2094        EnzymecostFinal as positive (Brief = "Enzyme final cost", Unit = 'US$ / kg'); #preco final da enzima comprada
2095       
2096        EQUATIONS       
2097        #Preco final da enzima ( utilizado para estudo do impacto do preco da enzima)
2098        EnzymecostFinal = EcoPar.EnzymeCost * n_Enzymeprice;
2099       
2100        VARIABLES
2101        HEArea as positive ( Brief = "Mean area of Heat Exchanger Network", Unit = 'm^2');     
2102        TDH_equalization        as time_h;
2103       
2104        SPECIFY
2105        TDH_equalization = 7.2 *'h';
2106       
2107        EQUATIONS
2108        #Area media com base no numero de trocadores de calor
2109        PinchPoint.N_Troca * HEArea = PinchPoint.Area_HEN;
2110       
2111        # ----- Etapa de pretratamento-------
2112       
2113        VARIABLES
2114        TDH_mix                                         as time_h;
2115        ConveyorBeltPretreatCost        as currency;
2116        TankPretreatCost                        as currency;
2117        PumpPretreatCost                        as currency;
2118        TCPretreatCost                          as currency;
2119        ReactorCost                             as currency;
2120        FlashCost                                       as currency;
2121        V_Flash                                         as positive (Unit = 'm^3');
2122        Mass_Flash                                      as positive (Unit = 'kg');
2123        BeltFilterPretreatCost          as currency (Brief = "Investment in the belt filter vaccum press");
2124       
2125        PreTreatSectorCost                      as currency (Brief = "Investment in the pre treatment stage");
2126       
2127        SPECIFY
2128        TDH_mix = 1 *'h';
2129
2130        EQUATIONS
2131        #Os custos dos equipamentos consideram a instalacao no local
2132       
2133        ConveyorBeltPretreatCost = 50 * 'm' * EcoPar.ConveyorBeltCost;
2134       
2135        TankPretreatCost = EcoPar.ConcreteCost  * TDH_mix *
2136                                           (mMX502.Inlet2.Total.Fw / (120 * 'kg/m^3') +
2137                                            mMX502.Inlet1.Total.Fw / (957 * 'kg/m^3')) ;
2138       
2139        # 2 bombas - Considenrando somente bagaco na fase solida ro -> 120 kg/m^3
2140        PumpPretreatCost = (mPP501.Inlet.Total.Fw / (120 * 'kg/m^3')  + 
2141                                                mPP505.Inlet.Total.Fw / (1000 * 'kg/m^3')) *
2142                                                EcoPar.HighPumpCost;
2143
2144        # 2 trocadores
2145        TCPretreatCost =  2 * (350000) * 'US$' * (abs(HEArea/(150 * 'm^2'))^0.54) / EcoPar.ExchangeRate ;       #TC placas titanio, agua e mosto (mesmo CP) s´o calor sensivel, FQ entra 95C e sai 32C e FF entra 28C, alto U
2146       
2147        #60% de enchimento - maior custo da etapa!
2148        ReactorCost = (80E6 / EcoPar.ExchangeRate) * 'US$' *
2149                              (abs( RTS504.Inlet.Total.Fw / 0.6  /(360000 * 'kg/h'))^0.56) ;
2150       
2151        FlashCost = Mass_Flash * EcoPar.InoxCost;
2152       
2153        V_Flash = (mFL508.Inlet.Solid.Fw / (120 * 'kg/m^3') +
2154                           mFL508.Inlet.Fluid.Fw / (973 * 'kg/m^3')) * TDH_mix;
2155       
2156        Mass_Flash = 2 * ProPar.pi * 6 * 'm' *
2157                                 (abs(2 * V_Flash / ProPar.pi / (6 *'m')) ^ 0.5) * 0.95 *'cm' * 7.85 * 'g/cm^3';
2158       
2159        BeltFilterPretreatCost = (1300000 / EcoPar.ExchangeRate) * 'US$' *
2160                                                         (abs( SEP511.Inlet.Total.Fw /(500000 * 'kg/h'))^ 0.8); #0.8 fator de escala do NREL,Humbird 2011
2161       
2162        PreTreatSectorCost = EcoPar.PretreatmentInstalationFactor *
2163                (ConveyorBeltPretreatCost +
2164                TankPretreatCost +
2165                PumpPretreatCost +
2166                TCPretreatCost +
2167                ReactorCost +
2168                0.3 * ReactorCost + #acessorios do reator
2169                FlashCost +
2170                BeltFilterPretreatCost +
2171                (EcoPar.pHmetroCost / EcoPar.ExchangeRate ) * 'US$')
2172        ;
2173       
2174        # --------------Etapa de hidrolise ----------------------
2175        PARAMETERS
2176        n_ReactorHydrolysis as positive (Brief = "Number of hydrolysis reactor", Default = 1);
2177       
2178        SET
2179        n_ReactorHydrolysis = 12;
2180        #foi setado em 12 baseado nas capacidades do NREL
2181       
2182        VARIABLES
2183        ConveyorBeltHydrolysisCost      as currency;
2184       
2185        TankMixHydrolysisCost   as currency (Brief = "Investment in the mix tank in the sector of hydrolisis");
2186        V_TankMixHydrolysis             as positive (Brief = "Volume of the emix tank in the sector of hydrolisis", Unit = 'm^3');
2187        TCHydrolysisCost                                as currency (Brief = "Investment in the TC in the sector of hydrolisis");
2188        ReactorHydrolysisCost           as currency (Brief = "Investment in the  tank in the sector of hydrolisis");
2189       
2190        V_ReactorHydrolysis             as positive (Brief = "Volume of the tank in the sector of hydrolisis", Unit = 'm^3');
2191        H_ReactorHydrolysis             as positive (Brief = "H of the tank in the sector of hydrolisis", Unit = 'm');
2192        D_ReactorHydrolysis             as positive (Brief = "Diameter of the tank in the sector of hydrolisis", Unit = 'm');
2193        Vmaterial_ReactorHydrolysis as positive (Brief = "Volume of the material used in the construction of the reactor in the sector of hydrolisis", Unit = 'm^3');
2194       
2195        PumpHydrolysisRecCost                           as currency;
2196        PumpDosingCost                                          as currency;
2197        BeltFilterHydrolysisCost                        as currency (Brief = "Investment in the belt filter vaccun press in the sector of hydrolisis");
2198        PumpHydrolysisCost                                      as currency;
2199        TankC6WineCost                                          as currency;
2200
2201        HydrolysisSectorCost                            as currency (Brief = "Investment in the hydrolisis stage");
2202       
2203        TDH_fermenter as time_h (Default = 5.4);
2204       
2205
2206       
2207        SPECIFY
2208        #TDH_fermenter = 5.4 * 'h';
2209       
2210        EQUATIONS
2211        #correia transportadora do bagaco pretratado
2212        ConveyorBeltHydrolysisCost = 30 * 'm' * EcoPar.ConveyorBeltCost;
2213               
2214        TankMixHydrolysisCost = EcoPar.ConcreteCost * V_TankMixHydrolysis;
2215       
2216        PumpDosingCost = 5000 / EcoPar.ExchangeRate * 'US$';
2217       
2218        V_TankMixHydrolysis = TDH_equalization *
2219                                                                (SEP511.OutletS.Total.Fw / (120 * 'kg/m^3') +  #densidade do bagaco a 50% umidade
2220                                                                MSS601.Outlet.Total.Fw / (1000 * 'kg/m^3') +   #densidade da agua
2221                                                                MSS602.Outlet.Total.Fw / (1150 * 'kg/m^3'));   #densidade da enzima de acordo Sigma
2222       
2223        TCHydrolysisCost = (350000) * 'US$' *(abs( HEArea  /(150 * 'm^2'))^0.54) / EcoPar.ExchangeRate ;
2224
2225        ReactorHydrolysisCost = Vmaterial_ReactorHydrolysis * 7850 *'kg/m^3' *  EcoPar.CarbonSteelCost;
2226        #densidade do aco carbono 7850
2227       
2228        V_ReactorHydrolysis = HLS604.reac_time *
2229                                                 (HLS604.Inlet.Solid.Fw / (120 * 'kg/m^3') +
2230                                                  HLS604.Inlet.Fluid.Fw / (989 * 'kg/m^3')) *
2231                                                  1.428571429/n_ReactorHydrolysis;
2232       
2233        V_ReactorHydrolysis = 16 * ProPar.pi * (H_ReactorHydrolysis ^3)/9;
2234       
2235        D_ReactorHydrolysis = (8/3) * H_ReactorHydrolysis;
2236       
2237        Vmaterial_ReactorHydrolysis = ProPar.pi * (D_ReactorHydrolysis^2)*0.0191*'m'/4 + #0.191 e a espessura da base e
2238                                                                  ProPar.pi * (D_ReactorHydrolysis^2)*0.0127*'m'/(4*0.96592582628) +  #0.0127 e a espessura da tampa do reator
2239                                                                  ProPar.pi * (D_ReactorHydrolysis)*H_ReactorHydrolysis*'m'*
2240                                                                  (0.3864*0.0191+0.0789*0.0159 +
2241                                                                  0.0789*0.0127 + 0.1263*0.0095 +
2242                                                                  0.1263*0.0079 + 0.2032*0.0064);
2243                                                                       
2244        PumpHydrolysisRecCost = n_ReactorHydrolysis * (V_ReactorHydrolysis/HLS604.reac_time ) * EcoPar.HighPumpCost;
2245       
2246        BeltFilterHydrolysisCost = (1300000 / EcoPar.ExchangeRate) * 'US$' *
2247                                                           (( SEP606.Inlet.Total.Fw /(500000 * 'kg/h'))^0.8) ; #0.8 fator de escala do NREL
2248       
2249        PumpHydrolysisCost = SEP606.OutletL.Total.Fw  / (972.087 * 'kg/m^3') *
2250                                                 EcoPar.HighPumpCost;
2251       
2252        TankC6WineCost = EcoPar.ConcreteCost *
2253                                         mPP607.Outlet.Total.Fw * TDH_equalization / (ProPar.density_solution) ;
2254               
2255        HydrolysisSectorCost = EcoPar.HydrolysisInstalationFactor *
2256           (ConveyorBeltHydrolysisCost +
2257           TankMixHydrolysisCost +
2258           PumpDosingCost +
2259           TCHydrolysisCost +
2260           n_ReactorHydrolysis *  ReactorHydrolysisCost +
2261           0.3 * n_ReactorHydrolysis *  ReactorHydrolysisCost + #acessorios dos reatores
2262           n_ReactorHydrolysis * 68000 * 'US$'+ #agitator of each reactor
2263           PumpHydrolysisRecCost +
2264           BeltFilterHydrolysisCost +
2265           ConveyorBeltHydrolysisCost +
2266           n_ReactorHydrolysis * PumpHydrolysisCost +
2267           TankC6WineCost)
2268        ;
2269       
2270        #-------- Etapa de fermentacao da C5 -------
2271        VARIABLES
2272        TankC5Cost                                      as currency (Brief = "Investment in the equalization tank in the sector of C5 fermentation");
2273        V_TankC5Cost                            as positive     (Brief = "Volume of the equalization tank in the sector of C5 fermentation", Unit = 'm^3');
2274        PumpFeedEvapC5Cost                      as currency (Brief = "Investment in the pump of evapotor feeding in the sector of C5 fermentation");
2275        EvaporatorC5Cost                        as currency (Brief = "Investment in the evaporator in the sector of C5 fermentation");
2276        PumpFeedReactorC5Cost           as currency (Brief = "Investment in the pump of reactor feeding in the sector of C5 fermentationin");
2277        TCC5Cost                                        as currency (Brief = "Investment in the TC in the sector of C5 fermentation");
2278        VolumeC5ferm                            as positive     (Brief = "Volume of C5 fermenter", Unit = 'm^3');
2279        FermenterC5Cost                         as currency (Brief = "Investment in the fermenter of C5 fraction");
2280        C5FermSectorCost                        as currency (Brief = "Investment in the c5 fermentation stage");
2281
2282        EQUATIONS
2283        TankC5Cost = EcoPar.ConcreteCost * V_TankC5Cost ;
2284       
2285        V_TankC5Cost = SEP511.OutletL.Total.Fw * TDH_equalization / (972.052 * 'kg/m^3') ;
2286       
2287        PumpFeedEvapC5Cost = SEP511.OutletL.Total.Fw / (972.087 * 'kg/m^3') *
2288                                                 EcoPar.HighPumpCost ;
2289       
2290        EvaporatorC5Cost =      (4E6 / EcoPar.ExchangeRate) * 'US$' * (abs( EVP702.A /(6000  * 'm^2'))^0.54)  #fator de escala peters
2291                                        + (4E6 / EcoPar.ExchangeRate) * 'US$' * (abs( EVP703.A /(6000  * 'm^2'))^0.54)  #fator de escala peters
2292                                        + (4E6 / EcoPar.ExchangeRate) * 'US$' * (abs( EVP704.A /(6000  * 'm^2'))^0.54); #fator de escala peters
2293       
2294        PumpFeedReactorC5Cost =2 *  EVP704.OutletL.Total.Fw / (947.179 * 'kg/m^3') *
2295                                                   EcoPar.HighPumpCost;
2296       
2297        TCC5Cost = (350000) * 'US$' *(abs( HEArea  /(150 * 'm^2'))^0.54) / EcoPar.ExchangeRate ;#area de troca termica de 4000 m2, TC
2298       
2299        VolumeC5ferm = FMS706.Outlet.Total.Fw * TDH_fermenter / (994.01 * 'kg/m^3')/0.6;
2300       
2301        FermenterC5Cost = (4.2E6 / EcoPar.ExchangeRate) * 'US$' *
2302                                          (abs( VolumeC5ferm /(1E3 * 'm^3'))^0.6) ; #pressao turn key
2303       
2304        C5FermSectorCost = EcoPar.C5InstalationFactor *
2305                (TankC5Cost +
2306                PumpFeedEvapC5Cost  +           
2307                EvaporatorC5Cost +
2308                PumpFeedReactorC5Cost +
2309                TCC5Cost +
2310                FermenterC5Cost +
2311                1.3 * FermenterC5Cost) #acessorios do reator - reator continuo, mais controle que o convencional, leito recheado... (Milessi 2017)
2312        ;
2313
2314        VARIABLES       
2315        IIG_InstalledEquipment  as currency; #2G custos diretos e indiretos, exceto contigencia
2316        TotalInstalledEquipment as currency; #1G2G custos diretos e indiretos, exceto contigencia
2317        TotalFixedCapital               as currency;
2318        Contingency                             as currency;
2319        WorkingCapital                  as currency;
2320        Capex                                   as currency;
2321       
2322        EQUATIONS
2323        IIG_InstalledEquipment = PreTreatSectorCost + C5FermSectorCost + HydrolysisSectorCost;
2324        TotalInstalledEquipment = IIG_InstalledEquipment +      IG_InstalledEquipment;
2325        TotalFixedCapital = IIG_InstalledEquipment + IG_InstalledEquipment + Contingency;
2326        Contingency = 0.08 * TotalFixedCapital;
2327        WorkingCapital = 0.1 * Capex;
2328       
2329        Capex = TotalFixedCapital + WorkingCapital;
2330       
2331        #total product cost estimation
2332        VARIABLES
2333        TotalInput as currency (Brief = "All inputs of the biorefinery - raw materials");
2334       
2335        EQUATIONS
2336        #Agua esta sendo contabilizada nesta parte
2337        TotalInput = 
2338                (EcoPar.SugarcaneCost/EcoPar.ExchangeRate)      * ProPar.SugarcaneFlow   * EcoPar.WorkedHours + #sugarcane costs
2339                (EcoPar.StrawCost/EcoPar.ExchangeRate)          * MSS102.Outlet.Total.Fw * EcoPar.WorkedHours + #straw sugarcane costs
2340                Input_Treat+
2341                Input_ConcFerm +
2342                Input_C5Ferm +
2343                Input_Hydr +
2344                Input_PreTreat 
2345        ;
2346       
2347        #utilities
2348        #custo da agua tratada 0.05 reais/m^3 - preco de 2018 de uma usina real
2349        #custo da agua desmi 2.44 reais/m^3 - preco de 2018 de uma usina real
2350        VARIABLES
2351        HotUtilitie_price       as Real (Unit = 'US$/kW/h');
2352        HotUtilitie_cost        as currency;
2353        ColdUtilitie_price  as Real (Unit = 'US$/kW/h');
2354        ColdUtilitie_cost       as currency;
2355        Utilities                       as currency;
2356       
2357        SPECIFY
2358        ColdUtilitie_price = (174.363/EcoPar.ExchangeRate/(5760*'h')) *'US$/kW'; #Oliveira 2017 #tempo de trabalho qe a Cassia considerou foi 5760 h
2359        HotUtilitie_price  = (334.80/EcoPar.ExchangeRate/(5760*'h')) *'US$/kW'; #Oliveira 2017 - idem
2360
2361        EQUATIONS
2362        HotUtilitie_cost = HotUtilitie_price * EcoPar.WorkedHours *
2363                                           (PinchPoint.QH(1) + #2.5 bar
2364                                            PinchPoint.QH(2) + #6 bar
2365                                                PinchPoint.QH(3)); #17 bar
2366       
2367        ColdUtilitie_cost = ColdUtilitie_price * EcoPar.WorkedHours * PinchPoint.QC(1); # agua de resfriamento
2368
2369        Utilities = HotUtilitie_cost +
2370                                ColdUtilitie_cost;
2371       
2372        VARIABLES       
2373        Revenue                             as currency;
2374        OperatingLabor              as currency (Brief = "Costs with skilled and unskilled labor");
2375        OperatingSupervision    as currency (Brief = "Costs with direct supervisory and clerical labor");
2376        MaintenanceCost             as currency;
2377        OperatingSupplies           as currency;
2378        LaboratoryCharges           as currency (Brief = "Costs with tests for control of operations and for product-quality control");
2379        PatentsRoyalts              as currency;
2380        DirectProductionCosts   as currency (Brief = "Costs directly associated with the manufacturing operation");
2381       
2382        PlantOverheadCost           as currency (Brief = "Safety services - not vary widely with changes in production rate");
2383        ManufacteringCosts              as currency;
2384       
2385        AdmCosts                as currency (Brief = "Costs for executive, office supplies, engineering...");
2386        ResearchDevelopmentCost as currency (Brief = "Costs with research and development");
2387        DistribuitionMarketing  as currency;
2388        GeneralExpenses             as currency (Brief = "General expenses involved in company operations -  addition to the manufacturing costs");
2389
2390        TotalProductCost                as currency;
2391       
2392        EQUATIONS
2393        Revenue = (AnhyEthProd * EcoPar.EthanolPrice  + Wnet * EcoPar.EnergyPrice ) * EcoPar.WorkedHours;
2394
2395        OperatingLabor  = EcoPar.WorkedHours *
2396                                        (49.55/EcoPar.ExchangeRate * 'US$/m^3' * EcoPar.Ethanol1GProduction +  # Mao de obra do 1G - Pecege 2011
2397                                        (AnhyEthProd -  EcoPar.Ethanol1GProduction ) * 11 * 'US$/m^3' );        # Mao de obra 2G -  material suplementar Jonker et 2015
2398       
2399        #MaintenanceCost = 3 / 100 * TotalFixedCapital; #baseado em Milanez et al 2015, Jonker 2015, junqueira et al. 2017
2400        MaintenanceCost = EcoPar.WorkedHours * (65.52/EcoPar.ExchangeRate) * 'US$/m^3' * EcoPar.Ethanol1GProduction + #pecege 2011
2401                                          0.03 * IIG_InstalledEquipment; #jonker 2015
2402         
2403        OperatingSupervision = 0.1 * OperatingLabor;
2404        #varia de 10% a 20%, pegamos o menor valor pq nesse caso eh soh do 2g
2405        #e nao precisaria de aumentar uma estrutura completa, pois jah
2406        #tem da planta 1G
2407       
2408        OperatingSupplies = 0.15 * MaintenanceCost; #peters 2002
2409       
2410        LaboratoryCharges = 0.15 * OperatingLabor; #peters 2002
2411       
2412        #PatentsRoyalts = 0.01  * TotalProductCost; #peters 2002
2413        PatentsRoyalts = 0.01 * DirectProductionCosts; #peters 2002
2414        #de 0 a 6% do custo total de producao,pegamos
2415        #valor baixo pq seria patente apenas do processo 2G
2416       
2417        DirectProductionCosts = TotalInput +
2418                                                        Utilities +
2419                                                        OperatingLabor +
2420                                                        OperatingSupervision +
2421                                                        MaintenanceCost +
2422                                                        OperatingSupplies +
2423                                                        PatentsRoyalts +
2424                                                        LaboratoryCharges;
2425       
2426        PlantOverheadCost = 0.6 * (OperatingLabor +
2427                                                       OperatingSupervision +
2428                                                       MaintenanceCost); #peters 2002, valor intermediario entre 0.5 e 0.7
2429       
2430        ManufacteringCosts      =
2431                                                DirectProductionCosts  +
2432                                                #FixedCharges +
2433                                                PlantOverheadCost;
2434
2435        AdmCosts = 0.20 * (OperatingLabor +
2436                                           OperatingSupervision +       
2437                                           MaintenanceCost); #peters 2002, valor intermediario entre 0.15 e 0.25
2438       
2439        ResearchDevelopmentCost = 2/100 * Revenue;     
2440       
2441        DistribuitionMarketing  = 0.05 * TotalProductCost;
2442       
2443        GeneralExpenses = AdmCosts + DistribuitionMarketing + ResearchDevelopmentCost;
2444       
2445        TotalProductCost = GeneralExpenses + ManufacteringCosts;
2446       
2447        VARIABLES
2448        Depreciation    as currency (Brief = "Decrease in value throughout the usual life of the material");
2449        Tax(3)                  as currency;
2450        CashFlow(28)    as currency;
2451        CF(28)                  as currency;
2452        NPV                             as currency;   
2453       
2454        EQUATIONS
2455        Depreciation = 0.1 * TotalFixedCapital;
2456
2457        if (Revenue - TotalProductCost - Depreciation) > 0 * 'US$' then
2458                Tax(1) = (Revenue - TotalProductCost - Depreciation) * 0.34;
2459        else
2460                Tax(1) = 0 * 'US$';
2461        end
2462       
2463        if (Revenue - TotalProductCost) > 0 * 'US$' then
2464                Tax(2) = (Revenue - TotalProductCost)*0.34;
2465        else
2466                Tax(2) = 0 * 'US$';
2467        end
2468       
2469        if (Revenue - TotalProductCost + WorkingCapital) > 0 * 'US$' then
2470                Tax(3) = (Revenue - TotalProductCost + WorkingCapital) * 0.34;
2471        else
2472                Tax(3) = 0 * 'US$';
2473        end
2474
2475        CashFlow(1:2)   = -TotalFixedCapital/2;
2476        CashFlow(3)     = -WorkingCapital;
2477        CashFlow(4:13)  = Revenue - TotalProductCost - Tax(1);
2478        CashFlow(14:27) = Revenue - TotalProductCost - Tax(2);
2479        CashFlow(28)    = Revenue - TotalProductCost - Tax(3) + WorkingCapital;
2480       
2481        for i in [1:28] do
2482                CF(i) * (1 + EcoPar.r)^(i-1) = CashFlow(i);
2483        end
2484       
2485        NPV = sum(CF);
2486       
2487        SPECIFY
2488        #NPV = 0 * 'US$';
2489       
2490#*
2491*#
2492
2493#----------------------Analise de Ciclo de vida -----------------#
2494        PARAMETERS
2495        gwp as Renovabio (Brief = "Parametros de acordo com a planilha RenovaCalc");
2496        ad      as AD_SimaPro;
2497        odp     as ODP_SimaPro;
2498        ht      as HT_SimaPro;
2499        fwaet   as FWAET_SimaPro;
2500        maet    as MAET_SimaPro;
2501        tet     as TET_SimaPro;
2502        po      as PO_SimaPro;
2503        ac      as AC_SimaPro;
2504        eu      as EU_SimaPro;
2505       
2506        PCI as PCI (Brief = "Poder de combustao inferior");
2507       
2508        #Emissao Campo
2509        VARIABLES
2510        GWP100_cana as positive (Unit = 'kg/h');
2511        AD_cana         as positive (Unit = 'kg/h');
2512        ODP_cana        as positive (Unit = 'kg/h');
2513        HT_cana         as positive (Unit = 'kg/h');
2514        FWAET_cana      as positive (Unit = 'kg/h');
2515        MAET_cana       as positive (Unit = 'kg/h');
2516        TET_cana        as positive (Unit = 'kg/h');
2517        PO_cana         as positive (Unit = 'kg/h');
2518        AC_cana         as positive (Unit = 'kg/h');
2519        EU_cana         as positive (Unit = 'kg/h');
2520       
2521        EQUATIONS
2522        GWP100_cana = ProPar.SugarcaneFlow  * gwp.cana_de_acucar_B9; 
2523        AD_cana         = ProPar.SugarcaneFlow  * ad.cana_de_acucar_B9;
2524        ODP_cana        = ProPar.SugarcaneFlow  * odp.cana_de_acucar_B9;
2525        HT_cana         = ProPar.SugarcaneFlow  * ht.cana_de_acucar_B9;
2526        FWAET_cana      = ProPar.SugarcaneFlow  * fwaet.cana_de_acucar_B9;
2527        MAET_cana       = ProPar.SugarcaneFlow  * maet.cana_de_acucar_B9;
2528        TET_cana        = ProPar.SugarcaneFlow  * tet.cana_de_acucar_B9;
2529        PO_cana         = ProPar.SugarcaneFlow  * po.cana_de_acucar_B9;
2530        AC_cana         = ProPar.SugarcaneFlow  * ac.cana_de_acucar_B9; 
2531        EU_cana         = ProPar.SugarcaneFlow  * eu.cana_de_acucar_B9;   
2532       
2533        #Emissao agua
2534        VARIABLES
2535        total_water_inlet as flow_mass;
2536        GWP100_agua as positive (Unit = 'kg/h');
2537        AD_agua         as positive (Unit = 'kg/h');
2538        ODP_agua        as positive (Unit = 'kg/h');
2539        HT_agua         as positive (Unit = 'kg/h');
2540        FWAET_agua      as positive (Unit = 'kg/h');
2541        MAET_agua       as positive (Unit = 'kg/h');
2542        TET_agua        as positive (Unit = 'kg/h');
2543        PO_agua         as positive (Unit = 'kg/h');
2544        AC_agua         as positive (Unit = 'kg/h');
2545        EU_agua         as positive (Unit = 'kg/h');
2546       
2547        EQUATIONS
2548        total_water_inlet =
2549                                                MSS106.Outlet.Fluid.Fw + # Agua que entra no 5 terno
2550                                                MSS108.Outlet.Fluid.Fw + # Agua utilizada na diluicao da cal
2551                                                MSS109.Outlet.Fluid.Fw + # Agua utilizada na diluicao do polimero
2552                                                MSS110.Outlet.Fluid.Fw + # Agua para filtracao do 1G
2553                                                MSS203.Outlet.Fluid.Fw + # Agua para a adsorcao
2554                                                MSS204.Outlet.Fluid.Fw + # Agua para diluicao da levedura/acido sulfurico
2555                                                #WSS402.Outlet.Fw       + # Agua de reposicao da cogeracao - outra especificao... agua desmi
2556                                                MSS501.Outlet.Fluid.Fw + # Agua para diluicao do pretratamento
2557                                                MSS503.Outlet.Fluid.Fw + # Agua para diluicao do pretratamento(nula)
2558                                                MSS601.Outlet.Fluid.Fw + # Agua para diluicao da hidrolise
2559                                                MSS603.Outlet.Fluid.Fw   # Agua para diluicao da hidrolise (nula)
2560        ;
2561       
2562        GWP100_agua = total_water_inlet * gwp.agua;
2563        AD_agua         = total_water_inlet * ad.agua;
2564        ODP_agua        = total_water_inlet * odp.agua;
2565        HT_agua         = total_water_inlet * ht.agua;
2566        FWAET_agua      = total_water_inlet * fwaet.agua;
2567        MAET_agua       = total_water_inlet * maet.agua;
2568        TET_agua        = total_water_inlet * tet.agua;
2569        PO_agua         = total_water_inlet * po.agua;
2570        AC_agua         = total_water_inlet * ac.agua;
2571        EU_agua         = total_water_inlet * eu.agua;
2572       
2573        #Emissao caldeira       
2574        VARIABLES
2575        palha           as flow_mass;
2576        bagaco          as flow_mass;
2577        efluente_2G as flow_mass;
2578       
2579        GWP100_caldeira as positive (Unit = 'kg/h');
2580        AD_caldeira     as positive (Unit = 'kg/h');
2581        ODP_caldeira    as positive (Unit = 'kg/h');
2582        HT_caldeira             as positive (Unit = 'kg/h');
2583        FWAET_caldeira  as positive (Unit = 'kg/h');
2584        MAET_caldeira   as positive (Unit = 'kg/h');
2585        TET_caldeira    as positive (Unit = 'kg/h');
2586        PO_caldeira     as positive (Unit = 'kg/h');
2587        AC_caldeira     as positive (Unit = 'kg/h');
2588        EU_caldeira     as positive (Unit = 'kg/h');
2589
2590        EQUATIONS
2591        #Total de palha que entra no misturador da caldeira, em base seca
2592        palha = mMX104.Outlet.Total.Fw - mMX104.Outlet.Total.Fw * mMX104.Outlet.Total.zw(flu.Water);
2593       
2594        #Total de bagaco que entra no misturador da caldeira, em base seca
2595        bagaco = mSP126.Outlet2.Total.Fw - mSP126.Outlet2.Total.Fw * mSP126.Outlet2.Total.zw(flu.Water);
2596       
2597        #Total de material lignocelulosico que entra no misturador da caldeira, em base seca
2598        efluente_2G = SEP606.OutletS.Total.Fw - SEP606.OutletS.Total.Fw * SEP606.OutletS.Total.zw(flu.Water);
2599       
2600        GWP100_caldeira =
2601                                                bagaco * gwp.bagaco +
2602                                                palha * gwp.palha +   
2603                                                efluente_2G * gwp.bagaco # assumido igual bagaco   
2604        ;
2605        AD_caldeira =
2606                                                bagaco * ad.bagaco +
2607                                                palha * ad.palha +   
2608                                                efluente_2G * ad.bagaco # assumido igual bagaco   
2609        ;
2610        ODP_caldeira =
2611                                                bagaco * odp.bagaco +
2612                                                palha * odp.palha +   
2613                                                efluente_2G * odp.bagaco # assumido igual bagaco   
2614        ;       
2615        HT_caldeira =
2616                                                bagaco * ht.bagaco +
2617                                                palha * ht.palha +   
2618                                                efluente_2G * ht.bagaco # assumido igual bagaco   
2619        ;
2620        FWAET_caldeira =
2621                                                bagaco * fwaet.bagaco +
2622                                                palha * fwaet.palha +   
2623                                                efluente_2G * fwaet.bagaco # assumido igual bagaco   
2624        ;
2625        MAET_caldeira =
2626                                                bagaco * maet.bagaco +
2627                                                palha * maet.palha +   
2628                                                efluente_2G * maet.bagaco # assumido igual bagaco   
2629        ;
2630        TET_caldeira =
2631                                                bagaco * tet.bagaco +
2632                                                palha * tet.palha +   
2633                                                efluente_2G * tet.bagaco # assumido igual bagaco   
2634        ;
2635        PO_caldeira =
2636                                                bagaco * po.bagaco +
2637                                                palha * po.palha +   
2638                                                efluente_2G * po.bagaco # assumido igual bagaco   
2639        ;
2640        AC_caldeira =
2641                                                bagaco * ac.bagaco +
2642                                                palha * ac.palha +   
2643                                                efluente_2G * ac.bagaco # assumido igual bagaco   
2644        ;
2645        EU_caldeira =
2646                                                bagaco * eu.bagaco +
2647                                                palha * eu.palha +   
2648                                                efluente_2G * eu.bagaco # assumido igual bagaco   
2649        ;
2650        #Emissao outros insumos
2651        VARIABLES
2652        GWP100_insumos  as positive (Unit = 'kg/h');
2653        AD_insumos              as positive (Unit = 'kg/h');
2654        ODP_insumos     as positive (Unit = 'kg/h');
2655        HT_insumos              as positive (Unit = 'kg/h');
2656        FWAET_insumos   as positive (Unit = 'kg/h');
2657        MAET_insumos    as positive (Unit = 'kg/h');
2658        TET_insumos     as positive (Unit = 'kg/h');
2659        PO_insumos              as positive (Unit = 'kg/h');
2660        AC_insumos              as positive (Unit = 'kg/h');
2661        EU_insumos              as positive (Unit = 'kg/h');   
2662       
2663        GWP100_enzima   as positive (Unit = 'kg/h');
2664        AD_enzima               as positive (Unit = 'kg/h');
2665        ODP_enzima              as positive (Unit = 'kg/h');
2666        HT_enzima               as positive (Unit = 'kg/h');
2667        FWAET_enzima    as positive (Unit = 'kg/h');
2668        MAET_enzima     as positive (Unit = 'kg/h');
2669        TET_enzima              as positive (Unit = 'kg/h');
2670        PO_enzima               as positive (Unit = 'kg/h');
2671        AC_enzima               as positive (Unit = 'kg/h');
2672        EU_enzima               as positive (Unit = 'kg/h');
2673       
2674        EQUATIONS
2675        GWP100_enzima   = MSS602.Outlet.Total.Fw * MSS602.Outlet.Total.zw(NComp + sol.Enzyme) * gwp.enzima_celulase;
2676        AD_enzima               = MSS602.Outlet.Total.Fw * MSS602.Outlet.Total.zw(NComp + sol.Enzyme) * ad.enzima_celulase;
2677        ODP_enzima              = MSS602.Outlet.Total.Fw * MSS602.Outlet.Total.zw(NComp + sol.Enzyme) * odp.enzima_celulase;
2678        HT_enzima               = MSS602.Outlet.Total.Fw * MSS602.Outlet.Total.zw(NComp + sol.Enzyme) * ht.enzima_celulase;
2679        FWAET_enzima    = MSS602.Outlet.Total.Fw * MSS602.Outlet.Total.zw(NComp + sol.Enzyme) * fwaet.enzima_celulase;
2680        MAET_enzima     = MSS602.Outlet.Total.Fw * MSS602.Outlet.Total.zw(NComp + sol.Enzyme) * maet.enzima_celulase;
2681        TET_enzima              = MSS602.Outlet.Total.Fw * MSS602.Outlet.Total.zw(NComp + sol.Enzyme) * tet.enzima_celulase;
2682        PO_enzima               = MSS602.Outlet.Total.Fw * MSS602.Outlet.Total.zw(NComp + sol.Enzyme) * po.enzima_celulase;
2683        AC_enzima               = MSS602.Outlet.Total.Fw * MSS602.Outlet.Total.zw(NComp + sol.Enzyme) * ac.enzima_celulase;
2684        EU_enzima               = MSS602.Outlet.Total.Fw * MSS602.Outlet.Total.zw(NComp + sol.Enzyme) * eu.enzima_celulase;
2685       
2686        GWP100_insumos  =
2687                                        MSS107.Outlet.Total.Fw * MSS107.Outlet.Total.zw(flu.PhosphoricAcid) * gwp.acido_fosforico +
2688                                        MSS108.Outlet.Total.Fw * MSS108.Outlet.Total.zw(NComp + sol.CaOH2) * gwp.cal +
2689                                        MSS109.Fluid.Fw * gwp.floculante +
2690                                        MSS202.Outlet.Total.Fw * MSS202.Outlet.Total.zw(flu.Ammonia) * gwp.amonia +
2691                                        MSS205.Outlet.Total.Fw * MSS205.Outlet.Total.zw(flu.H2SO4) * gwp.acido_sulfurico +
2692                                        F_MEG * gwp.etileno_glicol +
2693                                        GWP100_enzima
2694        ;
2695        AD_insumos      =
2696                                        MSS107.Outlet.Total.Fw * MSS107.Outlet.Total.zw(flu.PhosphoricAcid) * ad.acido_fosforico +
2697                                        MSS108.Outlet.Total.Fw * MSS108.Outlet.Total.zw(NComp + sol.CaOH2) * ad.cal +
2698                                        MSS109.Fluid.Fw * ad.floculante +
2699                                        MSS202.Outlet.Total.Fw * MSS202.Outlet.Total.zw(flu.Ammonia) * ad.amonia +
2700                                        MSS205.Outlet.Total.Fw * MSS205.Outlet.Total.zw(flu.H2SO4) * ad.acido_sulfurico +
2701                                        F_MEG * ad.etileno_glicol +
2702                                        AD_enzima
2703        ;
2704        ODP_insumos     =
2705                                        MSS107.Outlet.Total.Fw * MSS107.Outlet.Total.zw(flu.PhosphoricAcid) * odp.acido_fosforico +
2706                                        MSS108.Outlet.Total.Fw * MSS108.Outlet.Total.zw(NComp + sol.CaOH2) * odp.cal +
2707                                        MSS109.Fluid.Fw * odp.floculante +
2708                                        MSS202.Outlet.Total.Fw * MSS202.Outlet.Total.zw(flu.Ammonia) * odp.amonia +
2709                                        MSS205.Outlet.Total.Fw * MSS205.Outlet.Total.zw(flu.H2SO4) * odp.acido_sulfurico +
2710                                        F_MEG * odp.etileno_glicol +
2711                                        ODP_enzima
2712        ;
2713        HT_insumos      =
2714                                        MSS107.Outlet.Total.Fw * MSS107.Outlet.Total.zw(flu.PhosphoricAcid) * ht.acido_fosforico +
2715                                        MSS108.Outlet.Total.Fw * MSS108.Outlet.Total.zw(NComp + sol.CaOH2) * ht.cal +
2716                                        MSS109.Fluid.Fw * ht.floculante +
2717                                        MSS202.Outlet.Total.Fw * MSS202.Outlet.Total.zw(flu.Ammonia) * ht.amonia +
2718                                        MSS205.Outlet.Total.Fw * MSS205.Outlet.Total.zw(flu.H2SO4) * ht.acido_sulfurico +
2719                                        F_MEG * ht.etileno_glicol +
2720                                        HT_enzima
2721        ;
2722        FWAET_insumos   =
2723                                        MSS107.Outlet.Total.Fw * MSS107.Outlet.Total.zw(flu.PhosphoricAcid) * fwaet.acido_fosforico +
2724                                        MSS108.Outlet.Total.Fw * MSS108.Outlet.Total.zw(NComp + sol.CaOH2) * fwaet.cal +
2725                                        MSS109.Fluid.Fw * fwaet.floculante +
2726                                        MSS202.Outlet.Total.Fw * MSS202.Outlet.Total.zw(flu.Ammonia) * fwaet.amonia +
2727                                        MSS205.Outlet.Total.Fw * MSS205.Outlet.Total.zw(flu.H2SO4) * fwaet.acido_sulfurico +
2728                                        F_MEG * fwaet.etileno_glicol +
2729                                        FWAET_enzima
2730        ;
2731        MAET_insumos    =
2732                                        MSS107.Outlet.Total.Fw * MSS107.Outlet.Total.zw(flu.PhosphoricAcid) * maet.acido_fosforico +
2733                                        MSS108.Outlet.Total.Fw * MSS108.Outlet.Total.zw(NComp + sol.CaOH2) * maet.cal +
2734                                        MSS109.Fluid.Fw * maet.floculante +
2735                                        MSS202.Outlet.Total.Fw * MSS202.Outlet.Total.zw(flu.Ammonia) * maet.amonia +
2736                                        MSS205.Outlet.Total.Fw * MSS205.Outlet.Total.zw(flu.H2SO4) * maet.acido_sulfurico +
2737                                        F_MEG * maet.etileno_glicol +
2738                                        MAET_enzima
2739        ;
2740        TET_insumos     =
2741                                        MSS107.Outlet.Total.Fw * MSS107.Outlet.Total.zw(flu.PhosphoricAcid) * tet.acido_fosforico +
2742                                        MSS108.Outlet.Total.Fw * MSS108.Outlet.Total.zw(NComp + sol.CaOH2) * tet.cal +
2743                                        MSS109.Fluid.Fw * tet.floculante +
2744                                        MSS202.Outlet.Total.Fw * MSS202.Outlet.Total.zw(flu.Ammonia) * tet.amonia +
2745                                        MSS205.Outlet.Total.Fw * MSS205.Outlet.Total.zw(flu.H2SO4) * tet.acido_sulfurico +
2746                                        F_MEG * tet.etileno_glicol +
2747                                        TET_enzima
2748        ;
2749        PO_insumos      =
2750                                        MSS107.Outlet.Total.Fw * MSS107.Outlet.Total.zw(flu.PhosphoricAcid) * po.acido_fosforico +
2751                                        MSS108.Outlet.Total.Fw * MSS108.Outlet.Total.zw(NComp + sol.CaOH2) * po.cal +
2752                                        MSS109.Fluid.Fw * po.floculante +
2753                                        MSS202.Outlet.Total.Fw * MSS202.Outlet.Total.zw(flu.Ammonia) * po.amonia +
2754                                        MSS205.Outlet.Total.Fw * MSS205.Outlet.Total.zw(flu.H2SO4) * po.acido_sulfurico +
2755                                        F_MEG * po.etileno_glicol +
2756                                        PO_enzima
2757        ;
2758        AC_insumos      =
2759                                        MSS107.Outlet.Total.Fw * MSS107.Outlet.Total.zw(flu.PhosphoricAcid) * ac.acido_fosforico +
2760                                        MSS108.Outlet.Total.Fw * MSS108.Outlet.Total.zw(NComp + sol.CaOH2) * ac.cal +
2761                                        MSS109.Fluid.Fw * ac.floculante +
2762                                        MSS202.Outlet.Total.Fw * MSS202.Outlet.Total.zw(flu.Ammonia) * ac.amonia +
2763                                        MSS205.Outlet.Total.Fw * MSS205.Outlet.Total.zw(flu.H2SO4) * ac.acido_sulfurico +
2764                                        F_MEG * ac.etileno_glicol +
2765                                        AC_enzima
2766        ;
2767        EU_insumos      =
2768                                        MSS107.Outlet.Total.Fw * MSS107.Outlet.Total.zw(flu.PhosphoricAcid) * eu.acido_fosforico +
2769                                        MSS108.Outlet.Total.Fw * MSS108.Outlet.Total.zw(NComp + sol.CaOH2) * eu.cal +
2770                                        MSS109.Fluid.Fw * eu.floculante +
2771                                        MSS202.Outlet.Total.Fw * MSS202.Outlet.Total.zw(flu.Ammonia) * eu.amonia +
2772                                        MSS205.Outlet.Total.Fw * MSS205.Outlet.Total.zw(flu.H2SO4) * eu.acido_sulfurico +
2773                                        F_MEG * eu.etileno_glicol +
2774                                        EU_enzima
2775        ;
2776
2777        #Emissao total
2778        VARIABLES
2779        GWP100_total    as positive (Unit = 'kg/h');
2780        AD_total                as positive (Unit = 'kg/h');
2781        ODP_total               as positive (Unit = 'kg/h');
2782        HT_total                as positive (Unit = 'kg/h');
2783        FWAET_total     as positive (Unit = 'kg/h');
2784        MAET_total              as positive (Unit = 'kg/h');
2785        TET_total               as positive (Unit = 'kg/h');
2786        PO_total                as positive (Unit = 'kg/h');
2787        AC_total                as positive (Unit = 'kg/h');
2788        EU_total                as positive (Unit = 'kg/h');
2789       
2790        GWP100_total_enzima     as positive (Brief = " kg CO2 eq/h ");
2791
2792        EQUATIONS
2793        GWP100_total_enzima = GWP100_enzima / GWP100_total;
2794       
2795        GWP100_total =  GWP100_cana +
2796                                        GWP100_agua +
2797                                        GWP100_caldeira +
2798                                        GWP100_insumos
2799        ;
2800        AD_total =      AD_cana +
2801                                AD_agua +
2802                                AD_caldeira +
2803                                AD_insumos
2804        ;
2805        ODP_total = ODP_cana +
2806                                ODP_agua +
2807                                ODP_caldeira +
2808                                ODP_insumos
2809;
2810        HT_total =      HT_cana +
2811                                HT_agua +
2812                                HT_caldeira +
2813                                HT_insumos
2814        ;
2815        FWAET_total =   FWAET_cana +
2816                                        FWAET_agua +
2817                                        FWAET_caldeira +
2818                                        FWAET_insumos
2819        ;
2820        MAET_total =    MAET_cana +
2821                                        MAET_agua +
2822                                        MAET_caldeira +
2823                                        MAET_insumos
2824        ;
2825        TET_total = TET_cana +
2826                                TET_agua +
2827                                TET_caldeira +
2828                                TET_insumos
2829        ;
2830        PO_total =      PO_cana +
2831                                PO_agua +
2832                                PO_caldeira +
2833                                PO_insumos
2834        ;
2835        AC_total =      AC_cana +
2836                                AC_agua +
2837                                AC_caldeira +
2838                                AC_insumos
2839        ;
2840        EU_total =      EU_cana +
2841                                EU_agua +
2842                                EU_caldeira +
2843                                EU_insumos
2844        ;       
2845        #Emissao total por MJ de etanol anidro
2846        VARIABLES
2847        GWP100  as Real (Brief = " kg CO2 eq/MJ ethanol", Unit = 'kg/MJ');
2848        AD      as Real (Brief = " kg Sb eq /MJ ethanol", Unit = 'kg/MJ');
2849        ODP     as Real (Brief = " kg CFC-11 eq/MJ ethanol", Unit = 'kg/MJ');
2850        HT      as Real (Brief = " kg 1,4DB eq/MJ ethanol", Unit = 'kg/MJ');
2851        FWAET   as Real (Brief = " kg 1,4DB eq/MJ ethanol", Unit = 'kg/MJ');
2852        MAET    as Real (Brief = " kg 1,4DB eq/MJ ethanol", Unit = 'kg/MJ');
2853        TET     as Real (Brief = " kg 1,4DB eq/MJ ethanol", Unit = 'kg/MJ');
2854        PO      as Real (Brief = " kg C2H4 eq/MJ ethanol", Unit = 'kg/MJ');
2855        AC      as Real (Brief = " kg SO2 eq/MJ ethanol", Unit = 'kg/MJ');
2856        EU              as Real (Brief = " kg PO4-3 eq/MJ ethanol", Unit = 'kg/MJ');
2857       
2858        EQUATIONS
2859        DEH304.AnhyEth.Total.Fw * PCI.etanol_anidro * GWP100    =       GWP100_total;
2860        DEH304.AnhyEth.Total.Fw * PCI.etanol_anidro * AD                =       AD_total;
2861        DEH304.AnhyEth.Total.Fw * PCI.etanol_anidro * ODP               =       ODP_total;
2862        DEH304.AnhyEth.Total.Fw * PCI.etanol_anidro * HT                =       HT_total;
2863        DEH304.AnhyEth.Total.Fw * PCI.etanol_anidro * FWAET             =       FWAET_total;
2864        DEH304.AnhyEth.Total.Fw * PCI.etanol_anidro * MAET              =       MAET_total;
2865        DEH304.AnhyEth.Total.Fw * PCI.etanol_anidro * TET               =       TET_total;
2866        DEH304.AnhyEth.Total.Fw * PCI.etanol_anidro * PO                =       PO_total;
2867        DEH304.AnhyEth.Total.Fw * PCI.etanol_anidro * AC                =       AC_total;
2868        DEH304.AnhyEth.Total.Fw * PCI.etanol_anidro * EU                =       EU_total;
2869       
2870#*
2871*#
2872#*--------------------------- Alocacao Energetica ---------------------#
2873*       A alocacao energetica foi realizada levando em consideracao apenas etanol e energia
2874*       eletrica como produtos da biorrefinaria
2875*#
2876        VARIABLES
2877        frac_allo(2)                    as fraction (Brief = "Energy allocation fraction ");
2878        frac_allo_eco(2)                as fraction (Brief = "Energy allocation fraction ");
2879        total_energy_coproducts as Real         (Brief = "Total energy produced" , Unit = 'MJ/h');
2880       
2881        GWP100_Allo_eco as Real (Brief = " kg CO2 eq/MJ ethanol after ECONOMIC allocation ", Unit = 'g/MJ');
2882       
2883        GWP100_Allo as Real (Brief = " kg CO2 eq/MJ ethanol after energy allocation ", Unit = 'g/MJ');
2884        AD_Allo         as Real (Brief = " kg Sb eq /MJ ethanol after energy allocation ", Unit = 'kg/MJ');
2885        ODP_Allo        as Real (Brief = " kg CFC-11 eq/MJ ethanol after energy allocation ", Unit = 'kg/MJ');
2886        HT_Allo         as Real (Brief = " kg 1,4DB eq/MJ ethanol after energy allocation ", Unit = 'kg/MJ');
2887        FWAET_Allo  as Real (Brief = " kg 1,4DB eq/MJ ethanol after energy allocation ", Unit = 'kg/MJ');
2888        MAET_Allo       as Real (Brief = " kg 1,4DB eq/MJ ethanol after energy allocation ", Unit = 'kg/MJ');
2889        TET_Allo        as Real (Brief = " kg 1,4DB eq/MJ ethanol after energy allocation ", Unit = 'kg/MJ');
2890        PO_Allo         as Real (Brief = " kg C2H4 eq/MJ ethanol after energy allocation ", Unit = 'kg/MJ');
2891        AC_Allo         as Real (Brief = " kg SO2 eq/MJ ethanol after energy allocation ", Unit = 'kg/MJ');
2892        EU_Allo         as Real (Brief = " kg PO4-3 eq/MJ ethanol after energy allocation ", Unit = 'kg/MJ');
2893       
2894        EQUATIONS
2895        total_energy_coproducts = DEH304.AnhyEth.Total.Fw * PCI.etanol_anidro + Wnet ;
2896        frac_allo(1) * total_energy_coproducts = DEH304.AnhyEth.Total.Fw * PCI.etanol_anidro; #Ethanol
2897        frac_allo(2) = 1 - frac_allo(1); #Electricity
2898       
2899        GWP100_Allo = GWP100 * frac_allo(1);
2900        AD_Allo = AD * frac_allo(1);
2901        ODP_Allo = ODP * frac_allo(1);
2902        HT_Allo = HT * frac_allo(1);
2903        FWAET_Allo = FWAET * frac_allo(1);
2904        MAET_Allo = MAET * frac_allo(1);
2905        TET_Allo = TET * frac_allo(1);
2906        PO_Allo = PO * frac_allo(1);
2907        AC_Allo = AC * frac_allo(1);
2908        EU_Allo = EU * frac_allo(1);
2909       
2910        frac_allo_eco(1) * Revenue = AnhyEthProd * EcoPar.EthanolPrice * EcoPar.WorkedHours; #Ethanol
2911        frac_allo_eco(2) = 1 - frac_allo_eco(1); #Electricity
2912        GWP100_Allo_eco = GWP100 * frac_allo_eco(1);
2913       
2914#*
2915*#
2916
2917#*----------------------- Variaveis estudadas-----------------------*#
2918        SPECIFY
2919        #principais condicoes operacionais fermentador de C5
2920        #Produtividade = 4.78 * 'g/l/h';       
2921        Conc_xylose = 60 * 'g/l';       
2922        #Conc_ethanol = 28 * 'g/l';     
2923        #Yps_fermenter = 0.46;
2924        TDH_fermenter = 5.4 * 'h';# default
2925       
2926        FMS706.conv(4) = 0.917742;# default
2927       
2928        #FMS706.conv(4) = 0.957; # Limite da conversao da xilose para etanol
2929        #FMS706.conv(4) = 0.7656; # Conversao de 80% da xilose para etanol
2930        #FMS706.conv(4) = 0.5742; # Conversao de 60% da xilose para etanol
2931        #FMS706.conv(4) = 0.3828;  # Conversao de 40% da xilose para etanol
2932       
2933        #principais condicoes operacionais hidrolise
2934        EnzymeConc = 150 * 'g/l';
2935       
2936        n_Enzymeprice = 1;
2937       
2938        #Para a analise retro
2939        #SolMassFracHydro = 0.10;# default
2940        SolMassFracHydro = 0.14;
2941       
2942        #HLS604.reac_time = 96 * 'h';# default
2943        HLS604.reac_time = 76 * 'h';
2944       
2945        HLS604.Outlet.T = (50 + 273.15) * 'K';# default
2946       
2947        EnzymeLoad = 10;# default
2948        #EnzymeLoad = 10;
2949        #EnzymeLoad = 20;
2950       
2951        HLS604.conv = [0.756];  # default
2952        #HLS604.conv = [0.55716];
2953       
2954        #Principais variaveis pretratamento
2955       
2956        #SolMassFracPre = 0.2;
2957        SolMassFracPre = 0.10; # default
2958       
2959        RTS504.conv(1) = [0.0812];# default
2960        #RTS504.conv(1) = [0.05];
2961        #RTS504.conv(1) = [0.15];
2962       
2963        RTS504.conv(2:3) = [0.0007, 0.0528];
2964       
2965        RTS504.conv(4) = [0.4653];# default
2966        #RTS504.conv(4) = [0.45];
2967        #RTS504.conv(4) = [0.55];
2968       
2969        RTS504.conv(5:8)= [0.2577, 0.0389, 0.0739, 0.172];
2970       
2971        RTS504.Outlet.T = (195 + 273.15) * 'K'; # default
2972        #RTS504.Outlet.T = (458.15) * 'K';
2973        #RTS504.Outlet.T = (468.15) * 'K';
2974       
2975#*
2976*#
2977        OPTIONS
2978        Dynamic = false;
2979        GuessFile = "var1_2_teste.rlt";
2980       
2981        NLASolver(
2982                File = "nlasolver",
2983                #File = "sundials",
2984                RelativeAccuracy = 1e-3,
2985                AbsoluteAccuracy = 1e-6,
2986                MaxIterations = 100
2987        );
2988       
2989end
Note: See TracBrowser for help on using the repository browser.