Skip to content

Latest commit

 

History

History
272 lines (231 loc) · 17.3 KB

File metadata and controls

272 lines (231 loc) · 17.3 KB

ADM1 Property Package

This package implements properties and reactions of an anaerobic digestion model for industrial wastewater treatment from food and beverage production using an anaerobic digester as provided in Batstone, D. J. et al. (2002) and Rosen and Jeppsson (2006).

This Anaerobic Digestion Model no.1 (ADM1) property/reaction package:
  • supports 'H2O', 'S_su', 'S_aa', 'S_fa', 'S_va', 'S_bu', 'S_pro', 'S_ac', 'S_h2', 'S_ch4', 'S_IC', 'S_IN', 'S_I', 'X_c', 'X_ch', 'X_pr', 'X_li', 'X_su', 'X_aa', 'X_fa', 'X_c4', 'X_pro', 'X_ac', 'X_h2', 'X_I', 'S_cat', 'S_an', and 'S_co2' as components
  • supports only liquid and vapor phase

Sets

Description Symbol Indices
Components j ['H2O', 'S_su', 'S_aa', 'S_fa', 'S_va', 'S_bu', 'S_pro', 'S_ac', 'S_h2', 'S_ch4', 'S_IC', 'S_IN', 'S_I', 'X_c', 'X_ch', 'X_pr', 'X_li', 'X_su', 'X_aa', 'X_fa', 'X_c4', 'X_pro', 'X_ac', 'X_h2', 'X_I', 'S_cat', 'S_an', 'S_co2']
Phases p ['Liq', 'Vap']

Components

Description Symbol Variable
Monosaccharides, S_su S_{su} S_su
Amino acids, S_aa S_{aa} S_aa
Long chain fatty acids, S_fa S_{fa} S_fa
Total valerate, S_va S_{va} S_va
Total butyrate, S_bu S_{bu} S_bu
Total propionate, S_pro S_{pro} S_pro
Total acetate, S_ac S_{ac} S_ac
Hydrogen gas, S_h2 S_{h2} S_h2
Methane gas, S_ch4 S_{ch4} S_ch4
Inorganic carbon, S_IC S_{IC} S_IC
Inorganic nitrogen, S_IN S_{IN} S_IN
Soluble inerts, S_I S_I S_I
Composites, X_c X_c X_c
Carbohydrates, X_ch X_{ch} X_ch
Proteins, X_pr X_{pr} X_pr
Lipids, X_li X_{li} X_li
Sugar degraders, X_su X_{su} X_su
Amino acid degraders, X_aa X_{aa} X_aa
Long chain fatty acid (LCFA) degraders, X_fa X_{fa} X_fa
Valerate and butyrate degraders, X_c4 X_{c4} X_c4
Propionate degraders, X_pro X_{pro} X_pro
Acetate degraders, X_ac X_{ac} X_ac
Hydrogen degraders, X_h2 X_{h2} X_h2
Particulate inerts, X_I X_I X_I
Total cation equivalents concentration, S_cat S_{cat} S_cat
Total anion equivalents concentration, S_an S_{an} S_an
Carbon dioxide, S_co2 S_{co2} S_co2

NOTE: S_h2 and S_ch4 have vapor phase and liquid phase, S_co2 only has vapor phase, and the other components only have liquid phase

State variables

Description Symbol Variable Index Units
Total volumetric flowrate Q flow_vol None \text{m}^3\text{/s}
Temperature T temperature None \text{K}
Pressure P pressure None \text{Pa}
Component mass concentrations C_j conc_mass_comp [p] \text{kg/}\text{m}^3
Anions in molar concentrations M_a anions None \text{kmol/}\text{m}^3
Cations in molar concentrations M_c cations None \text{kmol/}\text{m}^3
Water pressure P_{w,sat} p_w_sat None \text{Pa}
Component pressure P_{j,sat} p_sat [p] \text{Pa}

Stoichiometric Parameters

Description Symbol Parameter Value at 20 C Units
Soluble inerts from composites, f_sI_xc f_{sI,xc} f_sI_xc 0.1 \text{dimensionless}
Particulate inerts from composites, f_xI_xc f_{xI,xc} f_xI_xc 0.2 \text{dimensionless}
Carbohydrates from composites, f_ch_xc f_{ch,xc} f_ch_xc 0.2 \text{dimensionless}
Proteins from composites, f_pr_xc f_{pr,xc} f_pr_xc 0.2 \text{dimensionless}
Lipids from composites, f_li_xc f_{li,xc} f_li_xc 0.3 \text{dimensionless}
Nitrogen content of composites, N_xc N_{xc} N_xc 0.0376/14 \text{kmol-N/}\text{kg-COD}
Nitrogen content of inerts, N_I N_I N_I 0.06/14 \text{kmol-N/}\text{kg-COD}
Nitrogen in amino acids and proteins, N_aa N_{aa} N_aa 0.007 \text{kmol-N/}\text{kg-COD}
Nitrogen content in bacteria, N_bac N_{bac} N_bac 0.08/14 \text{kmol-N/}\text{kg-COD}
Fatty acids from lipids, f_fa_li f_{fa,li} f_fa_li 0.95 \text{dimensionless}
Hydrogen from sugars, f_h2_su f_{h2,su} f_h2_su 0.19 \text{dimensionless}
Butyrate from sugars, f_bu_su f_{bu,su} f_bu_su 0.13 \text{dimensionless}
Propionate from sugars, f_pro_su f_{pro,su} f_pro_su 0.27 \text{dimensionless}
Acetate from sugars, f_ac_su f_{ac,su} f_ac_su 0.41 \text{dimensionless}
Hydrogen from amino acids, f_h2_aa f_{h2,aa} f_h2_aa 0.06 \text{dimensionless}
Valerate from amino acids, f_va_aa f_{va,aa} f_va_aa 0.23 \text{dimensionless}
Butyrate from amino acids, f_bu_aa f_{bu,aa} f_bu_aa 0.26 \text{dimensionless}
Propionate from amino acids, f_pro_aa f_{pro,aa} f_pro_aa 0.05 \text{dimensionless}
Acetate from amino acids, f_ac_aa f_{ac,aa} f_ac_aa 0.4 \text{dimensionless}
Yield of biomass on sugar substrate, Y_su Y_{su} Y_su 0.1 \text{kg-COD X/}\text{kg-COD S}
Yield of biomass on amino acid substrate, Y_aa Y_{aa} Y_aa 0.08 \text{kg-COD X/}\text{kg-COD S}
Yield of biomass on fatty acid substrate, Y_fa Y_{fa} Y_fa 0.06 \text{kg-COD X/}\text{kg-COD S}
Yield of biomass on valerate and butyrate substrate, Y_c4 Y_{c4} Y_c4 0.06 \text{kg-COD X/}\text{kg-COD S}
Yield of biomass on propionate substrate, Y_pro Y_{pro} Y_pro 0.04 \text{kg-COD X/}\text{kg-COD S}
Yield of biomass on acetate substrate, Y_ac Y_{ac} Y_ac 0.05 \text{kg-COD X/}\text{kg-COD S}
Yield of hydrogen per biomass, Y_h2 Y_{h2} Y_h2 0.06 \text{kg-COD X/}\text{kg-COD S}

Kinetic Parameters

Description Symbol Parameter Value at 20 C Units
First-order kinetic parameter for disintegration, k_dis k_{dis} k_dis 0.5 \text{d}^{-1}
First-order kinetic parameter for hydrolysis of carbohydrates, k_hyd_ch k_{hyd,ch} k_hyd_ch 10 \text{d}^{-1}
First-order kinetic parameter for hydrolysis of proteins, k_hyd_pr k_{hyd,pr} k_hyd_pr 10 \text{d}^{-1}
First-order kinetic parameter for hydrolysis of lipids, k_hyd_li k_{hyd,li} k_hyd_li 10 \text{d}^{-1}
Inhibition parameter for inorganic nitrogen, K_S_IN K_{S_{IN}} K_S_IN 1e-4 \text{kmol/}\text{m}^3
Monod maximum specific uptake rate of sugars, k_m_su k_{m_{su}} k_m_su 30 \text{d}^{-1}
Half saturation value for uptake of sugars, K_S_su K_{S_{su}} K_S_su 0.5 \text{kg/}\text{m}^3
Upper limit of pH for uptake rate of amino acids, pH_UL_aa pH_{UL,aa} pH_UL_aa 5.5 \text{dimensionless}
Lower limit of pH for uptake rate of amino acids, pH_LL_aa pH_{LL,aa} pH_LL_aa 4 \text{dimensionless}
Monod maximum specific uptake rate of amino acids, k_m_aa k_{m_{aa}} k_m_aa 50 \text{d}^{-1}
Half saturation value for uptake of amino acids, K_S_aa K_{S_{aa}} K_S_aa 0.3 \text{kg/}\text{m}^3
Monod maximum specific uptake rate of fatty acids, k_m_fa k_{m_{fa}} k_m_fa 6 \text{d}^{-1}
Half saturation value for uptake of fatty acids, K_S_fa K_{S_{fa}} K_S_fa 0.4 \text{kg/}\text{m}^3
Inhibition parameter for hydrogen during uptake of fatty acids, K_I_h2_fa K_{I,h2_{fa}} K_I_h2_fa 5e-6 \text{kg/}\text{m}^3
Monod maximum specific uptake rate of valerate and butyrate, k_m_c4 k_{m_{c4}} k_m_c4 20 \text{d}^{-1}
Half saturation value for uptake of valerate and butyrate, K_S_c4 K_{S_{c4}} K_S_c4 0.2 \text{kg/}\text{m}^3
Inhibition parameter for hydrogen during uptake of valerate and butyrate, K_I_h2_c4 K_{I,h2_{c4}} K_I_h2_c4 1e-5 \text{kg/}\text{m}^3
Monod maximum specific uptake rate of propionate, k_m_pro k_{m_{pro}} k_m_pro 13 \text{d}^{-1}
Half saturation value for uptake of propionate, K_S_pro K_{S_{pro}} K_S_pro 0.1 \text{kg/}\text{m}^3
Inhibition parameter for hydrogen during uptake of propionate, K_I_h2_pro K_{I,h2_{pro}} K_I_h2_pro 3.5e-6 \text{kg/}\text{m}^3
Monod maximum specific uptake rate of acetate, k_m_ac k_{m_{ac}} k_m_ac 8 \text{d}^{-1}
Half saturation value for uptake of acetate, K_S_ac K_{S_{ac}} K_S_ac 0.15 \text{kg/}\text{m}^3
Inhibition parameter for ammonia during uptake of acetate, K_I_nh3 K_{I,nh3} K_I_nh3 0.0018 \text{kg/}\text{m}^3
Upper limit of pH for uptake rate of acetate, pH_UL_ac pH_{UL,ac} pH_UL_ac 7 \text{dimensionless}
Lower limit of pH for uptake rate of acetate, pH_LL_ac pH_{LL,ac} pH_LL_ac 6 \text{dimensionless}
Monod maximum specific uptake rate of hydrogen, k_m_h2 k_{m_{h2}} k_m_h2 35 \text{d}^{-1}
Half saturation value for uptake of hydrogen, K_S_h2 K_{S_{h2}} K_S_h2 7e-6 \text{kg/}\text{m}^3
Upper limit of pH for uptake rate of hydrogen, pH_UL_h2 pH_{UL,h2} pH_UL_h2 6 \text{dimensionless}
Lower limit of pH for uptake rate of hydrogen, pH_LL_h2 pH_{LL,h2} pH_LL_h2 5 \text{dimensionless}
First-order decay rate for X_su, k_dec_X_su k_{dec,X_{su}} k_dec_X_su 0.02 \text{d}^{-1}
First-order decay rate for X_aa, k_dec_X_aa k_{dec,X_{aa}} k_dec_X_aa 0.02 \text{d}^{-1}
First-order decay rate for X_fa, k_dec_X_fa k_{dec,X_{fa}} k_dec_X_fa 0.02 \text{d}^{-1}
First-order decay rate for X_c4, k_dec_X_c4 k_{dec,X_{c4}} k_dec_X_c4 0.02 \text{d}^{-1}
First-order decay rate for X_pro, k_dec_X_pro k_{dec,X_{pro}} k_dec_X_pro 0.02 \text{d}^{-1}
First-order decay rate for X_ac, k_dec_X_ac k_{dec,X_{ac}} k_dec_X_ac 0.02 \text{d}^{-1}
First-order decay rate for X_h2, k_dec_X_h2 k_{dec,X_{h2}} k_dec_X_h2 0.02 \text{d}^{-1}
Dissociation constant, KW KW KW 2.08e-14 (\text{kmol/}\text{m}^3)^2
Valerate acid-base equilibrium constant, K_a_va K_{a,va} K_a_va 1.38e-5 \text{kmol/}\text{m}^3
Butyrate acid-base equilibrium constant, K_a_bu K_{a,bu} K_a_bu 1.5e-5 \text{kmol/}\text{m}^3
Propionate acid-base equilibrium constant, K_a_pro K_{a,pro} K_a_bu 1.32e-5 \text{kmol/}\text{m}^3
Acetate acid-base equilibrium constant, K_a_ac K_{a,ac} K_a_ac 1.74e-5 \text{kmol/}\text{m}^3
Carbon dioxide acid-base equilibrium constant, K_a_co2 K_{a,co2} K_a_co2 4.94e-7 \text{kmol/}\text{m}^3
Inorganic nitrogen acid-base equilibrium constant, K_a_IN K_{a,IN} K_a_IN 1.11e-9 \text{kmol/}\text{m}^3

Properties

Description Symbol Variable Index Units
Fluid specific heat capacity c_p cp None \text{J/kg/K}
Mass density \rho dens_mass [p] \text{kg/}\text{m}^3

Process Rate Equations

Description Equation
Disintegration \rho_1 = k_{dis} C_{X_c}
Hydrolysis of carbohydrates \rho_2 = k_{hyd,ch} C_{X_{ch}}
Hydrolysis of proteins \rho_3 = k_{hyd,pr} C_{X_{pr}}
Hydrolysis of lipids \rho_4 = k_{hyd,li} C_{X_{li}}
Uptake of sugars \rho_5 = k_{m_{su}} \frac{C_{S_{su}}}{K_{S_{su}}+C_{S_{su}}} C_{X_{su}} \frac{1}{1 + K_{S_{IN}}/C_{S_{IN}}/14} I_{pH,aa}
Uptake of amino acids \rho_6 = k_{m_{aa}} \frac{C_{S_{aa}}}{K_{S_{aa}}+C_{S_{aa}}} C_{X_{aa}} \frac{1}{1 + K_{S_{IN}}/C_{S_{IN}}/14} I_{pH,aa}
Uptake of long chain fatty acids (LCFAs) \rho_7 = k_{m_{fa}} \frac{C_{S_{fa}}}{K_{S_{fa}}+C_{S_{fa}}} C_{X_{fa}} \frac{1}{1 + K_{S_{IN}}/C_{S_{IN}}/14} \cdot \frac{1}{1 + C_{S_{h2}}/K_{I,h2_{fa}}} I_{pH,aa}
Uptake of valerate \rho_8 = k_{m_{c4}} \frac{C_{S_{va}}}{K_{S_{c4}}+C_{S_{va}}} C_{X_{c4}} \frac{C_{S_{va}}}{C_{S_{bu}} + C_{S_{va}}} \cdot \frac{1}{1 + K_{S_{IN}}/C_{S_{IN}}/14} \cdot \frac{1}{1 + C_{S_{h2}}/K_{I,h2_{c4}}} I_{pH,aa}
Uptake of butyrate \rho_9 = k_{m_{c4}} \frac{C_{S_{bu}}}{K_{S_{c4}}+C_{S_{bu}}} C_{X_{c4}} \frac{C_{S_{bu}}}{C_{S_{bu}} + C_{S_{va}}} \cdot \frac{1}{1 + K_{S_{IN}}/C_{S_{IN}}/14} \cdot \frac{1}{1 + C_{S_{h2}}/K_{I,h2_{c4}}} I_{pH,aa}
Uptake of propionate \rho_{10} = k_{m_{pro}} \frac{C_{S_{pro}}}{K_{S_{pro}}+C_{S_{pro}}} C_{X_{pro}} \cdot \frac{1}{1 + K_{S_{IN}}/C_{S_{IN}}/14} \cdot \frac{1}{1 + C_{S_{h2}}/K_{I,h2_{pro}}} I_{pH,aa}
Uptake of acetate \rho_{11} = k_{m_{ac}} \frac{C_{S_{ac}}}{K_{S_{ac}}+C_{S_{ac}}} C_{X_{ac}} \cdot \frac{1}{1 + K_{S_{IN}}/C_{S_{IN}}/14} \cdot \frac{1}{1 + C_{NH3}/K_{I,nh3}} I_{pH,ac}
Uptake of hydrogen \rho_{12} = k_{m_{h2}} \frac{C_{S_{h2}}}{K_{S_{h2}}+C_{S_{h2}}} C_{X_{h2}} \cdot \frac{1}{1 + K_{S_{IN}}/C_{S_{IN}}/14} I_{pH,h2}
Decay of X_su \rho_{13} = k_{dec, X_{su}} C_{X_{su}}
Decay of X_aa \rho_{14} = k_{dec, X_{aa}} C_{X_{aa}}
Decay of X_fa \rho_{15} = k_{dec, X_{fa}} C_{X_{fa}}
Decay of X_c4 \rho_{16} = k_{dec, X_{c4}} C_{X_{c4}}
Decay of X_pro \rho_{17} = k_{dec, X_{pro}} C_{X_{pro}}
Decay of X_ac \rho_{18} = k_{dec, X_{ac}} C_{X_{ac}}
Decay of X_h2 \rho_{19} = k_{dec, X_{h2}} C_{X_{h2}}

The rules for pH inhibition of amino-acid-utilizing microorganisms (I_{pH,aa}), acetate-utilizing microorganisms (I_{pH,ac}), and hydrogen-utilizing microorganisms (I_{pH,h2}) are:

I_{pH,aa}=
\begin{cases}
  \exp{-3 (\frac{pH - pH_{UL,aa}}{pH_{UL,aa} - pH_{LL,aa}})^2} & \text{for } pH \le pH_{UL,aa}\\
  1 & \text{for } pH > pH_{UL,aa}
\end{cases}
I_{pH,ac}=
\begin{cases}
  \exp{-3 (\frac{pH - pH_{UL,ac}}{pH_{UL,ac} - pH_{LL,ac}})^2} & \text{for } pH \le pH_{UL,ac}\\
  1 & \text{for } pH > pH_{UL,ac}
\end{cases}
I_{pH,aa}=
\begin{cases}
  \exp{-3 (\frac{pH - pH_{UL,h2}}{pH_{UL,h2} - pH_{LL,h2}})^2} & \text{for } pH \le pH_{UL,h2}\\
  1 & \text{for } pH > pH_{UL,h2}
\end{cases}

Classes

.. currentmodule:: watertap.property_models.anaerobic_digestion.adm1_properties

.. autoclass:: ADM1ParameterBlock
    :members:
    :noindex:

.. autoclass:: ADM1ParameterData
    :members:
    :noindex:

.. autoclass:: _ADM1StateBlock
    :members:
    :noindex:

.. autoclass:: ADM1StateBlockData
    :members:
    :noindex:

.. currentmodule:: watertap.property_models.anaerobic_digestion.adm1_properties_vapor

.. autoclass:: ADM1_vaporParameterBlock
    :members:
    :noindex:

.. autoclass:: ADM1_vaporParameterData
    :members:
    :noindex:

.. autoclass:: _ADM1_vaporStateBlock
    :members:
    :noindex:

.. autoclass:: ADM1_vaporStateBlockData
    :members:
    :noindex:

.. currentmodule:: watertap.property_models.anaerobic_digestion.adm1_reactions

.. autoclass:: ADM1ReactionParameterBlock
    :members:
    :noindex:

.. autoclass:: ADM1ReactionParameterData
    :members:
    :noindex:

.. autoclass:: _ADM1ReactionBlock
    :members:
    :noindex:

.. autoclass:: ADM1ReactionBlockData
    :members:
    :noindex:


References

[1] Batstone, D.J., Keller, J., Angelidaki, I., Kalyuzhnyi, S.V., Pavlostathis, S.G., Rozzi, A., Sanders, W.T.M., Siegrist, H.A. and Vavilin, V.A., 2002. The IWA anaerobic digestion model no 1 (ADM1). Water Science and technology, 45(10), pp.65-73. https://iwaponline.com/wst/article-abstract/45/10/65/6034

[2] Rosen, C. and Jeppsson, U., 2006. Aspects on ADM1 Implementation within the BSM2 Framework. Department of Industrial Electrical Engineering and Automation, Lund University, Lund, Sweden, pp.1-35. https://www.iea.lth.se/WWTmodels_download/TR_ADM1.pdf