EngThermBase.jl

Basic definitions for Engineering Thermodynamics in Julia
Author JEngTherm
Popularity
5 Stars
Updated Last
1 Year Ago
Started In
October 2019

EngThermBase

EngThermBase.jl

Basic definitions for Engineering Thermodynamics in Julia.

Description

The EngThermBase.jl package aims at providing a common platform for engineering thermodynamics packages and case calculations by implementing:

  • Engineering thermodynamics quantities tagging, such as P, T, v, u, h, s, etc...
  • Default (SI) units for tagged quantities—through Unitful.jl;
  • Uncertainty propagation—through Measurements.jl.
  • Somewhat configurable thermodynamic amount pretty-printing, such as:
    • P₆₄: 101.35 kPa,
    • v₆₄: 1.1800 m³/kg,
    • R̄₆₄: (8.3145 ± 1.5e-05 kJ/K/kmol),
    • Ma₆₄: 1.0333 –,
    • ṁ₆₄: 3.4560 kg/s, etc...
  • Automatic re-tagging, through Julia's multiple dispatch system, such as:
    • u + P * v --> h,
    • u - T * s --> a,
    • (P * v) / (R * T) --> Z, and the like;
  • Thermodynamic bases, such as:
    • MA (mass),
    • MO (molar), etc... ones;
  • Automatic re-basing, such as:
    • u * m --> U,
    • R̄ / M --> R,
    • ṁ * q --> Q̇, etc..., and
  • Exports an abstract type hyerarchy so as to provide hooks for thermodynamic models of heat capacity, pure substance (by equation of state, or EoS), mixtures, etc... such as the IdealGasLib.jl.

For additional information and examples, please refer to the package's documentation.

Author

Prof. C. Naaktgeboren, PhD. Lattes.

Federal University of Technology, Paraná (site), Guarapuava Campus.

NaaktgeborenC <dot!> PhD {at!} gmail [dot!] com

License

This project is licensed under the MIT license.

Citations

How to cite this project:

@Misc{2022-NaaktgeborenC-EngThermBase,
  author       = {C. Naaktgeboren},
  title        = {{EngThermBase.jl} -- Basic definitions for Engineering Thermodynamics in Julia},
  howpublished = {Online},
  year         = {2022},
  journal      = {GitHub repository},
  publisher    = {GitHub},
  url          = {https://github.com/JEngTherm/EngThermBase.jl},
}

Used By Packages

No packages found.