Package overview¶
BLDFM provides a modular framework for modelling atmospheric dispersion and flux footprints in the planetary boundary layer (PBL). It numerically solves the three-dimensional steady-state advection-diffusion equation and computes Green’s function footprints for flux tower networks.
Core modules¶
bldfm.pbl_modelComputes vertical profiles of horizontal wind and eddy diffusivity using Monin-Obukhov Similarity Theory (MOST).
bldfm.solverSolves the steady-state advection-diffusion equation using FFT-based methods with linear shooting for the vertical boundary value problem.
- Key functions:
bldfm.solver.ivp_solver()
bldfm.utilsUtility functions for wind field construction, source generation, and diagnostics.
Configuration and interface¶
bldfm.config_parserYAML-based configuration with dataclass schema. Defines
BLDFMConfig,TowerConfig,DomainConfig,MetConfig, and related classes.
bldfm.interfaceHigh-level functions that encapsulate the full workflow:
run_bldfm_single()– single tower, single timesteprun_bldfm_timeseries()– single tower, all timestepsrun_bldfm_multitower()– all towers, all timestepsrun_bldfm_parallel()– parallel execution over towers, time, or both
bldfm.cliCommand-line interface:
bldfm run config.yaml [--dry-run].
Data and I/O¶
bldfm.syntheticGenerates synthetic meteorological timeseries and tower configurations for testing and prototyping.
bldfm.ioNetCDF export and import of footprint results using xarray with CF-1.8 metadata.
bldfm.cacheDisk-based cache for Green’s function results using SHA-256 keyed
.npzfiles.
Plotting¶
bldfm.plottingVisualisation functions for footprint fields, geospatial map overlays, wind roses, and temporal footprint evolution.
Module interactions¶
bldfm.pbl_modelprovides the vertical profiles required bybldfm.solver.bldfm.interfaceorchestrates the full pipeline (wind fields, profiles, solver) driven bybldfm.config_parser.bldfm.cacheaccelerates repeated solves by caching Green’s functions.bldfm.iosaves and loads multi-tower, multi-timestep results.bldfm.plottingvisualises solver outputs.
API reference¶
For detailed information on functions and usage, refer to the API Documentation.