Chapter 1 Environmental Engineering: Air Quality Modeling#
1. Introduction#
Air polluiton#
Air pollutants can exist as gases or particulates, with particulate pollutants further classified by their size and origin. Dust consists of relatively large solid particles generated from mechanical processes such as coal handling or sandblasting. Fumes are extremely fine particles, typically ranging from 0.03 to 0.3 micrometers, often composed of metallic oxides formed through chemical reactions. Mists are liquid droplets between 0.5 and 3 micrometers in size, produced by vapor condensation or chemical processes. Smoke includes solid particles ranging from 0.005 to 1 micrometer, usually resulting from the incomplete combustion of carbon-based materials. Each type of particulate pollutant has distinct physical characteristics and forms through different mechanisms, influencing how it behaves in the atmosphere and impacts human health and the environment.
🌬️ Measurement of Air Quality#
Air quality monitoring is generally categorized into three main types:
Emission Monitoring – Focuses on pollutants released from natural and anthropogenic sources.
Ambient Monitoring – Measures the concentration of toxic and non-toxic contaminants in the surrounding air.
Meteorological Monitoring – Tracks atmospheric conditions that influence the transport and dispersion of air pollutants.
To measure gaseous pollutants such as SOₓ, NOₓ, ozone (O₃), hydrocarbons, and vapors, techniques include grab sampling, absorption in liquids or solids, and freeze-out sampling. For particulate matter (e.g., PM₁₀, PM₂.₅), common collection methods include dust fall jars and electrostatic precipitation.
🛠️ Control of Air Pollutants#
Gaseous Pollutants#
Gaseous air pollutants can be controlled by chemically transforming them, capturing them from the emission stream, or modifying the processes that generate them. The choice of control method depends on the pollutant’s concentration and the flow rate of the emission stream:
Low flow rate & low concentration: Photocatalysis is effective.
High concentration & high flow rate: Catalytic and thermal oxidation are preferred.
Intermediate conditions: Adsorption and absorption methods are commonly used.
High concentration & low flow rate: Membrane separation and condensation are effective.
Low concentration & high flow rate: Biofiltration is suitable.
Adsorbers can achieve removal efficiencies exceeding 95% and are effective for pollutants like SOₓ, H₂S, and NOₓ. However, absorption processes may generate wastewater, potentially shifting the pollution burden from air to water. For organic compounds, incineration methods—including direct combustion, thermal incineration, and catalytic incineration—are widely used.
Particulate Pollutants#
Particulate matter is typically removed using cyclones, electrostatic precipitators, and baghouse filters:
Electrostatic precipitators apply electrical forces to charge particles negatively and attract them to positively charged collection plates. They are highly effective for fine particles.
Fabric filters (baghouses) operate like vacuum filters, drawing dirty gas through filter bags. They are efficient even for submicron-sized particles.
Cyclones are economical and effective for larger particles but have lower efficiency for fine particulates. For smaller particles, baghouses, scrubbers, and electrostatic precipitators offer superior performance.
⚖️ Regulatory Framework#
The Clean Air Act (CAA) [United States Environmental Protection Agency, 1990], enacted in 1970, provides the foundational regulatory framework for controlling air pollution in the United States. It authorizes the EPA to establish National Ambient Air Quality Standards (NAAQS) for six criteria pollutants:
Carbon monoxide (CO)
Lead (Pb)
Nitrogen dioxide (NO₂)
Ozone (O₃)
Particulate matter (PM)
Sulfur dioxide (SO₂)
These standards include:
Primary standards – Protect public health.
Secondary standards – Safeguard public welfare, including visibility and property.
Based on compliance with NAAQS, regions are designated as attainment or nonattainment areas. Each state is required to develop a State Implementation Plan (SIP) outlining how it will achieve and maintain air quality standards.
Additionally, under the Prevention of Significant Deterioration (PSD) program, attainment areas are classified into:
Class I – Allows minimal air quality deterioration (e.g., national parks and wilderness areas).
Class II – Permits moderate deterioration (most U.S. regions).
Class III – Would allow greater deterioration, but no areas have been designated as Class III.
Pollution control requirements for stationary sources vary by area designation and source type:
New or modified sources in attainment areas must implement Best Available Control Technology (BACT), determined case-by-case based on effectiveness, cost, and environmental impact.
New or modified sources in nonattainment areas must meet the Lowest Achievable Emission Rate (LAER), the most stringent standard, regardless of cost.
Existing sources in attainment areas typically apply technologically achievable controls, often defined by general performance standards.
Existing sources in nonattainment areas must implement Reasonably Available Control Technology (RACT), which balances effectiveness with economic and technical feasibility.
These tiered requirements ensure that air quality is protected while accounting for regional conditions and the nature of each emission source.
Gaussian Plume Dispersion Model – Interactive Visualization#
The Gaussian Plume Model is a widely used mathematical model that describes how air pollutants disperse from a point source, such as a smokestack, under steady-state conditions. It assumes that the concentration of a pollutant in the atmosphere follows a normal (Gaussian) distribution in the crosswind and vertical directions, resulting in a “plume” of pollution downwind of the source [Masters and Ela, 2008].
The general equation for pollutant concentration ( C(x, y, z) ) at location ( (x, y, z) ) is:
Where:
\(( C \)): concentration [µg/m³]
\(( Q \)): emission rate [g/s]
\(( u \)): wind speed at stack height [m/s]
\(( H \)): effective stack height [m]
\(( \sigma_y, \sigma_z \)): lateral and vertical dispersion coefficients [m]
\(( x \)): downwind distance [m]
\(( y \)): crosswind offset [m]
\(( z \)): height above ground [m]
✅ Ground Reflection#
The plume reflects off the ground due to the no-flux boundary condition.
This is modeled by the image source at ( -H ), contributing the second exponential term in the equation.
✅ Thermal Inversion Reflection#
A thermal inversion layer acts like a lid, trapping pollutants below.
Reflection from this layer can be modeled by adding additional image sources above the inversion height.
🧠 Conceptual Insight#
Reflections increase concentration near the ground.
Inversion layers suppress vertical mixing, leading to higher ground-level concentrations.
The Gaussian model assumes steady-state, constant wind, and uniform terrain.
❓ Quiz Questions#
What causes the plume to reflect off the ground?
How does a thermal inversion layer affect pollutant dispersion?
Why is the second exponential term in the Gaussian equation important?
What assumptions does the Gaussian plume model make?
How would you modify the model for complex terrain or variable wind?
Estimating Dispersion Coefficients#
The coefficients ( \sigma_y ) and ( \sigma_z ) vary with distance and atmospheric stability. The following empirical formulas are adapted from Pasquill-Gifford curves.
Dispersion Coefficient Formulas#
Stability Class |
Description |
( a ) |
( b ) |
( c ) |
( d ) |
---|---|---|---|---|---|
A |
Very unstable |
0.22 |
0.0001 |
0.20 |
0.0001 |
B |
Moderately unstable |
0.16 |
0.0001 |
0.12 |
0.0001 |
C |
Slightly unstable |
0.11 |
0.0001 |
0.08 |
0.0001 |
D |
Neutral |
0.08 |
0.0001 |
0.06 |
0.0001 |
E |
Slightly stable |
0.06 |
0.0001 |
0.03 |
0.0001 |
F |
Very stable |
0.04 |
0.0001 |
0.016 |
0.0001 |
Effective Stack Height#
The effective stack height ( H ) is given by:
Where:
( h ): physical stack height [m]
( \Delta h ): plume rise [m] (due to buoyancy and/or momentum)
Approximate Buoyant Plume Rise (Stable Conditions)#
Where:
\(( F \)): buoyancy flux [m⁴/s³]
\(( g \)): gravitational acceleration ≈ 9.81 m/s²
\(( V \)): stack gas exit volume flow rate [m³/s]
\(( \Delta T \)): stack–ambient temperature difference [K]
\(( T_a \)): ambient temperature [K]
\(( u \)): wind speed [m/s]
Notes#
Use stability classes (A–F) based on surface conditions, solar radiation, and wind speed
The ground reflection term accounts for pollutant dispersion near the surface
The model assumes steady-state conditions (constant wind and emissions)
This notebook provides an interactive visualization of the ground-level concentration of pollutants based on:
📍 Source emission rate (Q)
🌬️ Wind speed (u)
📏 Effective stack height (H)
🌡️ Atmospheric stability class (A–F)
Key Features#
Simulate how different environmental and source parameters affect pollutant dispersion
Visualize the concentration distribution at ground level as a 2D contour plot
Explore six atmospheric stability classes (A = very unstable, F = very stable)
Adjustable inputs with interactive sliders for real-time exploration
Applications#
Air quality impact assessments for industrial stacks
Regulatory modeling and compliance
Environmental engineering education and plume behavior analysis
Foundational Literature#
[Masters and Ela, 2008] presents the Gaussian plume model as a core tool for estimating air pollutant concentrations from point sources, such as smokestacks. It derives the model from the advection-diffusion equation, assuming steady-state flow and uniform turbulence, and defines key parameters such as emission rate, wind speed, and dispersion coefficients. The model is applied in air quality assessments and regulatory analysis, with attention to limitations such as terrain effects and atmospheric stability, using Pasquill-Gifford classes. While [Masters and Ela, 2008] provides a solid introductory overview, the {cite}’venkatram2003gaussian’ offer deeper mathematical derivations, regulatory context, and advanced modeling techniques—ideal for graduate-level study, research, or regulatory modeling.
2. Simulation#
🌬️ Gaussian Plume Air Quality Model – Summary in Markdown#
This Python-based model simulates pollutant dispersion from a point source (e.g., smokestack) using the Gaussian plume equation. It visualizes how wind speed, atmospheric stability, stack height, and inversion layer influence concentration at various downwind distances and heights.
🔧 Model Components#
Component |
Description |
---|---|
|
Horizontal & vertical dispersion using empirical formulas |
|
Calculates pollutant concentration with reflections |
|
Rotates coordinates to align plume with wind direction |
|
Interactive 2D heatmap showing concentration distribution |
|
Sliders and dropdowns to adjust model inputs |
💡 Inputs and Controls#
Parameter |
Description |
---|---|
|
Emission rate (µg/s) |
|
Wind speed (m/s) |
|
Stack height (m) |
|
Atmospheric stability class (A–F) |
|
Inversion layer height (m) |
|
Wind direction (degrees) |
📈 What It Shows#
Heatmap of pollutant concentration vs. distance and height
Plume widening or narrowing with stability class
Inversion effects when vertical mixing is restricted
Wind direction adjusts plume orientation
🧠 How to Interpret Results#
Feature |
Meaning |
---|---|
Bright plume core |
High concentration near the stack and ground level |
Wider dispersion |
Occurs in unstable (A–C) conditions with higher turbulence |
Inversion line |
Limits vertical mixing; pollutants may pool below it |
Wind rotation |
Plume shifts with prevailing wind direction |
🧪 Equation Used (Simplified)#
Optional terms account for reflection from the inversion layer.
This model offers a practical and interactive way to explore how atmospheric conditions affect pollution dispersion — valuable for air quality engineers, planners, and educators.
import numpy as np
import plotly.graph_objects as go
from ipywidgets import interact, FloatSlider, Dropdown
# --- Dispersion functions ---
def sigma_y(x, stability='D'):
a = {'A': 0.22, 'B': 0.16, 'C': 0.11, 'D': 0.08, 'E': 0.06, 'F': 0.04}
b = {k: 0.0001 for k in a}
return a[stability] * x * (1 + b[stability] * x) ** -0.5
def sigma_z(x, stability='D'):
a = {'A': 0.20, 'B': 0.12, 'C': 0.08, 'D': 0.06, 'E': 0.03, 'F': 0.016}
b = {k: 0.0001 for k in a}
return a[stability] * x * (1 + b[stability] * x) ** -0.5
# --- Gaussian plume with reflection ---
def gaussian_plume(x, z, Q, u, H, stability, z_inv=None):
sy = sigma_y(x, stability)
sz = sigma_z(x, stability)
term1 = Q / (2 * np.pi * u * sy * sz)
base = np.exp(- (z - H)**2 / (2 * sz**2)) + np.exp(- (z + H)**2 / (2 * sz**2))
if z_inv and z_inv > 0:
base += np.exp(- (2*z_inv - z - H)**2 / (2 * sz**2))
base += np.exp(- (2*z_inv + z - H)**2 / (2 * sz**2))
return term1 * base
# --- Coordinate rotation for wind direction ---
def rotate_coords(x, y, angle_deg):
theta = np.radians(angle_deg)
x_rot = x * np.cos(theta) + y * np.sin(theta)
return x_rot
# --- Plotting function with wind direction ---
def plot_plotly(Q, u, H, stability, z_inv, wind_dir):
x_vals = np.linspace(-500, 2500, 150)
z_vals = np.linspace(0, 300, 100)
x_grid, z_grid = np.meshgrid(x_vals, z_vals)
# Rotate x according to wind direction (assume y = 0 slice)
x_rot = rotate_coords(x_grid, np.zeros_like(x_grid), -wind_dir)
x_rot = np.maximum(x_rot, 1.0) # prevent division by zero
C = gaussian_plume(x_rot, z_grid, Q, u, H, stability, z_inv)
fig = go.Figure(data=go.Heatmap(
x=x_vals,
y=z_vals,
z=C,
colorscale='Viridis',
zmin=0,
zmax=0.12, # Adjust this upper limit as needed
colorbar=dict(title='Concentration (µg/m³)'),
hovertemplate='x: %{x:.0f} m<br>z: %{y:.0f} m<br>Conc: %{z:.2f} µg/m³<extra></extra>'
))
fig.update_layout(
title=f"Gaussian Plume with Wind Direction {wind_dir}°<br>Stability: {stability} | Inversion: {z_inv or '∞'} m",
xaxis_title='Projected Downwind Distance (m)',
yaxis_title='Height z (m)',
height=500
)
if z_inv and z_inv > 0:
fig.add_shape(type="line", x0=x_vals[0], x1=x_vals[-1], y0=z_inv, y1=z_inv,
line=dict(color="red", dash="dash"), name="Inversion")
fig.show()
# --- Widgets with wind direction added ---
interact(
plot_plotly,
Q=FloatSlider(value=100, min=10, max=5000, step=10, description="Emission Q"),
u=FloatSlider(value=5.0, min=0.5, max=50.0, step=0.5, description="Wind Speed"),
H=FloatSlider(value=50, min=0, max=150, step=5, description="Stack Height"),
stability=Dropdown(options=['A', 'B', 'C', 'D', 'E', 'F'], value='D', description="Stability"),
z_inv=FloatSlider(value=0, min=0, max=300, step=10, description="Inversion Height"),
wind_dir=FloatSlider(value=0, min=0, max=360, step=5, description="Wind Dir (°)")
)
<function __main__.plot_plotly(Q, u, H, stability, z_inv, wind_dir)>
3. Self-Assessment#
Objective: Gaussian Plume Receptor Concentration Estimator#
The main objective of this code is to provide an interactive tool for estimating air pollutant concentration at any specified receptor point ((x, y, z)), using the Gaussian plume dispersion model with both ground and inversion layer reflections.
🔧 What the Code Does#
📥 Accepts user inputs for:
Receptor location:
( x ): Downwind distance (m)
( y ): Crosswind offset (m)
( z ): Height above ground (m)
Emission rate ( Q ) [g/s]
Wind speed ( u ) [m/s]
Stack height ( H ) [m]
Stability class (A–F)
Optional inversion layer height ( z_{\text{inv}} )
📈 Calculates concentration using the Gaussian plume equation:
Incorporates horizontal and vertical dispersion using stability-dependent functions ( \sigma_y(x), \sigma_z(x) )
Includes both ground reflection and optional inversion reflection
🧮 Core equation: $\( C(x, y, z) = \frac{Q}{2\pi u \sigma_y \sigma_z} \cdot \exp\left(-\frac{y^2}{2\sigma_y^2}\right) \cdot \left[ \exp\left(-\frac{(z - H)^2}{2\sigma_z^2}\right) + \text{(reflections)} \right] \)$
Interactive interface with
ipywidgets
in a Jupyter Notebook:Users input values via sliders and text boxes
Concentration is calculated and displayed in nicely formatted Markdown output
Why It’s Useful#
This tool helps students, engineers, and environmental analysts:
Explore the influence of stack and meteorological parameters
Visualize how concentration varies with location
Understand plume reflection mechanisms
Get hands-on with a model used in regulatory and industrial settings
Want to enhance it further with a visual heatmap or batch receptor logging?
Let’s build that into the next version together 🚀
4. Simulation#
🌬️ Gaussian Plume Receptor Point Query – Summary#
This is an interactive Jupyter-based tool that estimates pollutant concentration at a specific receptor location using a Gaussian plume dispersion model. It includes:
Input widgets for plume parameters and receptor coordinates
A button-triggered calculation using the dispersion equation
Markdown-based result display with formatted output
🧪 How It Works#
Inputs via Widgets:
(x, y, z)
: receptor location (meters)Q
: emission rate (g/s)u
: wind speed (m/s)H
: stack height (m)stability
: atmospheric turbulence class (A–F)z_inv
: height of inversion layer
Concentration Calculation:
Uses horizontal (
σ_y
) and vertical (σ_z
) dispersion formulasApplies Gaussian plume equation with reflections for ground and inversion
Computes concentration at user-defined point
Output:
After clicking “Get Concentration”, displays:
📍 Receptor at (x=..., y=..., z=...): **Estimated Concentration:** `... µg/m³`
🔍 How to Interpret Results#
Output Element |
Interpretation |
---|---|
|
Receptor coordinates downwind and vertically from source |
|
Estimated pollutant level at the receptor |
|
Indicates far distance, poor mixing, or dispersion limits |
|
Suggests proximity to plume center and limited dispersion |
This tool is ideal for evaluating exposure risk, site-specific concentration, and regulatory compliance scenarios.
import ipywidgets as widgets
from IPython.display import display, Markdown, clear_output
# Compute concentration at specified (x, y, z) using existing dispersion model
def concentration_query(x, y, z, Q, u, H, stability, z_inv):
sy = sigma_y(x, stability)
sz = sigma_z(x, stability)
if sy <= 0 or sz <= 0:
return 0.0
part1 = Q / (2 * np.pi * u * sy * sz)
part2 = np.exp(- y ** 2 / (2 * sy ** 2))
part3 = (
np.exp(- (z - H)**2 / (2 * sz**2)) +
np.exp(- (z + H)**2 / (2 * sz**2))
)
if z_inv and z_inv > 0:
part3 += np.exp(- (2 * z_inv - z - H)**2 / (2 * sz**2))
part3 += np.exp(- (2 * z_inv + z - H)**2 / (2 * sz**2))
return part1 * part2 * part3
# UI elements
x_input = widgets.BoundedFloatText(value=500, min=1, max=10000, step=10, description='x (m):')
y_input = widgets.BoundedFloatText(value=0, min=-1000, max=1000, step=10, description='y (m):')
z_input = widgets.BoundedFloatText(value=1, min=0, max=500, step=1, description='z (m):')
Q_input = widgets.FloatSlider(value=100, min=10, max=5000, step=10, description='Q (g/s)')
u_input = widgets.FloatSlider(value=5.0, min=0.5, max=50, step=0.5, description='Wind (m/s)')
H_input = widgets.FloatSlider(value=50, min=0, max=150, step=5, description='Stack H')
stab_input = Dropdown(options=['A', 'B', 'C', 'D', 'E', 'F'], value='D', description='Stability')
zinv_input = widgets.FloatSlider(value=0, min=0, max=300, step=10, description='Inversion (m)')
# Action button
button = widgets.Button(description='Get Concentration')
output = widgets.Output()
def on_button_click(b):
with output:
clear_output()
x = x_input.value
y = y_input.value
z = z_input.value
Q = Q_input.value
u = u_input.value
H = H_input.value
stab = stab_input.value
z_inv = zinv_input.value
C = concentration_query(x, y, z, Q, u, H, stab, z_inv)
display(Markdown(
f"### 📍 Receptor at (x={x} m, y={y} m, z={z} m):\n"
f"**Estimated Concentration:** `{C:.2f} µg/m³`"
))
button.on_click(on_button_click)
# Display form
display(widgets.VBox([
widgets.HTML(value="<h3>🎯 Query Pollutant Concentration at a Receptor Point</h3>"),
widgets.HBox([x_input, y_input, z_input]),
Q_input, u_input, H_input, stab_input, zinv_input,
button, output
]))
5. Self-Assessment#
Gaussian Plume Dispersion Model – Learning Module#
This module supports critical thinking, conceptual understanding, and assessment for students or professionals using the Gaussian plume tool. It includes conceptual questions, reflective prompts, and a quiz to reinforce dispersion modeling fundamentals.
Conceptual Questions#
Why do we use different dispersion coefficients (σy and σz) for the horizontal and vertical directions in the Gaussian plume model?
What physical factors influence the values of σy and σz at a given downwind distance x?
How does wind speed (u) affect the shape and dilution of the plume?
What is the purpose of including reflection terms from the ground and inversion layer in the Gaussian plume equation?
How does atmospheric stability (Classes A–F) influence pollutant dispersion, and why does a more stable atmosphere result in a narrower plume?
Why is effective stack height (H) more than just the physical stack height, and how can plume rise be estimated?
Reflective Prompts#
When switching from stability class D to class F in your simulation, what changes do you observe in ground-level concentration? Why does this happen?
Rotate the wind direction by 90°. How does this alter the shape of the heatmap? What implications does this have for nearby receptors?
If a receptor point lies above the inversion layer, how does that affect the estimated concentration? What are the consequences for exposure modeling?
Which parameters most influence the location and magnitude of the peak concentration? How could this inform industrial design or siting decisions?
Without reducing emissions (Q), what other strategies could reduce the maximum concentration at ground level?
✅ Quiz Questions (Multiple Choice)#
Q1. What do σy and σz represent in the Gaussian plume model?
A. Stack height and plume temperature
B. Wind direction and terrain roughness
C. Crosswind and vertical dispersion
D. Wind speed and turbulence intensity
✅ Answer: C
Q2. Which condition leads to the greatest spread of a Gaussian plume?
A. Stability Class F
B. Stability Class A with strong solar radiation
C. Calm wind and tall stack
D. Heavy rain and high humidity
✅ Answer: B
Q3. Increasing the wind speed (u) typically causes the peak concentration to:
A. Increase
B. Decrease
C. Stay the same
D. Occur closer to the stack
✅ Answer: B
Q4. Why are reflection terms included in the vertical concentration expression?
A. To account for wind shear
B. To model pollutant absorption into soil
C. To simulate vertical boundary effects from the ground and atmosphere
D. To add time dependence to the model
✅ Answer: C
Q5. Increasing the stack height (H) will:
A. Increase ground-level concentrations
B. Move the concentration peak further downwind and upward
C. Have no effect on the plume shape
D. Increase horizontal dispersion
✅ Answer: B
References#
Alireza Bahrami, editor. Advances in Sustainable Concrete for Construction. Springer Nature Switzerland, Cham, 2025. ISBN 9783031850516. Covers climate-improved concrete, SCMs, ECCs, internal curing, and empirical performance models. URL: https://link.springer.com/book/10.1007/978-3-031-85052-3, doi:10.1007/978-3-031-85052-3.
Sebastian W. Bauer. A modified horton equation for infiltration during intermittent rainfall. Hydrological Sciences Bulletin, 19(2):219–230, 1974. doi:10.1080/02626667409493900.
Mark A. Benedict and Edward T. McMahon. Green Infrastructure: Linking Landscapes and Communities. Island Press, Washington, DC, 2006. ISBN 978-1559635585.
missing institution in bent2013regional
Ryan R. Berg, Barry R. Christopher, and Naresh C. Samtani. Design and Construction of Mechanically Stabilized Earth Walls and Reinforced Soil Slopes. Washington, D.C., 2010. FHWA GEC 011 – Volume I; includes retaining wall design guidelines and LRFD procedures.
Mike Berners-Lee. The Carbon Footprint of Everything. Greystone Books Ltd, 2022. ISBN 9781771645775. URL: https://books.google.com/books/about/The_Carbon_Footprint_of_Everything.html?id=CkBUEAAAQBAJ.
P. Bettess, S. C. Liang, and others. Wave diffraction around breakwaters. In Proceedings of the International Conference on Coastal Engineering. Houston, Texas, 1984. ASCE. Finite element modeling of wave diffraction using Berkhoff's mild-slope equation. URL: https://icce-ojs-tamu.tdl.org/icce/index.php/icce/article/view/4151.
Paul Bolstad. GIS Fundamentals: A First Text on Geographic Information Systems. XanEdu Publishing Inc, 6th edition, 2019. ISBN 9781593995522.
Ken D. Bovee. Development and Evaluation of Habitat Suitability Criteria for Use in the Instream Flow Incremental Methodology. U.S. Fish and Wildlife Service, Fort Collins, CO, 1986.
Joseph E. Bowles. Foundation Analysis and Design. McGraw-Hill, New York, 5th edition, 1996. ISBN 9780079122476. Extensive treatment of bearing capacity, settlement, lateral earth pressure, and pile design.
Per Bruun. Sea-level rise as a cause of shore erosion. Journal of the Waterways and Harbors Division, ASCE, 88(WW1):117–130, 1962. Original derivation of the Bruun Rule.
Hubert Chanson. Hydraulics of Open Channel Flow. Butterworth-Heinemann, 2 edition, 2004. ISBN 9780750659789.
Ven Te Chow. Open-Channel Hydraulics. McGraw-Hill, New York, NY, 1959. ISBN 9781932846188. A foundational text covering uniform, varied, and unsteady flow in open channels.
Ven Te Chow, David R. Maidment, and Larry W. Mays. Applied Hydrology. McGraw-Hill, 1988. Includes φ-index method for estimating infiltration losses.
Donald P. Coduto. Foundation Design: Principles and Practices. Prentice Hall, Upper Saddle River, NJ, 2nd edition, 2011. ISBN 9780135897065. Comprehensive coverage of shallow and deep foundations, lateral earth pressure, and retaining structures.
C. Cunnane. Statistical Distributions for Flood Frequency Analysis. Number 33 in Operational Hydrology Report. Secretariat of the World Meteorological Organization, Geneva, 1989.
William R. Dally and Joan Pope. Detached breakwaters for shore protection. Technical Report, U.S. Army Engineer Waterways Experiment Station, Coastal Engineering Research Center, Vicksburg, Mississippi, 1986. Final report prepared for the Department of the Army, US Army Corps of Engineers.
Braja M. Das. Principles of Foundation Engineering. Cengage Learning, Stamford, CT, 7th edition, 2010. ISBN 9780495411307.
Braja M. Das. Principles of Foundation Engineering. Cengage Learning, Stamford, CT, 7th edition, 2010.
Braja M. Das. Principles of Geotechnical Engineering. Cengage Learning, Boston, MA, 10th edition, 2021. ISBN 9780357420485.
Mackenzie L. Davis and David A. Cornwell. Principles of Environmental Engineering and Science. McGraw-Hill Education, 3rd edition, 2013. ISBN 9780073397900.
Michael J. de Smith, Michael F. Goodchild, and Paul A. Longley. Geospatial Analysis: A Comprehensive Guide to Principles, Techniques and Software Tools. Winchelsea Press, 7th edition, 2024. URL: https://www.spatialanalysisonline.com/extractv7.pdf.
Robert G. Dean and Robert A. Dalrymple. Coastal Processes with Engineering Applications. Cambridge University Press, Cambridge, UK, 2001. ISBN 9780521645641.
Robert G. Dean and Robert A. Dalrymple. Coastal Processes with Engineering Applications. Cambridge University Press, Cambridge, UK, 2001. ISBN 9780521602754. doi:10.1017/CBO9780511754500.
missing institution in delzer2003bod
A. J. Dolman. Biogeochemical Cycles and Climate. Oxford University Press, 2019. ISBN 9780198779308. Explores the interaction of Earth's biogeochemical cycles with climate physics, including carbon, nitrogen, phosphorus, and water cycles. URL: https://academic.oup.com/book/35103, doi:10.1093/oso/9780198779308.001.0001.
Urban Drainage and Flood Control District (UDFCD). Chapter 7: streets, inlets, and storm drains. 2020. Comprehensive guidance on inlet types, design procedures, and storm drain hydraulics.
G. D. Farquhar, S. von Caemmerer, and J. A. Berry. A biochemical model of photosynthetic co₂ assimilation in leaves of c₃ species. Planta, 149(1):78–90, 1980. URL: https://doi.org/10.1007/BF00386231, doi:10.1007/BF00386231.
John D. Fenton. Numerical Methods for Nonlinear Waves. Volume 5. World Scientific, Singapore, 1999. ISBN 9789810237073. Comprehensive treatment of Stokes, cnoidal, solitary, and stream function wave theories with numerical methods. URL: https://johndfenton.com/Papers/Fenton99Liu-Numerical-methods-for-nonlinear-waves.pdf.
C. W. Fetter. Applied Hydrogeology. Prentice Hall, Upper Saddle River, NJ, 4th edition, 2001.
J. R. Freney and I. E. Galbally, editors. Cycling of Carbon, Nitrogen, Sulfur and Phosphorus in Terrestrial and Aquatic Ecosystems. Springer-Verlag Berlin Heidelberg, 1982. ISBN 978-3-642-68431-9. URL: https://link.springer.com/book/9783642684319.
W.H. Green and G.A. Ampt. Studies on soil physics: 1. the flow of air and water through soils. Journal of Agricultural Science, 4(1):1–24, 1911. doi:10.1017/S0021859600001441.
Ram S. Gupta. Hydrology and Hydraulic Systems. Waveland Press, Long Grove, IL, 4th edition, 2017. ISBN 9781478630913.
Jiahuan Han and Vijay P. Singh. A review of widely used drought indices and the challenges of drought assessment under climate change. Environmental Monitoring and Assessment, 2023. doi:10.1007/s10661-023-12062-3.
missing institution in HMR52
Michael Z. Hauschild, Ralph K. Rosenbaum, and Stig Irving Olsen, editors. Life Cycle Assessment: Theory and Practice. Springer, 2018. ISBN 978-3-319-56474-6. Comprehensive primer covering LCA theory, methodology, and applications across sectors. URL: https://link.springer.com/book/10.1007/978-3-319-56475-3, doi:10.1007/978-3-319-56475-3.
P. G. Holland, R. W. Herschy, and David Archer. Flood frequency analysis. In Encyclopedia of Hydrology and Water Resources, pages 279–288. Springer, 2016. doi:10.1007/978-1-4020-4497-7_86.
Robert E. Horton. The infiltration-formation of runoff volume. Transactions of the American Geophysical Union, 21:693–711, 1940.
Robert Y. Hudson. Laboratory investigation of rubble-mound breakwaters. Technical Report, U.S. Army Corps of Engineers, Waterways Experiment Station, 1959. Introduced the Hudson formula for armor unit stability under wave attack. URL: https://en.wikipedia.org/wiki/Hudson%27s_equation.
Sherwood B. Idso, Richard D. Jackson, Paul J. Pinter Jr., Robert J. Reginato, and John L. Hatfield. Normalizing the stress degree day parameter for environmental variability. Agricultural Meteorology, 24:45–55, 1981. doi:10.1016/0002-1571(81)90032-7.
Zhen-Gang Ji. Hydrodynamics and Water Quality: Modeling Rivers, Lakes, and Estuaries. John Wiley & Sons, Hoboken, NJ, 2nd edition, 2017. ISBN 9781118877155. URL: https://www.wiley.com/en-us/Hydrodynamics+and+Water+Quality%3A+Modeling+Rivers%2C+Lakes%2C+and+Estuaries%2C+2nd+Edition-p-9781118877155.
missing institution in england2018bulletin17c
J. W. Kamphuis. Alongshore sediment transport rate. Journal of Waterway, Port, Coastal, and Ocean Engineering, 117(6):624–640, 1991. doi:10.1061/(ASCE)0733-950X(1991)117:6(624).
missing institution in fhwa2024hec22
Paul D. Komar. Beach Processes and Sedimentation. Prentice Hall, Upper Saddle River, NJ, 2nd edition, 1998. ISBN 9780130839061.
Paul D. Komar and Douglas L. Inman. Longshore sand transport on beaches. Journal of Geophysical Research, 75(30):5914–5927, 1970. doi:10.1029/JC075i030p05914.
missing institution in leopold1953hydraulic
Gilbert M. Masters and Wendell P. Ela. Introduction to Environmental Engineering and Science. Prentice Hall, Upper Saddle River, NJ, 3rd edition, 2008. ISBN 9780131481930.
J. W. McCormick. Design guidelines for detached breakwaters. Technical Report, U.S. Army Corps of Engineers, 1993. Example citation; actual metadata may vary.
Thomas B. McKee, Nolan J. Doesken, and John Kleist. The relationship of drought frequency and duration to time scales. In Proceedings of the 8th Conference on Applied Climatology, 179–184. Anaheim, California, 1993. American Meteorological Society.
James R. Mihelcic. Fundamentals of Environmental Engineering. John Wiley & Sons, New York, 1st edition, 1999. ISBN 9780471243137. Provides foundational concepts in environmental engineering, including chemical, physical, and biological processes relevant to air, water, and soil systems.
J.R. Morison, M.P. O'Brien, J.W. Johnson, and S.A. Schaaf. The force exerted by surface waves on piles. Journal of Petroleum Technology, 2(5):149–154, 1950. doi:10.2118/950149-G.
J. W. Morse and F. T. Mackenzie. Geochemistry of Sedimentary Carbonates. Volume 48 of Developments in Sedimentology. Elsevier, 1990. ISBN 9780080869629. URL: https://books.google.com/books/about/Geochemistry_of_Sedimentary_Carbonates.html?id=3Cvk2lkukgEC.
missing institution in norman2001culvert
P. Novak, A.I.B. Moffat, C. Nalluri, and R. Narayanan. Hydraulic Structures. CRC Press, London, 4th edition, 2007. ISBN 9780415386265.
United States Army Corps of Engineers. Shore Protection Manual. Volume I and II. Waterways Experiment Station, Coastal Engineering Research Center, Vicksburg, Mississippi, 4th edition, 1984. Prepared for the Department of the Army, US Army Corps of Engineers, Washington, DC.
missing institution in TxDOT_Rational
missing institution in palmer1965pdsi
A. J. Peterka. Hydraulic Design of Stilling Basins and Energy Dissipators. Engineering Monograph No. 25. U.S. Department of the Interior, Bureau of Reclamation, Denver, Colorado, 1978. Revised edition.
Scott D. Pitta and David G. Price. Professional Drone Pilot's Handbook & FAA Remote Pilot Test Guide. CreateSpace Independent Publishing Platform, United States, 2016. ISBN 978-1535567305. Comprehensive guide for drone flight control, performance, and FAA Part 107 certification.
N. LeRoy Poff and Julie K. H. Zimmerman. Ecological responses to altered flow regimes: a literature review to inform the science and management of environmental flos. Freshwater Biology, 55(1):194–205, 2010. Accessed July 2025. doi:10.1111/j.1365-2427.2009.02272.x.
David T. Pugh. Tides, Surges and Mean Sea-Level. John Wiley & Sons, Chichester, UK, 1987. ISBN 9780471915058. A handbook for engineers and scientists covering tidal theory, storm surges, and sea-level dynamics.
William J.M. Rankine. On the stability of retaining walls. Philosophical Transactions of the Royal Society, 1857.
William John Macquorn Rankine. On the stability of loose earth. 1857. Introduces Rankine's Earth Pressure Theory for active and passive lateral soil pressures.
Kenneth H. Reckhow, Michael N. Beaulac, and Jonathan T. Simpson. Modeling phosphorus loading and lake response under uncertainty: a manual and compilation of export coefficients. Technical Report EPA 440/5-80-011, U.S. Environmental Protection Agency, Washington, D.C., 1980. Prepared by Michigan State University for the Clean Lakes Program. URL: https://nepis.epa.gov/Exe/ZyPURL.cgi?Dockey=00001KWE.TXT.
Kenneth G. Renard, George R. Foster, Glenn A. Weesies, David K. McCool, and Daniel C. Yoder. Predicting Soil Erosion by Water: A Guide to Conservation Planning with the Revised Universal Soil Loss Equation (RUSLE). United States Department of Agriculture, Agricultural Research Service, Washington, DC, 1997.
Pix4D SA. Drone and terrestrial mapping: pix4d vs dronedeploy. https://www.pix4d.com/drone-and-terrestrial-mapping-pix4d-vs-dronedeploy/, 2025. Comparison and workflow overview for Pix4Dcapture and Pix4Dmapper in mission planning.
B.A. Shafer and L.E. Dezman. Development of a surface water supply index (swsi) to assess the severity of drought conditions in snowpack runoff areas. In Proceedings of the 50th Annual Western Snow Conference, 164–175. Fort Collins, Colorado, 1982.
Vijay P. Singh. A review of theories of hydraulic geometry relations. Unpublished Class Resource, 2003. Accessed July 2025.
Kyungduck Suh and Robert A. Dalrymple. Offshore breakwaters in laboratory and field. Journal of Waterway, Port, Coastal and Ocean Engineering, 113(2):105–121, 1987. doi:10.1061/(ASCE)0733-950X(1987)113:2(105).
Michael Tomlinson and John Woodward. Pile Design and Construction Practice. CRC Press, 5th edition, 2008. ISBN 9780415465772. Includes wave force calculations using Morison equation.
J. W. Van der Meer. Conceptual design of rubble mound breakwaters. In Design and Reliability of Coastal Structures, pages 447–510. Springer, Venice, 1992.
Jentsje Van der Meer and Sigurdur Sigurdarson. Design and Construction of Berm Breakwaters. World Scientific Publishing, Singapore, 2016. ISBN 9789814749602. Comprehensive guide to Van der Meer stability formulae and berm breakwater design.
Jentsje W. Van der Meer. Rock slopes and gravel beaches under wave attack. In Proceedings of the 22nd International Conference on Coastal Engineering, 2624–2637. ASCE, 1990. Introduced Van der Meer stability formulae for armor layers under plunging and surging wave conditions. URL: https://www.vandermeerconsulting.nl/downloads/stability_b/1998_vandermeer_ch11.pdf.
Leo C. van Rijn. Sediment transport, part i: bed load transport. Journal of Hydraulic Engineering, 110(10):1431–1456, 1984. doi:10.1061/(ASCE)0733-9429(1984)110:10(1431).
Akula Venkatram and Jesse Thé. Introduction to gaussian plume models. In P. Zannetti, editor, Air Quality Modeling: Theories, Methodologies, Computational Techniques, and Available Databases and Software, volume I, chapter 7A, pages 185–222. The EnviroComp Institute and the Air & Waste Management Association, Pittsburgh, PA, 2003. URL: https://www.apsi.tech/material/modeling/IntroductiontoGaussianPlumeModels.pdf.
Sergio M. Vicente-Serrano, Santiago Beguería, and Juan I. López-Moreno. A multiscalar drought index sensitive to global warming: the standardized precipitation evapotranspiration index. Journal of Climate, 23(7):1696–1718, 2010. doi:10.1175/2009JCLI2909.1.
M. Weiß and L. Menzel. A global comparison of four potential evapotranspiration equations and their relevance to stream flow modelling in semi-arid environments. Advances in Geosciences, 18:15–23, 2008.
Frank M. White. Fluid Mechanics. McGraw-Hill, New York, NY, 7th edition, 2011. ISBN 9780077422417.
J.R. Williams. Sediment yield prediction with universal equation using runoff energy. Journal of the Hydraulics Division, ASCE, 101(HY3):438–446, 1975.
Randall A. Wise. Depth of closure in beach-fill design. Coastal Engineering Technical Note CETN II-40, U.S. Army Engineer Waterways Experiment Station, Coastal and Hydraulics Laboratory, Vicksburg, Mississippi, March 1998. Provides operational definition and estimation procedures for depth of closure in beach nourishment projects. URL: https://erdc-library.erdc.dren.mil/bitstream/11681/2120/1/CETN-II-40.pdf.
Paul R. Wolf and Bon A. Dewitt. Elements of Photogrammetry with Applications in GIS. McGraw-Hill, 3rd edition, 2000. ISBN 9780072924541. Widely used in civil engineering and surveying programs for its comprehensive coverage of photogrammetric principles and GIS integration.
American Petroleum Institute. Recommended Practice for Planning, Designing and Constructing Fixed Offshore Platforms. Washington, D.C., 22nd edition, 2014. Offshore Pile Design Guidelines.
American Society of Heating, Refrigerating and Air-Conditioning Engineers. 2021 ASHRAE Handbook—Fundamentals. ASHRAE, Atlanta, GA, 2021. ISBN 9781939200910. Chapter 26: Heat, Air, and Moisture Control in Building Assemblies. URL: https://www.ashrae.org/technical-resources/ashrae-handbook.
ASTM International. Astm d422 - standard test method for particle-size analysis of soils. 1963. Withdrawn and replaced by D6913 and D7928.
ASTM International. Astm d6913 - standard test methods for particle-size distribution (gradation) of soils using sieve analysis. 2004.
ASTM International. Astm d5084-16a: standard test methods for measurement of hydraulic conductivity of saturated porous materials using a flexible wall permeameter. 2016. Includes falling head and constant head methods for fine-grained soils under controlled stress conditions.
ASTM International. Astm d4318-17e1: standard test methods for liquid limit, plastic limit, and plasticity index of soils. 2017. Covers procedures for Atterberg limits including multipoint and one-point liquid limit methods, plastic limit rolling, and plasticity index calculation.
ASTM International. Astm d4767-11(2020): standard test method for consolidated undrained triaxial compression test for cohesive soils. 2020. ASTM International, West Conshohocken, PA.
ASTM International. Astm d7181-20: standard test method for consolidated drained triaxial compression test for soils. 2020. ASTM International, West Conshohocken, PA.
ASTM International. Standard test method for one-dimensional consolidation properties of saturated cohesive soils using controlled-strain loading. https://www.astm.org/d4186-20.html, 2020. ASTM D4186/D4186M-20 — CRS consolidation testing method for low-permeability soils.
ASTM International. Astm d2434-22: standard test methods for measurement of hydraulic conductivity of coarse-grained soils. 2022. Covers constant head method for saturated coarse-grained soils using rigid or flexible wall permeameters.
ASTM International. Astm d2850-23: standard test method for unconsolidated-undrained triaxial compression test on cohesive soils. 2023. ASTM International, West Conshohocken, PA. URL: https://www.astm.org/d2850-23.html.
European Federation of Foundation Contractors (EFFC) and Deep Foundations Institute (DFI). Effc-dfi geotechnical carbon calculator. http://www.geotechnicalcarboncalculator.com, 2022. Web-based tool for calculating CO₂ emissions of foundation and geotechnical works, enabling design comparisons and benchmarking.
Federal Emergency Management Agency. Wave runup and overtopping: guidance for flood risk analysis and mapping. Technical Report FEMA P-55 Supplement, FEMA, 2021. Comprehensive guidance on empirical and numerical runup models for coastal flood risk mapping. URL: https://www.fema.gov/sites/default/files/documents/fema_rm-coastal-wave-runup-overtopping_112021.pdf.
Geo-Institute Sustainability in Geotechnical Engineering Committee. Sustainability in geotechnical engineering. Technical Report, American Society of Civil Engineers (ASCE) Geo-Institute, 2022. Technical module outlining sustainability principles, assessment tools, and case studies for geotechnical engineering practice. URL: https://www.geoinstitute.org/sites/default/files/inline-files/SM_GTT_Final_12122022.pdf.
Intergovernmental Panel on Climate Change. Ipcc sixth assessment report: sea level rise projections. 2021. Provides global and regional sea level rise projections from 2020 to 2150 under multiple SSP scenarios, based on CMIP6, ice sheet, and glacier models. URL: https://sealevel.nasa.gov/data_tools/17.
U.S. Army Coastal Engineering Research Center. Shore Protection Manual. Washington, D.C., 4th edition, 1984. Volumes 1 and 2.
U.S. Army Corps of Engineers. Shore Protection Manual. Coastal Engineering Research Center, Waterways Experiment Station, Vicksburg, MS, 1984.
U.S. Army Corps of Engineers. Gravity Dam Design. Washington, D.C., 1995. Accessed July 2025.
U.S. Army Corps of Engineers. Coastal Engineering Manual. Washington, DC, 2002.
U.S. Army Corps of Engineers. Coastal Engineering Manual, Part II, Chapter 7: Harbor Hydrodynamics. U.S. Army Engineer Research and Development Center, Vicksburg, MS, 2008. Includes detailed theory and design guidance on harbor oscillations, resonance, Helmholtz modes, and wave-structure interactions. URL: http://www1.frm.utn.edu.ar/laboratorio_hidraulica/Biblioteca_Virtual/Coastal%20Engineering%20Manual%20-%20Part%20II/Part_II-Chap_7.pdf.
U.S. Army Corps of Engineers. Coastal Engineering Manual. Washington, D.C., revised edition, 2011. Part VI: Design of Coastal Structures. URL: https://www.publications.usace.army.mil/Portals/76/Publications/EngineerManuals/EM_1110-2-1100_PartVI.pdf.
U.S. Army Corps of Engineers. National inventory of dams (nid). 2025. Accessed July 2025.
U.S. Environmental Protection Agency. Watersense water budget tool. 2020. Version 1.04 (Excel), released June 2020. Used to comply with WaterSense New Home Specification for landscape water efficiency. URL: https://www.epa.gov/watersense/water-budget-tool.
United Nations Climate Change Learning Partnership. Un greenhouse gas calculator manual. UN CC:Learn Knowledge Sharing Platform, 2009. Guidance document for calculating carbon footprints in UN agencies and educational contexts. URL: https://www.uncclearn.org/resources/library/un-greenhouse-gas-calculator-manual/.
United States Bureau of Reclamation. Design of Gravity Dams: Design Manual for Concrete Gravity Dams. U.S. Government Printing Office, Washington, D.C., 1976. Accessed July 2025.
United States Department of Agriculture, Natural Resources Conservation Service. Chapter 2: Estimating Runoff Volume and Peak Discharge. Engineering Field Handbook. USDA NRCS, 2021. Comprehensive guide to the NRCS Curve Number method, including rainfall distributions, hydrologic soil groups, and land use factors.
United States Environmental Protection Agency. Clean water act. 1972. Federal law establishing the framework for regulating discharges of pollutants into U.S. waters. Accessed July 24, 2025.
United States Environmental Protection Agency. Clean air act amendments of 1990. 1990. Federal law defining EPA's responsibilities for protecting and improving air quality. Accessed July 24, 2025.