Skip to main content

Thermodynamic properties in Python.

Project description

PYroMat

Thermodynamic tools for Python

Originally authored by Chris Martin crm28@psu.edu
Co-authored by Joe Ranalli

PYroMat is a flexible platform for conveniently working with thermodynamic data. The expanding collection of substances includes data for the properties people need most, exposed in an intuitively designed object interface Come read more.

DOI

Installation from the Python Package Index

If you have pip installed, you can install PYroMat with a single command.

$ pip install pyromat 

If you are upgrading, you can always use

$ pip install pyromat --upgrade

Some of you will want to specify the version of python being used (e.g. on many flavors of Linux)

$ python3 -m pip install pyromat

Getting started

>>> import pyromat as pm
>>> O2 = pm.get('ig.O2')
>>> h = O2.h(492,1.01)  # enthalpy at 492K, 1.01bar
>>> pm.info('ig.O2')     # where did these data come from?
>>> pm.config['unit_pressure'] = 'psi'  # Don't like working in bar?
>>> help(pm.search)		# How do I look for more substances?

To get up and running quickly, see the Introductory Tutorial. For detailed documentaiton, see the PYroMat User and Developer Handbook.

Contributing

As an open source project, PYroMat appreciates the participation and engagement of community members.

If you think you've found a bug, please first search in Issues. If you can't find your bug, feel free to open a new issue where we will discuss how to resolve the problem.

If you have an idea for a new feature, we'd love to hear from you! Many of PYroMat's features came from user requests. Please feel free to open an new Discussion or open a new Issue. You can even Email Me - I always enjoy hearing from users.

If you wish to contribute by resolving an open issue, please fork the respository as described in the Github Guide. Please see the full documentation in the handbook for details of the code structure. Even if your code isn't pulled verbatim, a number of issues have been resolved from user-inspired solutions.

To run development tests found in the src/test directory, you can install with the "development" option, which requires the pytest package.

python -m pip install pyromat[dev]

Please be aware:

  • PYroMat DOES NOT COME WITH A WARRANTY. Tests help make the code better, and we work hard to make the code as reliable as we can, but users should always skeptically evaluate these models to ensure they are suitable for their application. I've never met the test suite yet that catches all errors.
  • The behavior and design of the testing suite is not documented. Unlike the rest of PYroMat, it is subject to change without notice.
  • Users coding their own models will need to construct their own validation data from original sources.

License

Copyright (c) 2015-2024 Christopher R. Martin

PYroMat is released under the GNU General Public License v3.0.

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more 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

pyromat-2.2.5.tar.gz (527.1 kB view details)

Uploaded Source

Built Distribution

PYroMat-2.2.5-py3-none-any.whl (1.0 MB view details)

Uploaded Python 3

File details

Details for the file pyromat-2.2.5.tar.gz.

File metadata

  • Download URL: pyromat-2.2.5.tar.gz
  • Upload date:
  • Size: 527.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for pyromat-2.2.5.tar.gz
Algorithm Hash digest
SHA256 407e7a58fd942c0fac2aef8b3643cd2064dd340e33062115520a6e7a029971a0
MD5 249ba986811942b761899ebb650fb6d3
BLAKE2b-256 3df08b4d646c78784aa1142f39bd7e3b8a715702f1a760d481d3df8d34021141

See more details on using hashes here.

File details

Details for the file PYroMat-2.2.5-py3-none-any.whl.

File metadata

  • Download URL: PYroMat-2.2.5-py3-none-any.whl
  • Upload date:
  • Size: 1.0 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for PYroMat-2.2.5-py3-none-any.whl
Algorithm Hash digest
SHA256 30ba33c48019fcadd7a61b3865ec0313fda3c9b58103ff4cc4086b544677c6b1
MD5 58d50f13562f976bb0f4cb1b29ec5810
BLAKE2b-256 5cbf87f077e5ef1950ff23a0d7682b8f9dcbd24b03ac2d99be49f074415e238c

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