Skip to main content

FuelLib

PyPI - Version PyPI - Status PyPI - Python Version

GitHub Release CI Documentation

DOI Badge GitHub License

Overview

FuelLib (SWR-25-26) utilizes the tables and functions of the Group Contribution Method (GCM) as proposed by Constantinou and Gani (1994) and Constantinou, Gani and O'Connel (1995), with additional physical properties discussed in Govindaraju & Ihme (2016). The code is based on Pavan B. Govindaraju's Matlab implementation of the GCM, and has been expanded to include additional thermodynamic properties and mixture properties. The fuel library contains gas chromatography (GC x GC) data for a variety of fuels ranging from simple single component fuels to complex jet fuels. The GC x GC data for POSF jet fuels comes from Edwards (2020).

Citing this Work

If you use FuelLib in your research, please cite the following software record:

Montgomery, David, Appukuttan, Sreejith, Yellapantula, Shashank, Perry, Bruce, and Binswanger, Adam. FuelLib (Fuel Library) [SWR-25-26]. Computer Software. https://github.com/NatLabRockies/FuelLib. USDOE Office of Energy Efficiency and Renewable Energy (EERE), Office of Sustainable Transportation. Vehicle Technologies Office (VTO). 27 Feb. 2025. Web. doi:10.11578/dc.20250317.1.

Installation

Option 1: Install from PyPI (Recommended)

The easiest way to install FuelLib is via pip from pypi.org/project/fuellib:

pip install fuellib

For better dependency isolation, it is recommended to create a conda, poetry, or pixi environment first. For example:

conda create --name fuellib-env python
conda activate fuellib-env
pip install fuellib

Option 2: Development Installation (For Contributors)

Clone the repository and install in editable mode:

git clone https://github.com/NatLabRockies/FuelLib.git
cd FuelLib
pip install -e '.[dev]'  # Install with development tools (docs, testing, formatting)

See the Contributing page for more detailed setup instructions and contribution guidelines.

Library Usage

This repository includes multiple tutorials of ways to use FuelLib. We recommend starting with the basic tutorial, tutorials/basic.py, which is documented at natlabrockies.github.io/FuelLib/tutorials-basic.html. The script tutorials/mixtureProperties.py calculates a given mixture's density, viscosity and vapor pressure from GC x GC data. The results are plotted against data from NIST and Edwards (2020).

Command-Line Tools

After installing FuelLib using one of the methods above, you have access to several command-line tools for plotting, unit conversion, and exporting fuel data. A comprehensive list is provided in the documentation at https://natlabrockies.github.io/FuelLib/tutorials-cli.html.

Contributing

New contributions are always welcome! For detailed contribution guidelines, installation instructions, and development setup, see the Contributing page in the documentation.

Quick start:

  1. Fork the main repository
  2. Create a newFeature branch that contains your changes
  3. Update the sphinx documentation in newFeature
  4. Install development dependencies: pip install -e '.[dev]'
  5. Format the source code files using the provided CLI command: fl-format
  6. Run tests and build documentation locally to verify your changes
  7. Open a Pull Request (PR) from newFeature on your fork to branch main FuelLib repository.

Sphinx Documentation

This repository uses Sphinx to generate documentation.

To build the documentation, first install FuelLib with development support:

pip install -e ".[dev]"

Then use the provided CLI command:

fl-build-docs

The HTML documentation will be generated in docs/_build/html/. Open docs/_build/html/index.html in your web browser to view it.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fuellib-3.0.1.tar.gz (68.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

fuellib-3.0.1-py3-none-any.whl (79.6 kB view details)

Uploaded Python 3

File details

Details for the file fuellib-3.0.1.tar.gz.

File metadata

  • Download URL: fuellib-3.0.1.tar.gz
  • Upload date:
  • Size: 68.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for fuellib-3.0.1.tar.gz
Algorithm Hash digest
SHA256 0da7fd9c5fb492801c85659c3086d310cedfb468850035ec0e01e0dc6091d2ec
MD5 23e16af984e11d4dc0511d96a12b73a4
BLAKE2b-256 180ad98d883465f0e13fd0bff794307a4d345c3cbd2c4752f163124633360b48

See more details on using hashes here.

File details

Details for the file fuellib-3.0.1-py3-none-any.whl.

File metadata

  • Download URL: fuellib-3.0.1-py3-none-any.whl
  • Upload date:
  • Size: 79.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for fuellib-3.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 68d5c9cabf1a8e1cdb861e5d215a8c743e87ebd1c383adb111c15fc3d2a4bce3
MD5 181612ee0638dcc29e0748609d9f1d9b
BLAKE2b-256 6a7e1c22ea7e8128a8f6fe9bb925b603b0a3a6559ef6c09c46e01ce33575a5cc

See more details on using hashes here.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page