Skip to content

Repository files navigation

PsychroPrint

PsychroPrint logo

PsychroPrint is a native Windows desktop app for producing accurate, print-ready psychrometric charts in IP units. PsychroLib 2.5.0 is bundled into the published executable and supplies the psychrometric property calculations.

CI License: MIT

What it does

  • Calculates standard barometric pressure from a user-selected elevation in feet.
  • Draws dry-bulb temperature, humidity ratio, saturation, relative-humidity, wet-bulb, enthalpy, and specific-volume lines in IP units.
  • Displays humidity ratio in grains of moisture per pound of dry air by default, with an optional lb moisture/lb dry-air scale; the maximum-range input switches units with the printed ruler.
  • Labels wet-bulb temperature directly on the saturation boundary and places enthalpy on a separate offset scale connected to the constant-enthalpy family.
  • Supports Letter, Legal, 11 x 17 Tabloid/Ledger, ANSI C/D/E, Arch A/B/C/D/E, and custom paper dimensions in inches.
  • Supports portrait and landscape output.
  • Selects 1 F, 2 F, or 5 F dry-bulb grid spacing; 1 F is the default engineering grid.
  • In the 1 F engineering grid, draws dotted wet-bulb lines every 1 F with distributed 5 F labels, plus a clipped enthalpy band with solid 5 Btu/lb chart continuations, solid 1 Btu/lb external divisions, and dashed 0.2 Btu/lb subdivisions.
  • Adds labeled state points from dry-bulb temperature and relative humidity.
  • Provides advanced control of all 13 printed color families, with Engineering, Monochrome, and Blueprint defaults plus persistent custom presets.
  • Previews and prints the same vector scene through the native Windows print dialog.
  • Exports a true vector PDF with an exact paper-size MediaBox.

Build and run

Requirements: Windows 10 or 11 and the .NET 8 SDK or newer.

For development:

.\run.ps1

Choose the elevation, paper, orientation, temperature range, humidity-ratio units, and maximum humidity ratio. Select Update preview, then use Export PDF or Print. For PDF printing, select Actual size or 100% rather than Fit when dimensional page fidelity matters.

To run verification and create a self-contained portable executable:

.\build.ps1

The script restores the official PsychroLib 2.5.0 NuGet package, runs numerical and PDF verification, publishes a self-contained single-file win-x64 executable, and creates dist\PsychroPrint-win-x64.zip.

The portable executable is written to:

dist\PsychroPrint\PsychroPrint.exe

No Python installation or separate PsychroLib installation is required for the published executable.

Credits and attribution

PsychroLib

Psychrometric calculations are provided by PsychroLib 2.5.0, copyright 2018-2020 The PsychroLib Contributors and licensed under the MIT License. The NuGet package credits D. Thevenard, D. Meyer, and DJGosnell; the upstream project acknowledges DJGosnell for the C# port.

For research use, cite D. Meyer and D. Thevenard, "PsychroLib: a library of psychrometric functions to calculate thermodynamic properties of air," Journal of Open Source Software 4(33), 1137 (2019), doi:10.21105/joss.01137, and the PsychroLib 2.5.0 software archive.

ASHRAE reference

PsychroLib documents its equations and coefficients as originating in Chapter 1, Psychrometrics, of the 2017 ASHRAE Handbook—Fundamentals. PsychroPrint's chart organization also follows established psychrometric-chart conventions and was visually informed by an ASHRAE Psychrometric Chart No. 1 reference supplied during development.

No ASHRAE chart file, scan, logo, or other ASHRAE artwork is included in this repository or generated by the software. ASHRAE® is a registered service mark of the American Society of Heating, Refrigerating and Air-Conditioning Engineers, Inc. PsychroPrint is an independent project and is not affiliated with, sponsored by, certified by, or endorsed by ASHRAE.

See THIRD_PARTY_NOTICES.md for the complete dependency notice and license text.

License

PsychroPrint source code and original project assets are available under the MIT License. Third-party components and referenced publications remain subject to their respective licenses, copyrights, and trademarks.

Calculation basis and limits

  • The app creates a Psychrometrics(UnitSystem.IP) instance and does not expose SI inputs or outputs.
  • Elevation pressure uses PsychroLib's standard-atmosphere relationship; it is station pressure, not a weather-adjusted sea-level pressure.
  • Chart curves are sampled at 0.5 F or finer and exported as vector paths. The saturation boundary is sampled at 0.25 F.
  • A printer must support the selected sheet size. If its driver rejects a custom size, export PDF and print on a device configured for that media.
  • PsychroPrint is an engineering calculation aid. Project design values and final selections remain the engineer's responsibility.

Project layout

  • src\PsychroPrint - WPF app, chart engine, WPF renderer, and vector PDF exporter.
  • tests\PsychroPrint.Verification - dependency-free numerical and output checks.
  • output\pdf - generated verification chart.
  • dist - portable published app and ZIP package.

About

High-fidelity Windows psychrometric chart printer in IP units with elevation-aware calculations and vector PDF output.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages