Skip to main content

A library containing various tools in the categories of thermodynamics, fluid mechanics, metering etc.

Project description

pvtlib logo

pvtlib is a Python library that provides various tools in the categories of thermodynamics, fluid mechanics, metering and various process equipment. The library includes functions for calculating flow rates, gas properties, and other related calculations.

Installation

You can install the library using pip:

pip install pvtlib

Usage

Here is an example of how to use the library:

from pvtlib.metering import differential_pressure_flowmeters

# Example usage of the calculate_flow_venturi function
result = differential_pressure_flowmeters.calculate_flow_venturi(D=0.1, d=0.05, dP=200, rho1=1000)
print(result)

More examples are provided in the examples folder: https://github.com/equinor/pvtlib/tree/main/examples

Features

  • Thermodynamics: Thermodynamic functions
  • Fluid Mechanics: Fluid mechanic functions
  • Metering: Metering functions
  • aga8: Equations for calculating gas properties (GERG-2008 and DETAIL) using the Rust port (https://crates.io/crates/aga8) of NIST's AGA8 code (https://github.com/usnistgov/AGA8)
  • Unit converters: Functions to convert between different units of measure

Handling of invalid input

This library is used for analyzing large amounts of data, as well as in live applications. In these applications it is desired that the functions return "nan" (using numpy nan) when invalid input are provided, or in case of certain errors (such as "divide by zero" errors).

Running Tests

Tests are located in the tests/ folder and use pytest. Install it before running:

pip install pytest

Then run the tests from the project root:

pytest

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contact

For any questions or suggestions, feel free to open an issue or contact the author at chaagen2013@gmail.com.

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

pvtlib-1.14.2.tar.gz (72.5 kB view details)

Uploaded Source

Built Distribution

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

pvtlib-1.14.2-py3-none-any.whl (105.2 kB view details)

Uploaded Python 3

File details

Details for the file pvtlib-1.14.2.tar.gz.

File metadata

  • Download URL: pvtlib-1.14.2.tar.gz
  • Upload date:
  • Size: 72.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for pvtlib-1.14.2.tar.gz
Algorithm Hash digest
SHA256 8884edf3e13cb84c411bc0c213ecf5074f1ab8b94c704c8f6b7bd94b0b106a3e
MD5 d62189288f05ec4d67069f787a3f68ec
BLAKE2b-256 120a467b4699bc79ba569e9f0a373ef35d7e446762b469c51f82b306f49ae1b3

See more details on using hashes here.

File details

Details for the file pvtlib-1.14.2-py3-none-any.whl.

File metadata

  • Download URL: pvtlib-1.14.2-py3-none-any.whl
  • Upload date:
  • Size: 105.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for pvtlib-1.14.2-py3-none-any.whl
Algorithm Hash digest
SHA256 cd429cecbbd2eebfbfc4884e7a806b9827d06a96e17b29347029b745a0674ce0
MD5 fb8da720689fb8b188bc3c56aeebf5c1
BLAKE2b-256 c1e76bf1a7f6860e60ea90eddff4e772d4a388ca4a12907cd444211ae1ef4cfb

See more details on using hashes here.

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