Chapter 7

Environmental Engineering

Water treatment, waste management, and pollution control.

Environmental Engineering

Environmental engineering applies scientific and engineering principles to protect human health and the environment. This field encompasses water and wastewater treatment, air pollution control, solid waste management, and environmental remediation, all aimed at creating sustainable and healthy living conditions.

Water Quality Parameters

Physical Parameters

Turbidity: Measure of water clarity

  • Units: NTU (Nephelometric Turbidity Units)
  • Drinking water standard: < 1 NTU

Color: Apparent vs. true color

  • Units: Pt-Co units
  • Standard: < 15 units

Temperature: Affects chemical and biological processes

  • Influences dissolved oxygen, reaction rates

Chemical Parameters

pH: Measure of acidity/alkalinity

pH=log[H+]pH = -\log[H^+]
  • Drinking water range: 6.5-8.5

Dissolved Oxygen (DO):

DOsat=46831.6+T(mg/L at 1 atm)DO_{sat} = \frac{468}{31.6 + T} \quad \text{(mg/L at 1 atm)}

Biochemical Oxygen Demand (BOD):

BODt=L0(1ek1t)BOD_t = L_0(1 - e^{-k_1 t})

Where:

  • L0L_0 = ultimate BOD
  • k1k_1 = deoxygenation rate constant
  • tt = time (days)

Chemical Oxygen Demand (COD): Total oxidizable matter

  • COD > BOD always
  • COD/BOD ratio indicates biodegradability

Alkalinity: Buffering capacity

Alkalinity=[HCO3]+2[CO32]+[OH][H+]\text{Alkalinity} = [HCO_3^-] + 2[CO_3^{2-}] + [OH^-] - [H^+]

Hardness: Calcium and magnesium content

Hardness=2.497[Ca2+]+4.118[Mg2+](mg/L as CaCO3)\text{Hardness} = 2.497[Ca^{2+}] + 4.118[Mg^{2+}] \quad \text{(mg/L as CaCO}_3\text{)}

Microbiological Parameters

Coliform bacteria: Indicator organisms

  • Total coliforms: General contamination
  • Fecal coliforms: Recent fecal contamination
  • E. coli: Specific fecal indicator

Water Treatment

Conventional Treatment Process

  1. Coagulation/Flocculation
  2. Sedimentation
  3. Filtration
  4. Disinfection

Coagulation and Flocculation

Coagulation: Destabilization of colloidal particles

Common coagulants:

  • Alum: Al2(SO4)314H2OAl_2(SO_4)_3 \cdot 14H_2O
  • Ferric chloride: FeCl3FeCl_3
  • Ferric sulfate: Fe2(SO4)3Fe_2(SO_4)_3

Optimal dose determined by jar test.

Flocculation: Gentle mixing to form larger flocs

G=PμVG = \sqrt{\frac{P}{\mu V}}

Where:

  • GG = velocity gradient (s1^{-1})
  • PP = power input
  • μ\mu = dynamic viscosity
  • VV = tank volume

Typical GG values: 20-75 s1^{-1} Typical GtGt values: 10,000-100,000

Sedimentation

Settling Velocity (Stokes' Law for discrete particles):

vs=g(ρsρ)d218μv_s = \frac{g(\rho_s - \rho)d^2}{18\mu}

Overflow Rate:

v0=QAv_0 = \frac{Q}{A}

Where:

  • QQ = flow rate
  • AA = surface area

Typical values: 20-60 m3^3/m2^2/day

Detention Time:

t=VQt = \frac{V}{Q}

Typical values: 2-4 hours

Filtration

Head Loss (Carmen-Kozeny equation):

hL=kμL(1ε)2vgρε3d2h_L = \frac{k\mu L(1-\varepsilon)^2 v}{g\rho\varepsilon^3 d^2}

Where:

  • ε\varepsilon = porosity
  • LL = bed depth
  • vv = filtration velocity
  • dd = grain diameter

Filter loading rate: 4-8 m3^3/m2^2/hr (rapid sand)

Disinfection

Chlorine Demand:

Demand=DoseResidual\text{Demand} = \text{Dose} - \text{Residual}

CT Concept (concentration × time):

CT=C×TCT = C \times T

Required CT values vary by pathogen and temperature.

Chick's Law:

ln(NN0)=kt\ln\left(\frac{N}{N_0}\right) = -k't

Where:

  • N0N_0 = initial organisms
  • NN = surviving organisms
  • kk' = die-off rate

Log Removal:

logremoval=log(N0N)\log \text{removal} = \log\left(\frac{N_0}{N}\right)

Wastewater Treatment

Wastewater Characteristics

ParameterWeakMediumStrong
BOD5_5 (mg/L)100200350
TSS (mg/L)100200350
TKN (mg/L)204080
TP (mg/L)4812

Treatment Levels

LevelRemovalProcesses
PrimaryTSS: 50-70%, BOD: 25-40%Screening, sedimentation
SecondaryBOD: 85-95%, TSS: 85-95%Biological treatment
TertiaryNutrients, pathogensFiltration, nutrient removal

Activated Sludge Process

Mixed Liquor Suspended Solids (MLSS): Biomass concentration

  • Typical: 1500-4000 mg/L

Food-to-Microorganism Ratio:

F/M=QS0VXF/M = \frac{Q \cdot S_0}{V \cdot X}

Where:

  • QQ = flow rate
  • S0S_0 = influent BOD
  • VV = aeration tank volume
  • XX = MLSS

Typical F/M: 0.2-0.5 kg BOD/kg MLSS/day

Sludge Age (SRT):

θc=VXQwXr+QeXe\theta_c = \frac{V \cdot X}{Q_w \cdot X_r + Q_e \cdot X_e}

Typical SRT: 5-15 days

Hydraulic Retention Time:

θ=VQ\theta = \frac{V}{Q}

Typical HRT: 4-8 hours

Sludge Treatment

Thickening: Increase solids concentration Digestion: Stabilize organic matter Dewatering: Remove water

Anaerobic Digestion gas production:

CH4=0.35 m3/kg VS destroyed\text{CH}_4 = 0.35 \text{ m}^3/\text{kg VS destroyed}

Air Pollution Control

Air Pollutants

Criteria Pollutants:

  • Particulate Matter (PM2.5_{2.5}, PM10_{10})
  • Ozone (O3_3)
  • Carbon Monoxide (CO)
  • Sulfur Dioxide (SO2_2)
  • Nitrogen Dioxide (NO2_2)
  • Lead (Pb)

Gaussian Plume Model

Ground-level concentration from elevated point source:

C(x,y,0)=Q2πuσyσzexp(y22σy2)exp(H22σz2)C(x,y,0) = \frac{Q}{2\pi u \sigma_y \sigma_z} \exp\left(-\frac{y^2}{2\sigma_y^2}\right) \exp\left(-\frac{H^2}{2\sigma_z^2}\right)

Where:

  • QQ = emission rate
  • uu = wind speed
  • σy\sigma_y, σz\sigma_z = dispersion coefficients
  • HH = effective stack height

Effective Stack Height:

H=hs+ΔhH = h_s + \Delta h

Plume Rise (Briggs equation):

Δh=1.6F1/3x2/3u\Delta h = 1.6 \frac{F^{1/3} x^{2/3}}{u}

Where FF = buoyancy flux.

Particulate Control

Cyclone Efficiency:

η=1exp[(dpd50)n]\eta = 1 - \exp\left[-\left(\frac{d_p}{d_{50}}\right)^n\right]

Electrostatic Precipitator:

η=1exp(wAQ)\eta = 1 - \exp\left(-\frac{w A}{Q}\right)

Where:

  • ww = drift velocity
  • AA = collection area
  • QQ = gas flow rate

Solid Waste Management

Waste Composition

Typical municipal solid waste:

  • Paper/cardboard: 25-40%
  • Plastics: 10-15%
  • Food waste: 15-25%
  • Yard waste: 10-20%
  • Other: 15-25%

Waste Generation

Generation rate=Population×Per capita rate\text{Generation rate} = \text{Population} \times \text{Per capita rate}

Typical per capita: 0.5-2.5 kg/person/day

Landfill Design

Required Volume:

V=Wγw(1+c/100)V = \frac{W}{\gamma_w (1 + c/100)}

Where:

  • WW = weight of waste
  • γw\gamma_w = in-place density
  • cc = cover soil ratio

Landfill Gas Production:

L0=170 m3/ton wasteL_0 = 170 \text{ m}^3/\text{ton waste}

Leachate Generation:

L=P(1Cr)AL = P(1 - C_r)A

Where:

  • PP = precipitation
  • CrC_r = runoff coefficient
  • AA = area

Real-World Application: Wastewater Treatment Plant Design

Designing an activated sludge system for a municipal wastewater treatment plant.

Treatment Plant Analysis Example

import math

# Design parameters
plant_params = {
    'population': 50000,
    'per_capita_flow': 380,    # L/person/day
    'per_capita_bod': 60,      # g/person/day
    'peak_factor': 2.5,
    'effluent_bod': 20,        # mg/L (permit limit)
    'effluent_tss': 20,        # mg/L (permit limit)
    'mlss': 3000,              # mg/L
    'sludge_age': 10,          # days
    'temperature': 20,         # Celsius
}

# Calculate flows and loads
Q_avg = plant_params['population'] * plant_params['per_capita_flow'] / 1000  # m^3/day
Q_peak = Q_avg * plant_params['peak_factor']

BOD_load = plant_params['population'] * plant_params['per_capita_bod'] / 1000  # kg/day
BOD_conc = BOD_load * 1000 / Q_avg  # mg/L

print(f"Wastewater Treatment Plant Design")
print(f"=" * 45)
print(f"\nDesign Basis:")
print(f"  Population: {plant_params['population']:,}")
print(f"  Average flow: {Q_avg:,.0f} m^3/day ({Q_avg/24:.0f} m^3/hr)")
print(f"  Peak flow: {Q_peak:,.0f} m^3/day")
print(f"  Influent BOD: {BOD_conc:.0f} mg/L ({BOD_load:.0f} kg/day)")

# Primary clarifier sizing
primary_overflow = 40  # m^3/m^2/day
A_primary = Q_avg / primary_overflow
D_primary = math.sqrt(4 * A_primary / math.pi)

# BOD removal in primary
primary_bod_removal = 0.30
bod_to_secondary = BOD_load * (1 - primary_bod_removal)

print(f"\nPrimary Clarifier:")
print(f"  Surface area: {A_primary:.0f} m^2")
print(f"  Diameter: {D_primary:.1f} m")
print(f"  BOD to secondary: {bod_to_secondary:.0f} kg/day")

# Aeration tank sizing
F_M = 0.3  # kg BOD/kg MLSS/day
X = plant_params['mlss']  # mg/L = g/m^3
V_aeration = bod_to_secondary * 1000 / (F_M * X)  # m^3

HRT = V_aeration / Q_avg * 24  # hours

print(f"\nAeration Tank:")
print(f"  Volume: {V_aeration:.0f} m^3")
print(f"  HRT: {HRT:.1f} hours")
print(f"  F/M ratio: {F_M} kg BOD/kg MLSS/day")
print(f"  MLSS: {X} mg/L")

# Oxygen requirements
oxygen_for_bod = 1.5 * bod_to_secondary  # kg O2/day
oxygen_for_nitrification = 0  # Not included in this example
total_oxygen = oxygen_for_bod

# Standard oxygen transfer rate
SOTR = total_oxygen / 0.75  # Assuming 75% efficiency
air_required = SOTR / 0.28 / 0.23  # kg air (28% efficiency, 23% O2)

print(f"\nAeration Requirements:")
print(f"  Oxygen demand: {total_oxygen:.0f} kg O2/day")
print(f"  SOTR: {SOTR:.0f} kg O2/day")

# Secondary clarifier
secondary_overflow = 20  # m^3/m^2/day at average flow
A_secondary = Q_avg / secondary_overflow
D_secondary = math.sqrt(4 * A_secondary / math.pi)

print(f"\nSecondary Clarifier:")
print(f"  Surface area: {A_secondary:.0f} m^2")
print(f"  Diameter: {D_secondary:.1f} m")
print(f"  Overflow rate: {secondary_overflow} m^3/m^2/day")

# Sludge production
Y_obs = 0.6  # Observed yield
sludge_production = Y_obs * bod_to_secondary  # kg/day

print(f"\nSludge Production:")
print(f"  Daily production: {sludge_production:.0f} kg dry solids/day")
print(f"  At 1% solids: {sludge_production * 100:.0f} L/day")

Your Challenge: Air Quality Impact Assessment

Evaluate air quality impacts from an industrial emission source.

Goal: Calculate ground-level concentrations using the Gaussian plume model.

Problem Setup

import math

# Stack and emission parameters
emission_config = {
    'emission_rate': 50,      # g/s
    'stack_height': 60,       # m
    'stack_diameter': 2.0,    # m
    'exit_velocity': 15,      # m/s
    'exit_temperature': 450,  # K
    'ambient_temp': 293,      # K
    'wind_speed': 4,          # m/s
    'stability_class': 'D',   # Neutral
    'receptor_distance': 2000, # m downwind
}

Q = emission_config['emission_rate']  # g/s
h_s = emission_config['stack_height']  # m
u = emission_config['wind_speed']  # m/s
x = emission_config['receptor_distance']  # m

# Dispersion coefficients (Pasquill-Gifford for Class D)
# sigma_y = a * x^b, sigma_z = c * x^d + f
sigma_y = 0.08 * x * (1 + 0.0001 * x)**(-0.5)
sigma_z = 0.06 * x * (1 + 0.0015 * x)**(-0.5)

# Plume rise (simplified Briggs equation for buoyant plume)
T_s = emission_config['exit_temperature']
T_a = emission_config['ambient_temp']
v_s = emission_config['exit_velocity']
d_s = emission_config['stack_diameter']

# Buoyancy flux
g = 9.81
F = g * v_s * (d_s/2)**2 * (T_s - T_a) / T_s

# Plume rise for stable/neutral conditions
delta_h = 1.6 * F**(1/3) * x**(2/3) / u

# Effective stack height
H = h_s + delta_h

# Ground-level centerline concentration
C_max_ground = (Q / (math.pi * u * sigma_y * sigma_z)) * math.exp(-H**2 / (2 * sigma_z**2))

# Convert to ug/m^3
C_ugm3 = C_max_ground * 1e6

print(f"Air Quality Impact Assessment")
print(f"=" * 40)
print(f"\nEmission Source:")
print(f"  Emission rate: {Q} g/s")
print(f"  Stack height: {h_s} m")
print(f"  Exit velocity: {v_s} m/s")
print(f"  Exit temperature: {T_s} K")

print(f"\nMeteorological Conditions:")
print(f"  Wind speed: {u} m/s")
print(f"  Stability class: {emission_config['stability_class']}")
print(f"  Ambient temperature: {T_a} K")

print(f"\nPlume Calculations:")
print(f"  Buoyancy flux: {F:.2f} m^4/s^3")
print(f"  Plume rise: {delta_h:.1f} m")
print(f"  Effective stack height: {H:.1f} m")

print(f"\nDispersion at {x} m:")
print(f"  Sigma_y: {sigma_y:.1f} m")
print(f"  Sigma_z: {sigma_z:.1f} m")

print(f"\nGround-Level Concentration:")
print(f"  Centerline max: {C_ugm3:.2f} ug/m^3")

# Compare to air quality standard (example: 1-hour standard)
standard = 200  # ug/m^3 (example)
ratio = C_ugm3 / standard * 100

print(f"\nCompliance Assessment:")
print(f"  Concentration/Standard: {ratio:.1f}%")
if ratio < 100:
    print(f"  Status: COMPLIANT")
else:
    print(f"  Status: EXCEEDS STANDARD")

How would the analysis change for different stability classes, and what mitigation measures could reduce ground-level concentrations?

ELI10 Explanation

Simple analogy for better understanding

Have you ever wondered what happens to the water after you flush the toilet or wash your hands? Environmental engineering is about making sure our water is clean enough to drink, our air is safe to breathe, and our trash doesn't hurt the environment. Environmental engineers are like Earth's doctors - they find ways to clean up pollution, treat wastewater so it can go back to rivers safely, and make sure factories don't put harmful stuff into the air. They help keep people healthy and protect nature!

Self-Examination

Q1.

What are the main stages of conventional water treatment and what contaminants does each stage remove?

Q2.

How do biological treatment processes like activated sludge work to remove organic matter from wastewater?

Q3.

What are the primary mechanisms for air pollutant dispersion, and how is the Gaussian plume model applied?

Q4.

How is solid waste characterized, and what factors influence the design of sanitary landfills?

Q5.

What are the key parameters used to measure water quality and their significance?