A toolkit for health-based assessments of sustainable aviation fuels.
BenSAF provides a generalized framework for:
- Processing geospatial data for airport-adjacent communities
- Estimating health impacts of sustainable aviation fuel blend scenarios
- Analyzing impacts across different demographic groups
- Generating visualizations and reports
BenSAF requires Python 3.11 or higher.
- Clone the repository:
git clone <repository-url>
cd BenSAF-
Create and activate a virtual environment. We recommend using conda (miniconda) or uv to manage the virtual environment:
Using miniconda:
conda create -n bensaf python=3.11
conda activate bensafUsing uv:
uv venv --python 3.11
source .venv/bin/activate # On Unix/macOS
# or
.venv\Scripts\activate # On Windows- Install the package in development (editable) mode:
pip install -e .bensaf/ # Core analysis toolkit
├── __init__.py
├── workflow.py # Core workflow orchestration
├── health_impacts.py # Health impact calculation functions
├── utils.py # Utility functions and data processing
├── graphics.py # Visualization and plotting utilities
bensaf_gui/ # Desktop GUI application (PyQt/PySide6)
├── model/ # MVC Model layer
├── view/ # MVC View layer
├── controller/ # MVC Controller layer
bensaf_dash/ # Web-based dashboard (Plotly Dash)
├── app.py # Main Dash application
├── layouts/ # UI layouts
├── callbacks/ # Interactive callbacks
BenSAF provides multiple interfaces to suit different workflows:
Launch the web-based interface:
python -m bensaf_dash.appThen open your browser to http://localhost:8050
Features:
- Web browser-based interface
- File upload for data
- Interactive parameter configuration
- Real-time visualization
- No installation required for end users (when deployed)
Included in the base install (pip install -e .). See bensaf_dash/README.md for detailed documentation.
Launch the native desktop application:
python -m bensaf_gui.mainFeatures:
- Native desktop experience
- Offline capability
- Rich file dialogs
- Embedded matplotlib visualizations
Install GUI dependencies:
pip install -e ".[gui]"See bensaf_gui/README.md for detailed documentation.
Use BenSAF programmatically in scripts or notebooks:
from bensaf.workflow import Workflow
workflow = Workflow()
# ... continue with analysisAll interfaces use the same core bensaf package, ensuring consistent results.
BSD 3-Clause License
Sandia National Laboratories is a multimission laboratory managed and operated by National Technology and Engineering Solutions of Sandia, LLC., a wholly owned subsidiary of Honeywell International, Inc., for the U.S. Department of Energy's National Nuclear Security Administration under contract DE-NA-0003525.
