Skip to main content

hermes-rheo

PyPI Downloads Python 3.10 | 3.11 | 3.12 | 3.13 Docs JOSS Code style: ruff

hermes-rheo is a Python package for reading, visualizing and processing rheological data.

It builds on the data model of piblin: instrument exports are parsed once into a common representation, so a single transformation pipeline applies regardless of the source instrument. Supporting a new instrument only requires a new file reader.

from hermes_rheo import read_file, TriosRheoReader, SplitTemperatureSweep

# Read a temperature sweep and split it into individual frequency sweeps
experiment = read_file(
    "temperature_sweep.txt",
    file_reader=TriosRheoReader,
    create_composite_datasets=True,
)

frequency_sweeps = SplitTemperatureSweep(
    n_steps=1, temp_step_interval=[5.0], temp_tolerance=1.0,
)(experiment)

Installation

pip install hermes-rheo

With uv, add it to a project or install it into a throwaway environment:

uv add hermes-rheo                                  # project dependency
uv pip install hermes-rheo                          # existing virtual environment
uvx --from hermes-rheo --with jupyterlab jupyter lab  # temporary environment

Python 3.10–3.13 is supported. Optional extras:

pip install "hermes-rheo[notebooks]"   # plotting style and video export for the tutorials
pip install "hermes-rheo[docs]"        # build the documentation
uv add "hermes-rheo[notebooks]"        # same extras with uv

pyRheo (GPL-3.0, not on PyPI) is an optional dependency used by FitModel for fractional and classical viscoelastic models. Install it separately if needed:

pip install git+https://github.com/mirandi1/pyRheo.git

For development, uv manages the environment:

git clone https://github.com/3mcloud/hermes-rheo
cd hermes-rheo
uv sync --all-extras
uv run pytest

Documentation and tutorials

The notebooks are also in tutorial_notebooks/:

# Topic
1 Reading and visualizing common rheological datasets
2 OWChirp wave design
3 Reading and visualizing OWChirp experiments
4 Time-temperature superposition
5 Time-curing superposition
6 Mutation number
7 Van Gurp–Palmen and Cole–Cole plots
8 Temperature ramp analysis
9 Kymographs (TORCh)
10 Recovery rheology
11 Rheological model fitting
12 Frequency to time relaxation modulus
13 Relaxation spectrum (pyReSpect)

File readers

Instrument / software Reader
TA Instruments TRIOS .txt TriosRheoReader
Anton Paar RheoCompass .csv RheoCompassReader

hermes_rheo.read_file selects the reader from the file extension, or takes one explicitly through file_reader=.

Exporting TRIOS files

TriosRheoReader needs the full step-header metadata (geometry, calibration, wave and step parameters). Two TRIOS export paths write it:

  • TRIOS 5 and earlier: Send To LIMS.

    TRIOS Send To LIMS export

  • TRIOS 6.0 and later: Export → To Plain Text (full)….

    TRIOS Export to Plain Text (full)

The plain To Plain Text option strips the metadata and cannot be parsed.

For other formats, write a custom reader and reuse the transforms unchanged.

Development

Bug reports and contributions are welcome through GitHub issues.

Citation

If you use hermes-rheo, please cite:

Perego, A. et al. (2025), hermes-rheo: An open-source Python package for rheological data analysis, Journal of Open Source Software. DOI 10.21105/joss.08753.

See CITATION.cff for the full metadata.

Publications using hermes-rheo:

Additional references for the implemented methods:

  • Geri, M., Keshavarz, B., Divoux, T., Clasen, C., Curtis, D. J. and McKinley, G. H., Time-resolved mechanical spectroscopy of soft materials via optimally windowed chirps, Phys. Rev. X 8, 041042 (2018). DOI: 10.1103/PhysRevX.8.041042.
  • Perego, A., Vadillo, D. C., Mills, M. J. L., Das, M. and McKinley, G. H., Evaluation of optimally windowed chirp signals in industrial rheological measurements: method development and data processing, Rheologica Acta 64, 391–406 (2025). DOI: 10.1007/s00397-025-01511-0.
  • Bonfanti, A., Kaplan, J. L., Charras, G. and Kabla, A., Fractional viscoelastic models for power-law materials, Soft Matter 16(26), 6002–6020 (2020). DOI: 10.1039/d0sm00354a.
  • Song, J., Holten-Andersen, N. and McKinley, G. H., Non-Maxwellian viscoelastic stress relaxations in soft matter, Soft Matter 19(41), 7885–7906 (2023). DOI: 10.1039/d3sm00736g.
  • Miranda-Valdez, I. Y., Niinisto, H., Makinen, T. P., Lejon, E., Koivisto, J. and Alava, M. J., pyRheo: an open-source Python package for complex rheology, Digital Discovery 4(4), 1075–1082 (2025). DOI: 10.1039/d5dd00021a.
  • Mours, M. and Winter, H. H., Time-resolved rheometry, Rheologica Acta 33(5), 385–397 (1994). DOI: 10.1007/BF00366581.

Contact

aperego@mmm.com

License

MIT

Metadata

Release files for hermes-rheo 2.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for hermes-rheo 2.0.0
File Size Uploaded
hermes_rheo-2.0.0.tar.gz 184.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for hermes-rheo 2.0.0
File Interpreter ABI Platform
hermes_rheo-2.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 397.0 kB

Release files / hermes_rheo-2.0.0.tar.gz

Download URL hermes_rheo-2.0.0.tar.gz
Size 184.8 kB
Tags Source
SHA-256 checksum
How to use checksums
d1a74f97bd2f7c2e2b0dc7679d566c0ae6ae18207e371e50f1f499717a6de83d
BLAKE2b-256 checksum
How to use checksums
28d894a8aaeb9292b8085bdb7508fb190b4a532f22a97edb02b88a1acd9f3759
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.3

Release files / hermes_rheo-2.0.0-py3-none-any.whl

Download URL hermes_rheo-2.0.0-py3-none-any.whl
Size 212.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
1fc74eb1c5fd9979d3f4775cca8eca780f75a018dfa8b767127f02965bdcfbbb
BLAKE2b-256 checksum
How to use checksums
7bc904b590da0f7834e9b4156816418e5fdef5bf97560cf0496d98e32bc03054
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.3

Release history Release notifications | RSS feed

This release

2.0.0 This release

2 release files

1.3.1

2 release files

1.3.0

2 release files

1.2.11

1 release file

1.2.8

1 release file

1.2.7

1 release file

1.2.6

1 release file

1.2.5

1 release file

1.2.3

1 release file

1.2.2

1 release file

1.2.0

1 release file

1.1.0

1 release file

1.0.13

1 release file

1.0.12

1 release file

1.0.11

1 release file

1.0.9

1 release file

1.0.8

1 release file

1.0.7

1 release file

1.0.6

1 release file

1.0.5

1 release file

1.0.4

1 release file

1.0.3

1 release file

1.0.2

1 release file

1.0.1

1 release file

1.0.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page