Ideal Gasdynamics utilities for Python 3.6+
Project description
pygasflow
pygasflow is a Python package that provides a few handful functions to quickly perform:
-
Compressible flow computation in the quasi-1D ideal gasdynamic (perfect gas) regime. The following solvers are implemented:
isentropic_solver.fanno_solver.rayleigh_solver.shockwave_solverfor normal and oblique shock waves.conical_shockwave_solver.De_Laval_solverand thenozzlessub-module, containing functions and classes to understand convergent-divergent nozzles, Rao's TOP nozzles (Thrust Optmizie Parabolic), Minimum Length nozzle with Method of Characteristics. Nozzles can be used to quickly visualize their geometric differences or to solve the isentropic expansion with theDe_Laval_Solverclass.
-
Aerothermodynamic computations (
pygasflow.atdmodule):- Correlations to estimate boundary layer thickness, heat flux and wall shear stress over a flat plate or a stagnation region.
- Newtonian Flow Theory to estimate the pressure distribution around objects and their aerodynamic characteristics.
The following charts has been generated with the functions included in this package:
The following screenshots highlights the interactive capabilities implemented in this module:
Installation
The repository is avaliable on PyPi:
pip install pygasflow
And also on Conda:
conda install conda-forge::pygasflow
Usage
The easiest way is to call a solver. Let's say you need to solve an isentropic flow:
from pygasflow import isentropic_solver
help(isentropic_solver)
isentropic_solver("m", 2, to_dict=True)
# {'m': 2.0,
# 'pr': 0.12780452546295096,
# 'dr': 0.2300481458333117,
# 'tr': 0.5555555555555556,
# 'prs': 0.24192491286747442,
# 'drs': 0.36288736930121157,
# 'trs': 0.6666666666666667,
# 'urs': 2.3515101530718505,
# 'ars': 1.6875000000000002,
# 'ma': 30.000000000000004,
# 'pm': 26.379760813416457}
Should a solver not be sufficient for your use case, feel free to explore the code implemented inside each flow's type, maybe you'll find a function that suits your needs.
Please:
- take a look at the notebooks contained in the examples folder. You can also try this package online with Binder.
- visit the documentation page.
- If you find any errors, open an issue or submit a pull request!
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pygasflow-1.3.1.tar.gz.
File metadata
- Download URL: pygasflow-1.3.1.tar.gz
- Upload date:
- Size: 205.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.24
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bdd97ae3940fc8c8304b5d8d80c3d8da86b9b0ea0a0528683cb95b7399d6bcfc
|
|
| MD5 |
cf5927f9d1aeee0ed5c37a25338d73ff
|
|
| BLAKE2b-256 |
16bcf36ee6de2afbcd4290781648345a8c5d4773985a94ef3757069a5241e869
|
File details
Details for the file pygasflow-1.3.1-py3-none-any.whl.
File metadata
- Download URL: pygasflow-1.3.1-py3-none-any.whl
- Upload date:
- Size: 236.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.24
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
84164093591adaed49a6ac99f97bc13ae2393e996a9789bac4b729f21f9812d1
|
|
| MD5 |
454179383401ffba2849261d4804c9cd
|
|
| BLAKE2b-256 |
d4981de897896b14881967841799d0226dd4bd9b1f55e35dc18a69b7d8e2a9a9
|