Appearance
ADM1 - Anaerobic Digestion Model No. 1
IWA standard model for comprehensive anaerobic digestion simulation including biochemical and physicochemical processes
Overview
ADM1 (Anaerobic Digestion Model No. 1) is the internationally recognized biokinetic model developed by the IWA Task Group for Mathematical Modelling of Anaerobic Digestion Processes, published in 2002. It provides a comprehensive framework for simulating the complex biochemical and physicochemical processes occurring in anaerobic digesters, including hydrolysis, acidogenesis, acetogenesis, methanogenesis, and gas-liquid transfer.
When to Use
Recommended For
- Anaerobic digesters (mesophilic and thermophilic)
- Biogas production optimization
- Sludge digestion and stabilization
- Co-digestion studies
- Process control and optimization
- Volatile fatty acid (VFA) accumulation analysis
- pH and alkalinity management
Not Recommended For
- Aerobic processes (use ASM1, ASM2d, ASM3)
- Short SRT systems (<10 days)
- Highly simplified design calculations
- Systems without adequate characterization data
State Variables
ADM1 uses 35 state variables in three categories: soluble components, particulate components, and cations/anions.
Soluble Components (12)
| Index | Symbol | Description | Unit |
|---|---|---|---|
| 0 | S_su | Monosaccharides (sugars) | kg COD/m3 |
| 1 | S_aa | Amino acids | kg COD/m3 |
| 2 | S_fa | Long chain fatty acids (LCFA) | kg COD/m3 |
| 3 | S_va | Total valerate | kg COD/m3 |
| 4 | S_bu | Total butyrate | kg COD/m3 |
| 5 | S_pro | Total propionate | kg COD/m3 |
| 6 | S_ac | Total acetate | kg COD/m3 |
| 7 | S_h2 | Hydrogen gas | kg COD/m3 |
| 8 | S_ch4 | Methane gas | kg COD/m3 |
| 9 | S_IC | Inorganic carbon | kmol C/m3 |
| 10 | S_IN | Inorganic nitrogen | kmol N/m3 |
| 11 | S_I | Soluble inerts | kg COD/m3 |
Particulate Components (12)
| Index | Symbol | Description | Unit |
|---|---|---|---|
| 12 | X_c | Composites | kg COD/m3 |
| 13 | X_ch | Carbohydrates | kg COD/m3 |
| 14 | X_pr | Proteins | kg COD/m3 |
| 15 | X_li | Lipids | kg COD/m3 |
| 16 | X_su | Sugar degraders | kg COD/m3 |
| 17 | X_aa | Amino acid degraders | kg COD/m3 |
| 18 | X_fa | LCFA degraders | kg COD/m3 |
| 19 | X_c4 | Valerate and butyrate degraders | kg COD/m3 |
| 20 | X_pro | Propionate degraders | kg COD/m3 |
| 21 | X_ac | Acetoclastic methanogens | kg COD/m3 |
| 22 | X_h2 | Hydrogenotrophic methanogens | kg COD/m3 |
| 23 | X_I | Particulate inerts | kg COD/m3 |
Cations and Anions (3)
| Index | Symbol | Description | Unit |
|---|---|---|---|
| 24 | S_cat | Cations (Na+, K+, etc.) | kmol/m3 |
| 25 | S_an | Anions (Cl-, etc.) | kmol/m3 |
| 26 | S_hco3 | Bicarbonate | kmol/m3 |
Gas Phase Components (3)
| Index | Symbol | Description | Unit |
|---|---|---|---|
| 27 | S_gas,h2 | Hydrogen in gas phase | kg COD/m3 |
| 28 | S_gas,ch4 | Methane in gas phase | kg COD/m3 |
| 29 | S_gas,co2 | Carbon dioxide in gas phase | kmol/m3 |
Biochemical Processes (19)
ADM1 includes 19 biochemical processes organized into five main categories.
Process Summary
| # | Process | Category |
|---|---|---|
| 1 | Disintegration | Extracellular |
| 2 | Hydrolysis of carbohydrates | Extracellular |
| 3 | Hydrolysis of proteins | Extracellular |
| 4 | Hydrolysis of lipids | Extracellular |
| 5 | Uptake of sugars | Acidogenesis |
| 6 | Uptake of amino acids | Acidogenesis |
| 7 | Uptake of LCFA | Acetogenesis |
| 8 | Uptake of valerate | Acetogenesis |
| 9 | Uptake of butyrate | Acetogenesis |
| 10 | Uptake of propionate | Acetogenesis |
| 11 | Uptake of acetate | Methanogenesis |
| 12 | Uptake of hydrogen | Methanogenesis |
| 13 | Decay of X_su | Decay |
| 14 | Decay of X_aa | Decay |
| 15 | Decay of X_fa | Decay |
| 16 | Decay of X_c4 | Decay |
| 17 | Decay of X_pro | Decay |
| 18 | Decay of X_ac | Decay |
| 19 | Decay of X_h2 | Decay |
Process Hierarchy
Disintegration
|
+-- X_c -> X_ch + X_pr + X_li + X_I + S_I
|
Hydrolysis
|
+-- X_ch -> S_su
+-- X_pr -> S_aa
+-- X_li -> S_fa + S_su
|
Acidogenesis
|
+-- S_su -> S_bu + S_pro + S_ac + S_h2
+-- S_aa -> S_va + S_bu + S_pro + S_ac + S_h2
|
Acetogenesis
|
+-- S_fa -> S_ac + S_h2
+-- S_va -> S_pro + S_ac + S_h2
+-- S_bu -> S_ac + S_h2
+-- S_pro -> S_ac + S_h2
|
Methanogenesis
|
+-- S_ac -> S_ch4 + S_IC (acetoclastic)
+-- S_h2 + S_IC -> S_ch4 (hydrogenotrophic)Disintegration
Composite particulate matter (X_c) breaks down into carbohydrates, proteins, lipids, and inert fractions:
$$X_c \xrightarrow{k_{dis}} f_{ch,xc} \cdot X_{ch} + f_{pr,xc} \cdot X_{pr} + f_{li,xc} \cdot X_{li} + f_{xI,xc} \cdot X_I + f_{sI,xc} \cdot S_I$$
Rate: $$\rho_1 = k_{dis} \cdot X_c$$
Hydrolysis
First-order kinetics for conversion of polymers to monomers:
Carbohydrates: $$\rho_2 = k_{hyd,ch} \cdot X_{ch}$$
Proteins: $$\rho_3 = k_{hyd,pr} \cdot X_{pr}$$
Lipids: $$\rho_4 = k_{hyd,li} \cdot X_{li}$$
Acidogenesis
Uptake of monomers by acidogenic bacteria with Monod kinetics:
Sugar uptake: $$\rho_5 = k_{m,su} \cdot \frac{S_{su}}{K_{S,su} + S_{su}} \cdot X_{su} \cdot I_5$$
Amino acid uptake: $$\rho_6 = k_{m,aa} \cdot \frac{S_{aa}}{K_{S,aa} + S_{aa}} \cdot X_{aa} \cdot I_6$$
Acetogenesis
Uptake of LCFA and VFAs by syntrophic bacteria:
LCFA uptake: $$\rho_7 = k_{m,fa} \cdot \frac{S_{fa}}{K_{S,fa} + S_{fa}} \cdot X_{fa} \cdot I_7$$
Valerate uptake: $$\rho_8 = k_{m,c4} \cdot \frac{S_{va}}{K_{S,c4} + S_{va}} \cdot X_{c4} \cdot \frac{S_{va}}{S_{bu} + S_{va} + \epsilon} \cdot I_8$$
Butyrate uptake: $$\rho_9 = k_{m,c4} \cdot \frac{S_{bu}}{K_{S,c4} + S_{bu}} \cdot X_{c4} \cdot \frac{S_{bu}}{S_{bu} + S_{va} + \epsilon} \cdot I_9$$
Propionate uptake: $$\rho_{10} = k_{m,pro} \cdot \frac{S_{pro}}{K_{S,pro} + S_{pro}} \cdot X_{pro} \cdot I_{10}$$
Methanogenesis
Final methane production via two pathways:
Acetoclastic methanogenesis: $$\rho_{11} = k_{m,ac} \cdot \frac{S_{ac}}{K_{S,ac} + S_{ac}} \cdot X_{ac} \cdot I_{11}$$
$$CH_3COOH \rightarrow CH_4 + CO_2$$
Hydrogenotrophic methanogenesis: $$\rho_{12} = k_{m,h2} \cdot \frac{S_{h2}}{K_{S,h2} + S_{h2}} \cdot X_{h2} \cdot I_{12}$$
$$4H_2 + CO_2 \rightarrow CH_4 + 2H_2O$$
Biomass Decay
First-order decay of all seven biomass groups: $$\rho_{13-19} = k_{dec,i} \cdot X_i$$
Where i = su, aa, fa, c4, pro, ac, h2
Inhibition Functions
ADM1 incorporates multiple inhibition mechanisms to capture process limitations.
pH Inhibition
ErgoPlanner uses the IWA lower-inhibition exponential form in every tier (C# reference, browser preview, Rust engine); it is pinned by the parity benchmark:
$$I_{pH} = \begin{cases} 1 & pH \ge pH_{UL} \ \exp\left(-3 \cdot \left(\frac{pH - pH_{UL}}{pH_{UL} - pH_{LL}}\right)^2\right) & pH < pH_{UL} \end{cases}$$
There is no hard cut-off below pH_LL: the factor keeps decaying smoothly. Three organism groups carry their own limits: acidogens and acetogens (aa), acetoclastic methanogens (ac) and hydrogenotrophic methanogens (h2).
Where:
- pH_UL = upper pH limit (no inhibition above it)
- pH_LL = lower pH limit (sets the width of the transition band)
Hydrogen Inhibition
Non-competitive inhibition on LCFA and VFA degraders:
$$I_{h2} = \frac{K_{I,h2}}{K_{I,h2} + S_{h2}}$$
Applied to processes 7-10 (acetogenesis).
Free Ammonia Inhibition
Non-competitive inhibition on acetoclastic methanogens:
$$I_{NH3} = \frac{K_{I,NH3}}{K_{I,NH3} + S_{NH3}}$$
Free ammonia concentration: $$S_{NH3} = \frac{S_{IN} \cdot K_{a,NH4}}{K_{a,NH4} + [H^+]}$$
Combined Inhibition Terms
For sugar and amino-acid uptake (processes 5-6): $$I_{5,6} = I_{pH,aa} \cdot I_{IN,lim}$$
For LCFA, valerate/butyrate and propionate uptake (processes 7-10), each with its own hydrogen constant: $$I_{7-10} = I_{pH,aa} \cdot I_{IN,lim} \cdot I_{h2}$$
For acetoclastic methanogens (process 11): $$I_{11} = I_{pH,ac} \cdot I_{IN,lim} \cdot I_{NH3}$$
For hydrogenotrophic methanogens (process 12): $$I_{12} = I_{pH,h2} \cdot I_{IN,lim}$$
Where I_IN,lim represents inorganic-nitrogen limitation: $$I_{IN,lim} = \frac{S_{IN}}{K_{S,IN} + S_{IN}}$$
Disintegration, hydrolysis and decay are not inhibited.
Physicochemical Processes
Acid-Base Equilibria
ADM1 includes six acid-base pairs in equilibrium:
Carbon dioxide system: $$CO_2 + H_2O \leftrightarrow HCO_3^- + H^+$$ $$K_{a,CO2} = \frac{[HCO_3^-][H^+]}{[CO_2]} = 10^{-6.35}$$
Ammonia system: $$NH_4^+ \leftrightarrow NH_3 + H^+$$ $$K_{a,NH4} = \frac{[NH_3][H^+]}{[NH_4^+]} = 10^{-9.25}$$
VFA dissociation (acetate example): $$HAc \leftrightarrow Ac^- + H^+$$ $$K_{a,ac} = 10^{-4.76}$$
Charge balance: $$S_{cat} + [NH_4^+] + [H^+] = S_{an} + [HCO_3^-] + [Ac^-] + [Pro^-] + [Bu^-] + [Va^-] + [OH^-]$$
Gas-Liquid Transfer
Dissolved H2, CH4 and CO2 move between the liquid and the headspace by two-film transfer with Henry's law at the operating temperature (Batstone et al. 2002; BSM2 form, Rosen & Jeppsson 2006). A positive rate means gas leaves the liquid:
$$\rho_{T,h2} = k_La \cdot (S_{h2} - 16 \cdot K_{H,h2} \cdot p_{h2})$$ $$\rho_{T,ch4} = k_La \cdot (S_{ch4} - 64 \cdot K_{H,ch4} \cdot p_{ch4})$$ $$\rho_{T,co2} = k_La \cdot (S_{CO2} - K_{H,co2} \cdot p_{co2})$$
Where:
- k_La = volumetric mass transfer coefficient (1/d, 200 by default)
- S_CO2 = dissolved CO2(aq), taken from the carbonate speciation of S_IC at the current pH
- K_H,i = Henry's law coefficient (M/bar), corrected to the operating temperature
- 16 and 64 = kg COD per kmol of H2 and CH4
- p_i = headspace partial pressure (bar): p_h2 = S_gas,h2 · RT/16, p_ch4 = S_gas,ch4 · RT/64, p_co2 = S_gas,co2 · RT, with R = 0.083145 bar·m3/kmol/K
Henry's law coefficients at 35C:
| Gas | K_H (M/bar) |
|---|---|
| H2 | 7.38 x 10^-4 |
| CH4 | 1.16 x 10^-3 |
| CO2 | 2.71 x 10^-2 |
Headspace and Biogas Flow
The headspace holds the three gas-phase states. Gas arrives by transfer and leaves through the outlet, which is held at a fixed pressure (atmospheric):
$$\frac{dS_{gas,i}}{dt} = -S_{gas,i} \cdot \frac{q_{gas}}{V_{gas}} + \frac{V_{liq}}{V_{gas}} \cdot \rho_{T,i}$$
$$q_{gas} = \max\left(0,; k_p \cdot (P_{gas} - P_{atm})\right), \quad P_{gas} = p_{h2} + p_{ch4} + p_{co2} + p_{H2O}$$
The water vapour pressure follows the BSM2 expression, 0.0557 bar at 35C. The outlet coefficient k_p defaults to the BSM2 value (5.0 x 10^4 m3/d/bar for a 3400 m3 digester); the browser preview scales it with the liquid volume. Setting k_p to 0 closes the headspace: no biogas leaves, which is useful for mass-balance checks.
Time Integration
The reactor equations (liquid plus headspace) are advanced with the classic four-stage Runge-Kutta (RK4) method at a fixed step:
- Browser preview: RK4 with your step size. The headspace makes the equations stiff (relaxation times under a minute at full scale), so each step is split automatically into substeps inside the explicit stability limit.
- Rust engine: a semi-implicit mode is the default (the fast gas and hydrogen states are solved implicitly, the slow states with RK4). Classic explicit RK4 on all 27 states is available as an option for comparison against the reference.
Parameters
Kinetic Parameters (Mesophilic, 35C)
| Parameter | Symbol | Default | Unit | Description |
|---|---|---|---|---|
| Disintegration rate | k_dis | 0.5 | 1/d | Composite breakdown |
| Hydrolysis carbohydrates | k_hyd,ch | 10.0 | 1/d | Carbohydrate hydrolysis |
| Hydrolysis proteins | k_hyd,pr | 10.0 | 1/d | Protein hydrolysis |
| Hydrolysis lipids | k_hyd,li | 10.0 | 1/d | Lipid hydrolysis |
| Max uptake sugars | k_m,su | 30.0 | 1/d | Sugar uptake |
| Max uptake amino acids | k_m,aa | 50.0 | 1/d | Amino acid uptake |
| Max uptake LCFA | k_m,fa | 6.0 | 1/d | LCFA uptake |
| Max uptake valerate/butyrate | k_m,c4 | 20.0 | 1/d | C4 VFA uptake |
| Max uptake propionate | k_m,pro | 13.0 | 1/d | Propionate uptake |
| Max uptake acetate | k_m,ac | 8.0 | 1/d | Acetate uptake |
| Max uptake hydrogen | k_m,h2 | 35.0 | 1/d | H2 uptake |
Half-Saturation Coefficients
| Parameter | Symbol | Default | Unit |
|---|---|---|---|
| K_S,su | K_S_su | 0.5 | kg COD/m3 |
| K_S,aa | K_S_aa | 0.3 | kg COD/m3 |
| K_S,fa | K_S_fa | 0.4 | kg COD/m3 |
| K_S,c4 | K_S_c4 | 0.2 | kg COD/m3 |
| K_S,pro | K_S_pro | 0.1 | kg COD/m3 |
| K_S,ac | K_S_ac | 0.15 | kg COD/m3 |
| K_S,h2 | K_S_h2 | 7 x 10^-6 | kg COD/m3 |
| K_S,IN | K_S_IN | 1 x 10^-4 | kmol N/m3 |
Decay Rates
| Parameter | Symbol | Default | Unit |
|---|---|---|---|
| Decay sugar degraders | k_dec,su | 0.02 | 1/d |
| Decay AA degraders | k_dec,aa | 0.02 | 1/d |
| Decay LCFA degraders | k_dec,fa | 0.02 | 1/d |
| Decay C4 degraders | k_dec,c4 | 0.02 | 1/d |
| Decay propionate degraders | k_dec,pro | 0.02 | 1/d |
| Decay acetoclastic methanogens | k_dec,ac | 0.02 | 1/d |
| Decay H2 methanogens | k_dec,h2 | 0.02 | 1/d |
Inhibition Parameters
| Parameter | Symbol | Default | Unit |
|---|---|---|---|
| pH upper limit (acetogens) | pH_UL_aa | 5.5 | - |
| pH lower limit (acetogens) | pH_LL_aa | 4.0 | - |
| pH upper limit (acetoclastic) | pH_UL_ac | 7.0 | - |
| pH lower limit (acetoclastic) | pH_LL_ac | 6.0 | - |
| H2 inhibition constant | K_I,h2 | 3.5 x 10^-6 | kg COD/m3 |
| Free ammonia inhibition | K_I,NH3 | 1.8 x 10^-3 | kmol N/m3 |
Stoichiometric Parameters
| Parameter | Symbol | Default | Unit |
|---|---|---|---|
| Yield sugar degraders | Y_su | 0.10 | kg COD/kg COD |
| Yield AA degraders | Y_aa | 0.08 | kg COD/kg COD |
| Yield LCFA degraders | Y_fa | 0.06 | kg COD/kg COD |
| Yield C4 degraders | Y_c4 | 0.06 | kg COD/kg COD |
| Yield propionate degraders | Y_pro | 0.04 | kg COD/kg COD |
| Yield acetoclastic | Y_ac | 0.05 | kg COD/kg COD |
| Yield hydrogenotrophic | Y_h2 | 0.06 | kg COD/kg COD |
Disintegration/Hydrolysis Fractions
| Parameter | Symbol | Default |
|---|---|---|
| f_sI,xc | f_sI_xc | 0.10 |
| f_xI,xc | f_xI_xc | 0.20 |
| f_ch,xc | f_ch_xc | 0.20 |
| f_pr,xc | f_pr_xc | 0.20 |
| f_li,xc | f_li_xc | 0.30 |
| f_fa,li | f_fa_li | 0.95 |
| f_h2,su | f_h2_su | 0.19 |
| f_bu,su | f_bu_su | 0.13 |
| f_pro,su | f_pro_su | 0.27 |
| f_ac,su | f_ac_su | 0.41 |
Temperature Effects
Arrhenius Temperature Correction
$$k(T) = k(T_{ref}) \cdot \exp\left[\frac{E_a}{R}\left(\frac{1}{T_{ref}} - \frac{1}{T}\right)\right]$$
Where:
- E_a = activation energy (J/mol)
- R = gas constant (8.314 J/mol/K)
- T = absolute temperature (K)
- T_ref = reference temperature (typically 308 K for mesophilic)
Typical Activation Energies
| Process Group | E_a (kJ/mol) |
|---|---|
| Hydrolysis | 20-40 |
| Acidogenesis | 40-60 |
| Acetogenesis | 50-70 |
| Methanogenesis | 60-80 |
Temperature Ranges
| Regime | Temperature Range | Optimal |
|---|---|---|
| Psychrophilic | 10-20C | 15C |
| Mesophilic | 30-40C | 35C |
| Thermophilic | 50-60C | 55C |
Temperature-Dependent Parameters
At thermophilic conditions (55C), rates typically increase 2-3x compared to mesophilic, but:
- Free ammonia inhibition increases
- Propionate accumulation more common
- Process more sensitive to disturbances
ASM-ADM1 Interface
When coupling aerobic and anaerobic systems, state variables must be transformed.
ASM to ADM1 Transformation
| ASM Variable | ADM1 Variable(s) |
|---|---|
| X_S | X_c (composites) |
| X_BH, X_BA | X_c (composites) |
| X_P | X_c (composites) |
| S_S | S_su, S_aa (split by f_aa) |
| S_I | S_I |
| X_I | X_I |
| S_NH | S_IN |
| S_NO | Not used (denitrification separate) |
COD-Based Mapping
Primary sludge characteristics: $$f_{ch,PS} = 0.30, \quad f_{pr,PS} = 0.25, \quad f_{li,PS} = 0.25, \quad f_{I,PS} = 0.20$$
Waste activated sludge characteristics: $$f_{ch,WAS} = 0.20, \quad f_{pr,WAS} = 0.50, \quad f_{li,WAS} = 0.10, \quad f_{I,WAS} = 0.20$$
Example Interface Configuration
json
{
"primarySludge": {
"COD": 50000,
"fractions": {
"carbohydrates": 0.30,
"proteins": 0.25,
"lipids": 0.25,
"inerts": 0.20
}
},
"wasActivatedSludge": {
"COD": 30000,
"fractions": {
"carbohydrates": 0.20,
"proteins": 0.50,
"lipids": 0.10,
"inerts": 0.20
}
}
}Configuration in ErgoPlanner
Enabling ADM1
- Select anaerobic digester unit
- Set Calculation Mode to Advanced
- Select Biokinetic Model: ADM1
- Configure influent characterization
- Set temperature (mesophilic/thermophilic)
- Configure kinetic parameters (or use defaults)
- Run simulation
Parameter Input
json
{
"model": "adm1",
"temperature": 35,
"volume": 5000,
"parameters": {
"disintegration": {
"k_dis": 0.5,
"f_sI_xc": 0.10,
"f_xI_xc": 0.20,
"f_ch_xc": 0.20,
"f_pr_xc": 0.20,
"f_li_xc": 0.30
},
"hydrolysis": {
"k_hyd_ch": 10.0,
"k_hyd_pr": 10.0,
"k_hyd_li": 10.0
},
"uptake": {
"k_m_su": 30.0,
"k_m_aa": 50.0,
"k_m_fa": 6.0,
"k_m_c4": 20.0,
"k_m_pro": 13.0,
"k_m_ac": 8.0,
"k_m_h2": 35.0
},
"halfSaturation": {
"K_S_su": 0.5,
"K_S_aa": 0.3,
"K_S_fa": 0.4,
"K_S_c4": 0.2,
"K_S_pro": 0.1,
"K_S_ac": 0.15,
"K_S_h2": 7e-6
},
"inhibition": {
"K_I_h2_fa": 5e-6,
"K_I_h2_c4": 1e-5,
"K_I_h2_pro": 3.5e-6,
"K_I_NH3": 1.8e-3,
"pH_UL_aa": 5.5,
"pH_LL_aa": 4.0,
"pH_UL_ac": 7.0,
"pH_LL_ac": 6.0
},
"yields": {
"Y_su": 0.10,
"Y_aa": 0.08,
"Y_fa": 0.06,
"Y_c4": 0.06,
"Y_pro": 0.04,
"Y_ac": 0.05,
"Y_h2": 0.06
},
"decay": {
"k_dec_all": 0.02
},
"gasTransfer": {
"k_La": 200.0,
"K_H_h2": 7.38e-4,
"K_H_ch4": 1.16e-3,
"K_H_co2": 2.71e-2
}
}
}Outputs
Biogas Production
Key outputs include:
| Output | Unit | Description |
|---|---|---|
| Q_gas | m3/d | Total biogas flow |
| Q_ch4 | m3/d | Methane flow |
| Q_co2 | m3/d | CO2 flow |
| CH4 content | % | Methane percentage |
| Specific gas production | m3/kg VS | Per VS destroyed |
Theoretical methane yield: $$Y_{CH4,theoretical} = \frac{350 \cdot (1-Y)}{1000} \text{ Nm}^3 \text{ CH}4/\text{kg COD}$$
Where 350 L CH4/kg COD is the theoretical maximum at STP.
Digestate Quality
| Parameter | Typical Range | Unit |
|---|---|---|
| VS destruction | 45-55% | % |
| COD removal | 50-60% | % |
| pH | 7.0-7.5 | - |
| Alkalinity | 2500-5000 | mg CaCO3/L |
| VFA (as acetate) | <500 | mg/L |
| Ammonia | 500-1500 | mg N/L |
Process Diagnostics
| Indicator | Healthy Range | Warning |
|---|---|---|
| VFA/Alkalinity ratio | <0.3 | >0.4 |
| pH | 6.8-7.4 | <6.5 or >7.8 |
| Propionate/Acetate | <1.4 | >2.0 |
| H2 in biogas | <100 ppm | >500 ppm |
| CH4 content | 55-70% | <50% |
Example: Municipal Sludge Digester
Configuration
| Parameter | Value |
|---|---|
| Volume | 5,000 m3 |
| Temperature | 35C |
| HRT/SRT | 20 days |
| Mixing | Complete |
Influent (Mixed Primary + WAS)
| Parameter | Value |
|---|---|
| Flow | 250 m3/d |
| Total COD | 60 kg COD/m3 |
| VS | 40 kg/m3 |
| VS/TS | 0.75 |
| TKN | 2.5 kg N/m3 |
Expected Results
| Parameter | Value |
|---|---|
| Biogas production | 3,000-3,500 m3/d |
| CH4 content | 60-65% |
| VS destruction | 50-55% |
| Effluent VFA | <300 mg/L |
| pH | 7.1-7.3 |
| NH4-N | 800-1,200 mg/L |
Calibration Guidelines
Key Parameters to Calibrate
- k_dis - Disintegration rate (most important for sludge)
- k_hyd,ch/pr/li - Hydrolysis rates
- f fractions - Substrate composition
- k_m,ac - Acetoclastic methanogen uptake
- K_I,NH3 - Ammonia inhibition constant
Calibration Procedure
- Determine influent characterization (COD fractionation)
- Match steady-state biogas production with k_dis, k_hyd
- Match VFA profiles with uptake parameters
- Validate pH predictions
- Check ammonia inhibition effects
- Dynamic validation with step changes
Common Issues
| Issue | Likely Cause | Parameter Adjustment |
|---|---|---|
| Low CH4 | Inhibition active | Check pH, NH3, H2 |
| VFA accumulation | Slow methanogenesis | Increase k_m,ac |
| pH drop | Overloading | Reduce OLR, check alkalinity |
| Poor VS destruction | Slow hydrolysis | Increase k_hyd values |
Troubleshooting
| Issue | ADM1 Indicator | Solution |
|---|---|---|
| Low gas production | Low X_ac, X_h2 | Reduce OLR, check temperature |
| Souring | High S_ac, S_pro | Add alkalinity, reduce feed |
| Foaming | High S_fa | Reduce lipids, add antifoam |
| Ammonia inhibition | High S_IN | Dilute feed, co-digest with low-N substrate |
| Unstable pH | Low S_IC | Add alkalinity buffer |
| H2 accumulation | Low X_h2 activity | Check trace elements, reduce OLR |
Limitations
- No sulfate reduction - SRB competition not modeled
- Simplified disintegration - Single composite class
- Homogeneous mixing - No spatial gradients
- No trace nutrients - Micronutrient limitations ignored
- Fixed stoichiometry - No adaptation to substrate changes
- Two methanogenic pathways - Syntrophic acetate oxidation not included
- Many parameters - Requires extensive calibration data
- pH calculation - Can be numerically challenging
- Dissolved hydrogen is stiff - In the browser preview, a very large hydrogenotroph population can drive dissolved H2 to its floor within one step; use a smaller time step if H2 oscillates. The Rust engine's default semi-implicit mode does not have this limitation.
Extensions
ADM1-S (Sulfate Reduction)
Adds sulfate reduction pathway:
- S_SO4 -> S_H2S
- H2S inhibition of methanogens
- Competition between SRB and methanogens
ADM1-Nit
Adds nitritation in digester effluent:
- For partial nitritation treatment
- Integration with anammox
ADM1-P
Adds phosphorus dynamics:
- Struvite precipitation
- Phosphorus release and uptake
Advanced Topics
Co-digestion
For co-digestion, characterize each substrate:
json
{
"substrates": [
{
"name": "Primary Sludge",
"flowFraction": 0.6,
"COD": 60000,
"fractions": {"ch": 0.30, "pr": 0.25, "li": 0.25}
},
{
"name": "Food Waste",
"flowFraction": 0.4,
"COD": 150000,
"fractions": {"ch": 0.50, "pr": 0.20, "li": 0.20}
}
]
}Trace Element Limitation
Optional extension for trace element effects:
$$I_{TE} = \frac{S_{TE}}{K_{S,TE} + S_{TE}}$$
Critical trace elements:
- Cobalt (Co) - B12 synthesis
- Nickel (Ni) - F430 cofactor
- Selenium (Se) - Selenocysteine
- Tungsten (W) - Formylmethanofuran
Validation
IWA STR21 Benchmark Cases
ADM1 should reproduce:
- Steady-state biogas production within 10%
- VFA profiles during overload
- Recovery after inhibition events
- Response to temperature changes
Model Verification Checklist
- Mass balance closure (COD, N, C)
- pH within expected range
- Biogas composition matches measurements
- VFA profiles during transients
- Response to organic load changes
Related Models
- ASM1 - Activated sludge model for aerobic processes
- ASM2d - Extended model with biological P removal
- ASM3 - Storage-based activated sludge model
- Sumo2N - Two-step nitrification model
References
- Batstone, D.J. et al. (2002). "The IWA Anaerobic Digestion Model No. 1 (ADM1)." Water Science and Technology, 45(10), 65-73.
- IWA Task Group (2002). "Anaerobic Digestion Model No. 1 (ADM1)." IWA Scientific and Technical Report No. 13.
- Rosen, C. & Jeppsson, U. (2006). "Aspects on ADM1 Implementation within the BSM2 Framework." Technical Report, Lund University.
- Batstone, D.J. et al. (2015). "Mathematical Modelling of Anaerobic Digestion Processes: Applications and Future Needs." Reviews in Environmental Science and Bio/Technology.
- Donoso-Bravo, A. et al. (2011). "Model selection, identification and validation in anaerobic digestion." Water Research, 45(17), 5347-5364.
- Siegrist, H. et al. (2002). "Mathematical model for meso- and thermophilic anaerobic sewage sludge digestion." Environmental Science & Technology.