PyFluids
A simple, full-featured, lightweight CoolProp wrapper for Python.
Installation
The project gets published on PyPI as pyfluids.
For install the latest version using pip:
pip install pyfluids
Quick start
All calculations of thermophysical properties are performed in SI units.
The Fluid class is responsible for pure fluids and binary mixtures,
the Mixture class - for mixtures with pure fluids components,
the HumidAir class - for humid air.
For Fluid use PureFluids, IncompPureFluids, IncompMixturesMF,
IncompMixturesVF enums. For Mixture - list of PureFluids.
To update the fluid state use Input enum (for Fluid and Mixture) or
HAInput (for HumidAir) enum and their with_value method (always).
You can also convert an instance of Fluid, Mixture or HumidAir
to a JSON string or dictionary using methods to_json and to_dict, respectively.
List of properties
For the Fluid and Mixture instances:
compressibility- compressibility factor (-)conductivity- thermal conductivity (W/m/K)critical_pressure- absolute pressure at the critical point (Pa)critical_temperature- absolute temperature at the critical point (K)density- mass density (kg/m3)dynamic_viscosity- dynamic viscosity (Pa*s)enthalpy- mass specific enthalpy (J/kg)entropy- mass specific entropy (J/kg/K)freezing_temperature- temperature at freezing point (for incompressible fluids) (K)internal_energy- mass specific internal energy (J/kg)max_pressure- maximum pressure limit (Pa)max_temperature- maximum temperature limit (K)min_pressure- minimum pressure limit (Pa)min_temperature- minimum temperature limit (K)molar_mass- molar mass (kg/mol)phase- phaseprandtl- Prandtl number (-)pressure- absolute pressure (Pa)quality- mass vapor quality (-)sound_speed- sound speed (m/s)specific_heat- mass specific constant pressure specific heat (J/kg/K)surface_tension- surface tension (N/m)temperature- absolute temperature (K)triple_pressure- absolute pressure at the triple point (Pa)triple_temperature- absolute temperature at the triple point (K)
For the HumidAir instances:
compressibility- compressibility factor (-)conductivity- thermal conductivity (W/m/K)density- mass density per humid air unit (kg/m3)dew_temperature- dew-point absolute temperature (K)dynamic_viscosity- dynamic viscosity (Pa*s)enthalpy- mass specific enthalpy per humid air (J/kg)entropy- mass specific entropy per humid air (J/kg/K)humidity- absolute humidity ratio (kg/kg d.a.)partial_pressure- partial pressure of water vapor (Pa)pressure- absolute pressure (Pa)relative_humidity- relative humidity ratio (from 0 to 1) (-)specific_heat- mass specific constant pressure specific heat per humid air (J/kg/K)temperature- absolute dry-bulb temperature (K)wb_temperature- absolute wet-bulb temperature (K)
NB. If the required property is not present in the instance of the fluid,
then you can add it using the add_props method.
Examples
To calculate the specific heat of saturated water vapour at 101325 Pa:
from pyfluids import Fluid, PureFluids, Input
water_vapour = Fluid(PureFluids.Water)
water_vapour.update(Input.Pressure.with_value(101325), Input.Quality.with_value(1))
print(water_vapour.specific_heat) # 2079.937085633241
To calculate the dynamic viscosity of propylene glycol aqueous solution with 60 % mass fraction at 101325 Pa and 253.15 K:
from pyfluids import Fluid, IncompMixturesMF, Input
propylene_glycol = Fluid(IncompMixturesMF.MPG, 0.6)
propylene_glycol.update(
Input.Pressure.with_value(101325), Input.Temperature.with_value(253.15)
)
print(propylene_glycol.dynamic_viscosity) # 0.13907391053938847
To calculate the density of ethanol aqueous solution (with ethanol 40 % mass fraction) at 200 kPa and 277.15 K:
from pyfluids import Mixture, PureFluids, Input
mixture = Mixture([PureFluids.Water, PureFluids.Ethanol], [0.6, 0.4])
mixture.update(Input.Pressure.with_value(200e3), Input.Temperature.with_value(277.15))
print(mixture.density) # 883.3922771627759
To calculate the wet bulb temperature of humid air at 99 kPa, 303.15 K and 50 % relative humidity:
from pyfluids import HumidAir, HAInput
humid_air = HumidAir()
humid_air.update(
HAInput.Pressure.with_value(99e3),
HAInput.Temperature.with_value(303.15),
HAInput.RelativeHumidity.with_value(0.5),
)
print(humid_air.wb_temperature) # 295.0965785590792
Release files for pyfluids 1.0.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pyfluids-1.0.2.tar.gz | 12.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pyfluids-1.0.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 27.5 kB
Release files / pyfluids-1.0.2.tar.gz
| Download URL | pyfluids-1.0.2.tar.gz |
|---|---|
| Size | 12.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
fe3f00de0ebcff2bfb507d8464a3676d7128f51dbb43427b52790156a6fe2b41
|
|
BLAKE2b-256 checksum How to use checksums |
bbb9a307d927e9fd23d5d0487bae3be551284e78a1b085fe084bf8369fb2c150
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.4.1 importlib_metadata/4.5.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.8.10
|
Release files / pyfluids-1.0.2-py3-none-any.whl
| Download URL | pyfluids-1.0.2-py3-none-any.whl |
|---|---|
| Size | 15.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b06c621d3482be5788930c6642f3733938ef6da58d7615f030e29328960719c9
|
|
BLAKE2b-256 checksum How to use checksums |
1543af9bbc9701ff0d4c30cd50c5b9896d2934a9d87d55c61693614ec3d36c74
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.4.1 importlib_metadata/4.5.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.8.10
|