Skip to main content

Lightweight utility for computing flow states

Project description

flow_state

Compressible flow state calculations for Python.

PyPI Docs Webapp License Python Ruff

Install

pip install flow-state-calculator

Quick Start

from flow_state import solve

# From Mach and altitude
state = solve(mach=2.0, altitude=10000)

# From Mach and stagnation conditions (wind tunnel)
state = solve(mach=6, pres_stag=(140, "psi"), temp_stag=420)

# From Mach and target unit Reynolds number
state = solve(mach=5.3, re1=12.8e6)

# Access results
print(state)  # Full summary
print(state.pres, state.temp, state.re1)

Features

  • Smart solver: Automatically selects the right equations based on your inputs
  • Unit support: Use SI or provide tuples like (30000, "ft"), (140, "psi")
  • Atmosphere models: US Standard Atmosphere 1976 and CIRA-86
  • Gas models: Perfect gas (air, nitrogen, custom)
  • Transport: Sutherland viscosity law
  • Output: JSON, TOML, or legacy .dat format

CLI

# Create a config template
flow-state init

# Edit flow_config.toml, then solve
flow-state solve

Atmosphere Models

from flow_state import solve, atmosphere

# Default: US Standard Atmosphere 1976
state = solve(mach=2, altitude=10000)

# CIRA-86 with latitude and month
state = solve(mach=2, altitude=10000, atm=atmosphere.CIRA86(latitude=70, month=1))

Documentation

Full documentation: https://uahypersonics.github.io/flow_state

Citation

If you use flow_state in your research, please cite it:

@software{flow_state,
  author = {Hader, Christoph},
  title = {flow\_state: Compressible Flow State Calculations},
  url = {https://github.com/uahypersonics/flow_state},
  year = {2026}
}

Releasing

To publish a new version to PyPI:

  1. Update the version in src/flow_state/_version.py
  2. Commit and push to main
  3. Tag and push:
    git tag v0.x.x
    git push origin v0.x.x
    

The GitHub Actions workflow will automatically build and publish to PyPI via Trusted Publishing.

License

BSD-3-Clause. See LICENSE for details.

Project details


Download files

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

Source Distribution

flow_state_calculator-0.2.0.tar.gz (50.7 kB view details)

Uploaded Source

Built Distribution

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

flow_state_calculator-0.2.0-py3-none-any.whl (47.2 kB view details)

Uploaded Python 3

File details

Details for the file flow_state_calculator-0.2.0.tar.gz.

File metadata

  • Download URL: flow_state_calculator-0.2.0.tar.gz
  • Upload date:
  • Size: 50.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for flow_state_calculator-0.2.0.tar.gz
Algorithm Hash digest
SHA256 c2b0f776cce62ae7061c485e9f9c3cfb3e759f08e3361fb7b09f8e1758cfee9e
MD5 671894daba2b28e2d4fd72732980797e
BLAKE2b-256 214c6911007b2870dfb8173d946f11398f1b4eade5972f27322a8e9797a592d9

See more details on using hashes here.

Provenance

The following attestation bundles were made for flow_state_calculator-0.2.0.tar.gz:

Publisher: publish.yml on uahypersonics/flow_state

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file flow_state_calculator-0.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for flow_state_calculator-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 236c38599e752ac70b74e752aac7d758dd88670eba06ac34533134643a7fe6dd
MD5 982ce24630620afca211bb6d61f45aaa
BLAKE2b-256 0937a04c4944ad4d158ea8f6398c57caa51396472bec8160a96fde5d86a51882

See more details on using hashes here.

Provenance

The following attestation bundles were made for flow_state_calculator-0.2.0-py3-none-any.whl:

Publisher: publish.yml on uahypersonics/flow_state

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page