GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - CoolProp/CoolPlot: Create property plots for engineering thermodynamics using CoolProp as data source.

BranchesTags
Open more actions menu

Latest commit

 

History

754 Commits
754 Commits

Folders and files

NameName
Last commit message
Last commit date
.github/workflows
.github/workflows
 
 
cpp
cpp
 
 
docs
docs
 
 
examples
examples
 
 
src/coolplot
src/coolplot
 
 
tests
tests
 
 
.gitignore
.gitignore
 
 
.readthedocs.yaml
.readthedocs.yaml
 
 
CHANGELOG.md
CHANGELOG.md
 
 
LICENSE
LICENSE
 
 
MANIFEST.in
MANIFEST.in
 
 
Makefile
Makefile
 
 
README.md
README.md
 
 
pyproject.toml
pyproject.toml
 
 

Repository files navigation

GitHub License Coverage - Codecov Coverage - Coveralls PyPI - Version PyPI - Downloads

CoolPlot

Property diagrams and psychrometric charts for engineering thermodynamics, with CoolProp as the source of every property: log(p)-h, T-s, h-s, p-s, p-rho, T-rho and p-T diagrams for pure fluids and refrigerant blends, cycles drawn on top of them, and psychrometric charts for humid air.

A log(p)-h chart of propane with a heat pump cycle

from coolplot import PropertyDiagram
from coolplot.thermo.cycles import simple_compression

diagram = PropertyDiagram("R290", "ph", units="engineering", tp_limits="ACHP")
diagram.set_default_lines(labels=True, rounding=True)
diagram.add_cycle(simple_compression("R290", T_evap_C=-5, T_cond_C=45, dT_sh_K=5))
diagram.save("R290_ph.png")           # or .pdf, .svg; show() opens a window

Cycles can be given state by state in the chart's units, by two properties or by the process that leads to a state:

diagram.add_cycle("Heat pump", [
    {"p": 3.0, "T": 0.0},                               # 1 compressor inlet, bar and deg C
    {"p": 15.0, "via": "compression", "eta_is": 0.7},   # 2 compressor outlet
    {"p": 15.0, "Q": 0.0},                              # 3 condenser outlet
    {"p": 3.0, "via": "isenthalpic"},                   # 4 after the valve
])

What else it does:

  • Isoline labels sit at the edges of the chart, as on printed charts, and keep clear of the cycles.
  • Blends: the dome from CoolProp's phase envelope, the temperature glide inside it, a chart in seconds.
  • Units: SI, kPa and kJ, deg C and bar, or inch-pound; a change of units costs no new calculation.
  • Output: PNG and PDF through matplotlib (fonts embedded, texts kept as text, several charts per file), SVG with no dependencies, plotly figures and HTML pages, live charts in a web page.
  • Interactive: zoom, hover and dragging of cycle states in matplotlib and in a web page; only what changed is recomputed and redrawn; lines can be computed in the background.

The documentation (getting started, tutorials, how-to pages, the API reference and a gallery of the examples) is built from docs/ and published on Read the Docs; make docs builds it locally.

The code was forked from the main CoolProp repository at v6.3.0 with its history preserved, hence the old commits. Version 0.2 replaced the legacy API (from CoolPlot.Plot import PropertyPlot); the upgrade guide in the documentation gives the equivalents, and pip install "coolplot<0.2" keeps the last legacy release. From 1.0 to 2.0 the public API is stable.

Pull requests are encouraged!

Installation

The project gets published on PyPi as coolplot and you can install it using pip

pip install coolplot                # core, includes the SVG backend
pip install "coolplot[matplotlib]"  # with the matplotlib backend

License

This Python package is released under the terms of the MIT license.

About

Create property plots for engineering thermodynamics using CoolProp as data source.

Resources

Readme
MIT license
Activity
Custom properties

Stars

26 stars

Watchers

7 watching

Forks

10 forks
Report repository

Releases

Packages

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.