Skip to main content

Create beautiful fluid property diagrams using CoolProp and matplotlib

Project description

Create custom and beautiful Fluid Property Diagrams with fluprodia. The package implements fluid property data from CoolProp [1]. Plotting is handled by matplotlib [2], all calculations are performed with numpy [3]. The list of fluids available can be found at CoolProp.

fluprodia is licensed under the MIT software license.

docs

Documentation Status

package

PyPI Package latest release PyPI Wheel
Supported versions
Zenodo

Installation

pip install fluprodia

Usage

To create a diagram import the library, specify unit system and isolines to be calculated and run the calculation:

>>> from fluprodia import FluidPropertyDiagram
>>> import matplotlib.pyplot as plt
>>> import numpy as np

>>> diagram = FluidPropertyDiagram(fluid='H2O')
>>> diagram.set_unit_system(T='°C', h='kJ/kg', p='bar')
>>> Q = np.linspace(0, 1, 11)
>>> T = np.arange(25, 501, 25)
>>> p = np.geomspace(0.01, 1000, 6)
>>> v = np.geomspace(0.001, 10, 5)
>>> s = np.linspace(1000, 10000, 10)
>>> h = np.linspace(0, 3600, 19)
>>> diagram.set_isolines(Q=Q, T=T, p=p, v=v, s=s, h=h)
>>> diagram.calc_isolines()

Then you can plot the data to different types of plots, e.g. logph diagram:

>>> fig, ax = plt.subplots(1, figsize=(8, 5))
>>> diagram.draw_isolines(diagram_type='logph', fig=fig, ax=ax, x_min=0, x_max=3000, y_min=0.01, y_max=1000)
>>> plt.tight_layout()
>>> fig.savefig('logph_diagram_H2O.svg')
>>> fig.savefig('logph_diagram_H2O.png', dpi=300)
https://raw.githubusercontent.com/fwitte/fluprodia/master/docs/reference/_images/logph_diagram_H2O.svg

Or, a Ts-diagram:

>>> fig, ax = plt.subplots(1, figsize=(8, 5))
>>> diagram.draw_isolines(diagram_type='Ts', fig=fig, ax=ax, x_min=0, x_max=8000, y_min=0, y_max=700)
>>> plt.tight_layout()
>>> fig.savefig('Ts_diagram_H2O.svg')
>>> fig.savefig('Ts_diagram_H2O.png', dpi=300)
https://raw.githubusercontent.com/fwitte/fluprodia/master/docs/reference/_images/Ts_diagram_H2O.svg

The fluids are available through CoolProp. To generate a diagram for a new fluid simply change the name. Isolines come with defaults as well.

>>> diagram = FluidPropertyDiagram(fluid='R290')
>>> diagram.set_unit_system(T='°C', h='kJ/kg', p='bar')
>>> diagram.calc_isolines()
>>> fig, ax = plt.subplots(1, figsize=(8, 5))
>>> diagram.draw_isolines(diagram_type='logph', fig=fig, ax=ax, x_min=0, x_max=800, y_min=1e-1, y_max=1e2)
>>> plt.tight_layout()
>>> fig.savefig('logph_diagram_R290.png', dpi=300)
>>> fig.savefig('logph_diagram_R290.svg')
https://raw.githubusercontent.com/fwitte/fluprodia/master/docs/reference/_images/logph_diagram_R290.svg

Documentation

For further examples and usage please refer to the online documentation at https://fluprodia.readthedocs.io/.

Citation

Every version of fluprodia is archived at zenodo. You can cite the latest or a specific version. For citation info and more details please go to the zenodo entry of fluprodia.

References

This software depends on the packages CoolProp, matplolib and numpy.

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

fluprodia-3.4.tar.gz (1.0 MB view details)

Uploaded Source

Built Distribution

fluprodia-3.4-py3-none-any.whl (15.6 kB view details)

Uploaded Python 3

File details

Details for the file fluprodia-3.4.tar.gz.

File metadata

  • Download URL: fluprodia-3.4.tar.gz
  • Upload date:
  • Size: 1.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.10

File hashes

Hashes for fluprodia-3.4.tar.gz
Algorithm Hash digest
SHA256 34312586f92847392bd97c2125f4f4f6a89983ebd1da07058485e82fdd0d5d07
MD5 4b1b21be55c94a10e81bef5846cdeef2
BLAKE2b-256 b67b11783f7964fe29db3d11778d2fcc66f1b13516074c30253dcd967af0304a

See more details on using hashes here.

File details

Details for the file fluprodia-3.4-py3-none-any.whl.

File metadata

  • Download URL: fluprodia-3.4-py3-none-any.whl
  • Upload date:
  • Size: 15.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.10

File hashes

Hashes for fluprodia-3.4-py3-none-any.whl
Algorithm Hash digest
SHA256 0b0810909233a5bb812dea1b585480668abf8dd0c6413b07c2ed72a03b07a214
MD5 df5bc01e69ef3e06cca7f56ac9ce4210
BLAKE2b-256 7a30f6171dc3e2f20bb371659fbbad73119efb0b4184e3ac58117f8b3f7f9754

See more details on using hashes here.

Supported by

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