Skip to main content

Prony series identification for linear viscoelastic material models.

Project description

pyvisco

Pyvisco is a Python library that supports the identification of Prony series parameters for Generalized Maxwell models describing linear viscoelastic materials.

Overview

The mechanical response of linear viscoelastic materials is often described with Generalized Maxwell models. The necessary material model parameters are typically identified by fitting a Prony series to the experimental measurement data in either the frequency-domain (via Dynamic Mechanical Thermal Analysis) or time-domain (via relaxation measurements). Pyvisco performs the necessary data processing of the experimental measurements, mathematical operations, and curve-fitting routines to identify the Prony series parameters. The experimental data can be provided as raw measurement sets at different temperatures or as pre-processed master curves.

  • If raw measurement data are provided, the time-temperature superposition principle is applied to create a master curve and obtain the shift functions prior to the Prony series parameters identification.

  • If master curves are provided, the shift procedure can be skipped, and the Prony series parameters identified directly.

An optional minimization routine is provided to reduce the number of Prony elements. This routine is helpful for Finite Element simulations where reducing the computational complexity of the linear viscoelastic material models can shorten the simulation time.

Usage

The easiest way of using pyvisco is through an interactive Jupyter notebook that provides a graphical user interface to upload the experimental data, perform the curve fitting procedure, and download the obtained Prony series parameters. Currently, the Jupyter notebook is rendered with voila and can be accessed through binder. Click the link below to start the web application.

badge

Alternatively, pyvisco can be installed automatically into Python from PyPI using the command line:

pip install pyvisco

A full API documentation is available at: Documentation Status Additionally, the verification subfolder contains example Jupyter notebooks on how to use the library.

Verification

The Python implementation was verified by comparing the obtained Prony series parameters with the curve fitting routine implemented in the commercial software package ANSYS APDL 2020 R1. Jupyter notebooks showcasing the comparison and supplementary files can be found in the verification subfolder.

Citation

If you are using pyvisco in your published work, please use the following along with the version number and the specific DOI coresponding to that version from Zenodo: DOI.

APA

Springer, Martin (2022). PYVISCO: A Python library for identifying Prony series parameters of linear viscoelastic materials (Version {insert version}) [Computer software]. doi:{insert DOI}

BibTeX

@software{Springer_pyvisco_2022,
  author = {Springer, Martin},
  doi = {insert DOI},
  title = {{PYVISCO: A Python library for identifying Prony series parameters of linear viscoelastic materials}},
  url = {https://github.com/NatLabRockies/pyvisco},
  version = {insert version},
  year = {2022}
}

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

pyvisco-2.0.0.tar.gz (3.2 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pyvisco-2.0.0-py3-none-any.whl (40.7 kB view details)

Uploaded Python 3

File details

Details for the file pyvisco-2.0.0.tar.gz.

File metadata

  • Download URL: pyvisco-2.0.0.tar.gz
  • Upload date:
  • Size: 3.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pyvisco-2.0.0.tar.gz
Algorithm Hash digest
SHA256 0e8b215d68938e044374a8ce299348e7a8e119cb4bb81cae63a142f674a8b71b
MD5 1fdba2a30e86882fb11e77234e081e24
BLAKE2b-256 3e762daa1a82c1ba1e265f95f66f849fead38af467772cc35f66b473fdbe8e98

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvisco-2.0.0.tar.gz:

Publisher: publish-to-pypi.yaml on NatLabRockies/pyvisco

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyvisco-2.0.0-py3-none-any.whl.

File metadata

  • Download URL: pyvisco-2.0.0-py3-none-any.whl
  • Upload date:
  • Size: 40.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pyvisco-2.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 fa7fd489f5c10651643e0b9d8318e663f2c5f1b9fd915a00a49aac16a5276102
MD5 ac0d840c9f231ba69c64d1e0b1734274
BLAKE2b-256 25cf8ec354f9493fb1bb59f72938d883ee2ee33da205a95a32b815794cc30206

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvisco-2.0.0-py3-none-any.whl:

Publisher: publish-to-pypi.yaml on NatLabRockies/pyvisco

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page