modelADM1_PetersenMatrix
Constructing the Petersen Matrix of ADM1
Extends from TransiEnt.Basics.Icons.ADM1 (Icon for ADM1 model).
Information
1. Purpose of model
(Description)
2. Level of detail, physical effects considered, and physical insight
(Description)
3. Limits of validity
(Description)
4. Interfaces
(none)
5. Nomenclature
(no elements)
6. Governing Equations
(no equations)
7. Remarks for Usage
(none)
8. Validation
(no validation or testing necessary)
9. References
[1] D.J. Batstone, J. Keller*, I. Angelidaki, S.V. Kalyuzhnyi, S.G. Pavlostathis, A. Rozzi, W.T.M. Sanders, H. Siegrist and V.A. Vavilin, (2002), "The IWA Anaerobic Digestion Model No 1 (ADM1)"
10. Version History
Model created by Philipp Jahneke (philipp.koziol@tuhhl.de), Sept 2018
Model adapted for TransiEnt by Jan Westphal (j.westphal@tuhh.de) in May 2020
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| Real | Y_pro | if operationMode == "thermophilic" then Parameters.Y_pro_therm else Parameters.Y_pro_meso | |
| Real[4,9] | HydSol | [{0, 1, 0, (1 - Parameters.f_fa_li)}, {0, 0, 1, 0}, {0, 0, 0, Parameters.f_fa_li}, zeros(4, 6)] | part of Petersen Matrix describing effect of processes 1-4 (Disintegration & Hydrolysis) on Components 1-9 (solubles) |
| Real[8,9] | MonodSol | [-1*identity(8), zeros(8, 1)] + [zeros(6, 3), [0, (1 - Parameters.Y_su)*Parameters.f_bu_su, (1 - Parameters.Y_su)*Parameters.f_pro_su, (1 - Parameters.Y_su)*Parameters.f_ac_su, (1 - Parameters.Y_su)*Parameters.f_h2_su; (1 - Parameters.Y_aa)*Parameters.f_va_aa, (1 - Parameters.Y_aa)*Parameters.f_bu_aa, (1 - Parameters.Y_aa)*Parameters.f_pro_aa, (1 - Parameters.Y_aa)*Parameters.f_ac_aa, (1 - Parameters.Y_aa)*Parameters.f_h2_aa; 0, 0, 0, (1 - Parameters.Y_fa)*0.7, (1 - Parameters.Y_fa)*0.3; 0, 0, (1 - Parameters.Y_c4)*0.54, (1 - Parameters.Y_c4)*0.31, (1 - Parameters.Y_c4)*0.15; 0, 0, 0, (1 - Parameters.Y_c4)*0.8, (1 - Parameters.Y_c4)*0.2; 0, 0, 0, (1 - Y_pro)*0.57, (1 - Y_pro)*0.43], zeros(6, 1); zeros(2, 8), {1 - Parameters.Y_ac, 1 - Parameters.Y_h2}] | part of Petersen Matrix describing effect of processes 5-12 (Metabolism described as Monod Equations) on Components 1-9 (solubles) |
| Real[4,11] | HydPart | [-1*identity(4) + [0, Parameters.f_ch_xc, Parameters.f_pr_xc, Parameters.f_li_xc; zeros(3, 4)], zeros(4, 7)] | part of Petersen Matrix describing effect of processes 1-4 (Disintegration & Hydrolysis) on Components 13-23 (Particulates & Microorganisms) |
| Real[8,11] | MonodPart | [zeros(8, 4), [diagonal({Parameters.Y_su, Parameters.Y_aa, Parameters.Y_fa, Parameters.Y_c4}), zeros(4, 3); zeros(4, 3), diagonal({Parameters.Y_c4, Y_pro, Parameters.Y_ac, Parameters.Y_h2})]] | part of Petersen Matrix describing effect of processes 5-12 (Metabolism described as Monod Equations) on Components 13-23 (Particulates & Microorganisms) |
| Real[7,11] | DecPart | [ones(7, 1), zeros(7, 3), -1*identity(7)] | part of Petersen Matrix describing effect of processes 13-23 (Decay of Microorganisms on Components 13-23 (Particulates & Microorganisms |
| Real[19] | SolInert | cat(1, {Parameters.f_sI_xc}, zeros(18)) | part of Petersen Matrix describing Balance of Soluble Inerts |
| Real[19] | PartInert | cat(1, {Parameters.f_xI_xc}, zeros(18)) | part of Petersen Matrix describing Balance of Particulate Inerts |
| Real[19] | CBalance | if CarbonBalance == 2 then CBalance2 elseif CarbonBalance == 1 then CBalance1 else CBalance0 | Carbon Balance in Petersen Matrix |
| Real[19] | NBalance | if NitrogenBalance == 2 then NBalance2 else NBalance0 | Nitrgoen Balance in Petersen Matrix |
| Real[19] | CBalance0 | cat(1, zeros(4), -1*{s5, s6}, zeros(3), -1*{s10, s11, s12}, zeros(7)) | |
| Real[19] | CBalance1 | cat(1, zeros(4), -1*{s5, s6, s7, s8, s9, s10, s11, s12}, zeros(7)) | |
| Real[19] | CBalance2 | cat(1, -1*{s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12}, fill(s13, 7)) | |
| Real[19] | NBalance0 | cat(1, zeros(4), {0, Parameters.N_aa, 0, 0, 0, 0, 0, 0} - Parameters.N_bac*{Parameters.Y_su, Parameters.Y_aa, Parameters.Y_fa, Parameters.Y_c4, Parameters.Y_c4, Y_pro, Parameters.Y_ac, Parameters.Y_h2}, zeros(7)) | |
| Real[19] | NBalance2 | cat(1, {Parameters.N_xc - Parameters.f_xI_xc*Parameters.N_I - Parameters.f_sI_xc*Parameters.N_I - Parameters.f_pr_xc*Parameters.N_aa}, zeros(3), {0, Parameters.N_aa, 0, 0, 0, 0, 0, 0} - Parameters.N_bac*{Parameters.Y_su, Parameters.Y_aa, Parameters.Y_fa, Parameters.Y_c4, Parameters.Y_c4, Y_pro, Parameters.Y_ac, Parameters.Y_h2}, fill(Parameters.N_bac - Parameters.N_xc, 7)) | |
| ADM1_Units.MoleContent | s1 | -Parameters.C_xc + Parameters.f_sI_xc*Parameters.C_sI + Parameters.f_ch_xc*Parameters.C_ch + Parameters.f_pr_xc*Parameters.C_pr + Parameters.f_li_xc*Parameters.C_li + Parameters.f_xI_xc*Parameters.C_xI | |
| ADM1_Units.MoleContent | s2 | -Parameters.C_ch + Parameters.C_su | |
| ADM1_Units.MoleContent | s3 | -Parameters.C_pr + Parameters.C_aa | |
| ADM1_Units.MoleContent | s4 | -Parameters.C_li + (1 - Parameters.f_fa_li)*Parameters.C_su + Parameters.f_fa_li*Parameters.C_fa | |
| ADM1_Units.MoleContent | s5 | -Parameters.C_su + (1 - Parameters.Y_su)*(Parameters.f_bu_su*Parameters.C_bu + Parameters.f_pro_su*Parameters.C_pro + Parameters.f_ac_su*Parameters.C_ac) + Parameters.Y_su*Parameters.C_bac | |
| ADM1_Units.MoleContent | s6 | -Parameters.C_aa + (1 - Parameters.Y_aa)*(Parameters.f_va_aa*Parameters.C_va + Parameters.f_bu_aa*Parameters.C_bu + Parameters.f_pro_aa*Parameters.C_pro + Parameters.f_ac_aa*Parameters.C_ac) + Parameters.Y_aa*Parameters.C_bac | |
| ADM1_Units.MoleContent | s7 | -Parameters.C_fa + (1 - Parameters.Y_fa)*0.7*Parameters.C_ac + Parameters.Y_fa*Parameters.C_bac | |
| ADM1_Units.MoleContent | s8 | -Parameters.C_va + (1 - Parameters.Y_c4)*(0.54*Parameters.C_pro + 0.31*Parameters.C_ac) + Parameters.Y_c4*Parameters.C_bac | |
| ADM1_Units.MoleContent | s9 | -Parameters.C_bu + (1 - Parameters.Y_c4)*0.8*Parameters.C_ac + Parameters.Y_c4*Parameters.C_bac | |
| ADM1_Units.MoleContent | s10 | -Parameters.C_pro + (1 - Y_pro)*0.57*Parameters.C_ac + Y_pro*Parameters.C_bac | |
| ADM1_Units.MoleContent | s11 | -Parameters.C_ac + (1 - Parameters.Y_ac)*Parameters.C_ch4 + Parameters.Y_ac*Parameters.C_bac | |
| ADM1_Units.MoleContent | s12 | (1 - Parameters.Y_h2)*Parameters.C_ch4 + Parameters.Y_h2*Parameters.C_bac | |
| ADM1_Units.MoleContent | s13 | -Parameters.C_bac + Parameters.C_xc | |
| Real | PM | [[HydSol; MonodSol; zeros(7, 9)], CBalance, NBalance, SolInert, [HydPart; MonodPart; DecPart], PartInert] | Petersen Matrix as used in ADM1 |
| String | operationMode | "mesophilic" | |
| Integer | CarbonBalance | 0 | |
| Integer | NitrogenBalance | 0 |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| Records.ADM1_parameters_BSM2 | Parameters |