Skip to main content

Suite of Python scripts for Perturbo testing and postprocessing

Project description

perturbopy - Python suite for Perturbo postprocessing and testing

This package provides utilities to postprocess and test the Perturbo code, which is an open-source software to compute from first principles the scattering processes between charge carriers (electrons and holes) and phonons, defects, and photons in solid state materials, including metals, semiconductors, oxides, and insulators. Perturbo is written in modern Fortran, including efficient MPI and OpenMP parallelization, allowing to perform calculations efficient on supercomputers using up to ~100,000 cores. Read more about the main code Perturbo here.

Perturbopy provides a user-friendly object-oriented environment to postprocess Perturbo calculations, such as band structure interpolation, electron transport, ultrafast carrier dynamics, and many more. Using Perturbopy, a user can easily load the Perturbo output files (HDF5 or YAML) into Python objects, perform calculations, and visualize data.

The second purpose of the Perturbopy package is to test the main Perturbo code. After a compilation of the Perturbo code on a new machine or after a new implementation, it is always a good practice to run the testsuite, verifying that the existing functionality was not affected, and add new test cases to ensure that the newly implemented features will be compatible with future implementations. Perturbopy, using the pytest package, provides extensive testing of Perturbo, allowing for both serial and parallel runs.

Find more about Perturbopy on its documentation website. We are open to collaboration! Please create a fork and submit a pull request with detailed description of your work, and we will be happy to discuss and include your contribution.

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

perturbopy-0.7.2.tar.gz (89.3 kB view details)

Uploaded Source

Built Distribution

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

perturbopy-0.7.2-py3-none-any.whl (106.5 kB view details)

Uploaded Python 3

File details

Details for the file perturbopy-0.7.2.tar.gz.

File metadata

  • Download URL: perturbopy-0.7.2.tar.gz
  • Upload date:
  • Size: 89.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.2

File hashes

Hashes for perturbopy-0.7.2.tar.gz
Algorithm Hash digest
SHA256 066da6f23b6004ee6f9001ca2bbfbac70423b363dde095f067dca45a65d974da
MD5 d11e9e2947f070b4aa084cc6a8f09d5f
BLAKE2b-256 da414e7038547a5c6129bc2fd5b6f303c2e0bf295e1a22fc4ecd9e2ceccad5d4

See more details on using hashes here.

File details

Details for the file perturbopy-0.7.2-py3-none-any.whl.

File metadata

  • Download URL: perturbopy-0.7.2-py3-none-any.whl
  • Upload date:
  • Size: 106.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.2

File hashes

Hashes for perturbopy-0.7.2-py3-none-any.whl
Algorithm Hash digest
SHA256 f2cb56a07a436fd1b11c29145d58c88c2df072433854837e8cf823876440dee1
MD5 36790fac6a120eaf347320cafae6ebdf
BLAKE2b-256 422c9524254401b6a01d1b2a70d108ee84870f950114e4026c8d8b691dfce7af

See more details on using hashes here.

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