Skip to content

Effective Energy and Mass Transfer (EEMT)

EEMT is a framework for quantifying energy and mass flux in Earth's Critical Zone, providing a common energy currency for understanding landscape evolution, soil formation, and biogeochemical processes.

Get Started View on GitHub

Latest Updates

2026-01-01: Python 3 migration complete, Docker infrastructure modernized, UI/UX improvements deployed 2025-12-30: Complete documentation framework with modern data sources and parallel processing workflows

Overview

Effective Energy and Mass Transfer (EEMT) is a framework for quantifying energy and mass flux in Earth's Critical Zone. EEMT provides a common energy currency for understanding landscape evolution, soil formation, and biogeochemical processes across spatiotemporal scales.

\[\EEMT = \Ebio + \Eppt \quad [\MJmyr]\]

Where:

  • EBIO = Energy from net primary production (biological energy)
  • EPPT = Energy from effective precipitation (thermal energy)

Units: MJ m−2 yr−1 (megajoules per square meter per year)

Architecture

The EEMT workflow integrates topographic analysis with climate data to produce energy flux maps:

flowchart LR
    subgraph inputs[" Input Data "]
        DEM[("DEM<br/>Elevation")]
        DAYMET[("DAYMET<br/>Climate")]
    end

    subgraph processing[" Processing "]
        SOL["Solar Radiation<br/>(r.sun)"]
        TOPO["Topographic Analysis<br/>(slope, aspect, TWI)"]
        CLIMATE["Climate Processing<br/>(tmin, tmax, prcp)"]
    end

    subgraph output[" Output "]
        EEMT["EEMT Calculation"]
        OUT[("Energy Maps<br/>MJ/m²/yr")]
    end

    DEM --> SOL
    DEM --> TOPO
    DAYMET --> CLIMATE
    SOL --> EEMT
    TOPO --> EEMT
    CLIMATE --> EEMT
    EEMT --> OUT

    style inputs fill:#e8f5e9,stroke:#2e7d32
    style processing fill:#fff3e0,stroke:#ff9800
    style output fill:#e3f2fd,stroke:#1976d2

Key Features

  • High Performance


    Parallel processing with GRASS GIS r.sun and modern Python workflows for continental-scale analysis

  • Public Data Integration


    Seamless integration with DAYMET, USGS 3DEP, OpenTopography, and satellite data sources

  • Open Source


    Built entirely on open-source tools: GRASS GIS, GDAL, Python, and modern geospatial libraries

  • Multi-Scale


    From plot-level (1m²) to continental analysis with consistent methodologies

Quick Start

The fastest way to get started with EEMT is through our containerized web interface:

# 1. Build Docker container (one-time setup)
cd docker/ubuntu/24.04/
./build.sh

# 2. Start web interface  
cd ../../web-interface/
pip install -r requirements.txt
python app.py

# 3. Open browser to http://127.0.0.1:5000

Features: - 🌐 Web-based Interface: Upload DEMs and configure workflows through browser - 🐳 Containerized Execution: All dependencies included, no complex setup - 📊 Real-time Monitoring: Track progress with live updates - 💾 Easy Results: Download processed data as ZIP archives

Command Line Interface

For advanced users, EEMT can be run directly:

# 1. Install Dependencies
conda install -c conda-forge grass gdal rasterio xarray dask

# 2. Run Solar Radiation Workflow
cd sol/sol/
python run-workflow --step 15 --num_threads 4 your_dem.tif

# 3. Run Full EEMT Analysis  
cd ../../eemt/eemt/
python run-workflow --start-year 2020 --end-year 2020 your_dem.tif

Scientific Foundation

EEMT calculations are based on peer-reviewed methodologies:

Method Reference Key Innovation
Traditional Rasmussen et al. (2005) Climate-based energy flux
Topographic Rasmussen et al. (2014) Terrain-modified energy/water balance
Vegetation Rasmussen et al. (2014) Full LAI and biomass integration
HPC Implementation Swetnam et al. (2016) Parallel processing framework

Typical EEMT Values by Climate Zone

Arid Ecosystems
5–15 MJ m−2 yr−1
Desert scrub, water-limited systems
Semiarid Ecosystems
15–35 MJ m−2 yr−1
Grasslands, oak woodlands, transition zones
Humid Ecosystems
35–70 MJ m−2 yr−1
Coniferous forests, energy-limited systems

Applications

Research Applications

  • Soil formation modeling: Predict pedogenesis rates across landscapes
  • Critical Zone evolution: Understand long-term landscape development
  • Biogeochemical cycling: Quantify carbon and nutrient fluxes
  • Climate change impacts: Assess ecosystem sensitivity to warming

Operational Applications

  • Land management: Optimize restoration and conservation strategies
  • Agricultural planning: Site-specific productivity assessments
  • Urban planning: Heat island mitigation and green infrastructure
  • Risk assessment: Drought, fire, and erosion hazard mapping

Getting Started

  • Data Sources


    Access elevation and climate data from public repositories

  • :material-workflow: Workflows


    Step-by-step workflows for all three EEMT approaches

  • Web Interface


    Browser-based job submission and monitoring

  • Distributed Deployment


    Scale EEMT across HPC and cloud environments

Community

Contributing

We welcome contributions to improve EEMT methods, add new examples, and extend functionality. See our Development Guide.

Support

  • GitHub Issues: Report bugs and request features
  • Discussions: Ask scientific methodology questions
  • Examples: Share use cases and workflows

Citation

If you use EEMT in your research, please cite:

Primary Citation

Rasmussen, C., Pelletier, J.D., Troch, P.A., Swetnam, T.L., and Chorover, J. (2015). Quantifying topographic and vegetation effects on the transfer of energy and mass to the critical zone. Vadose Zone Journal, 14(1). doi:10.2136/vzj2014.07.0102

For high-performance computing implementations:

HPC Citation

Swetnam, T.L., Pelletier, J.D., Rasmussen, C., Callahan, N.R., Merchant, N., and Lyons, E. (2016). Scaling GIS analysis tasks from the desktop to the cloud utilizing contemporary distributed computing and data management approaches. Proceedings of XSEDE16. doi:10.1145/2949550.2949573


EEMT is developed and maintained by the Critical Zone Observatory community
Advancing understanding of Earth's Critical Zone through quantitative energy analysis