Skip to main content

Calculate Raman spectra from first-principles calculations.

Project description


PyPI - Version python Tests Coverage Documentation Status License: MIT

About

Ramannoodle is a Python API for efficiently calculating Raman spectra from first principles calculations. Ramannoodle supports molecular-dynamics- and phonon-based Raman calculations. It includes interfaces with VASP but can easily be used with other codes using IO from external libraries, such as pymatgen or ase.

Ramannoodle aims to be:

  1. EFFICIENT

    Ramannoodle provides PolarizabilityModel's to reduce the required number of first-principles polarizability calculations.

  2. FLEXIBLE

    Ramannoodle provides a simple, object-oriented API that makes calculations a breeze while offering plenty of flexibility to carry out advanced analyses and add new functionality.

  3. TRANSPARENT

    Ramannoodle is designed to give the user a good understanding of what is being calculated at varying levels of abstraction.

Installation

The base version of ramannoodle can be installed with pip:

$ pip install ramannoodle

Ramannoodle's machine learning modules are implemented with PyTorch. To use these modules:

  1. Install PyTorch.
  2. Install torch-scatter and torch-sparse corresponding to the PyTorch version/implementation.
  3. Install ramannoodle using the torch options group.

For example, installation on a Linux system using PyTorch 2.4.1 (cpu implementation) is done as follows:

$ pip install torch==2.4.1+cpu --index-url https://download.pytorch.org/whl/cpu
$ pip install torch-scatter torch-sparse -f https://data.pyg.org/whl/torch-2.4.0+cpu.html
$ pip install ramannoodle[torch]

Documentation

https://ramannoodle.readthedocs.io/

Contributing

Contributions in the form of bug reports, feature suggestions, and pull requests are always welcome! Those contributing code should check out the dev guide.

Citing

To acknowledge use of ramannoodle, please cite

Rapid Characterization of Point Defects in Solid-State Ion Conductors Using Raman Spectroscopy, Machine-Learning Force Fields, and Atomic Raman Tensors
W. O’Leary, M. Grumet, W. Kaiser, T. Bučko, J.L.M. Rupp, D.A. Egger
Journal of the American Chemical Society (2024)
doi: 10.1021/jacs.4c07812

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

ramannoodle-0.4.0.tar.gz (44.8 kB view details)

Uploaded Source

Built Distribution

ramannoodle-0.4.0-py3-none-any.whl (59.1 kB view details)

Uploaded Python 3

File details

Details for the file ramannoodle-0.4.0.tar.gz.

File metadata

  • Download URL: ramannoodle-0.4.0.tar.gz
  • Upload date:
  • Size: 44.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for ramannoodle-0.4.0.tar.gz
Algorithm Hash digest
SHA256 76c7d26ce5ac02efe2dbcd4384627aa2cfc3bf59a9595fe1ee54e9ca3a0ed5db
MD5 a93b3b9fa0dd11c185a3be13186d714a
BLAKE2b-256 943cd270cbbe0c476161db23987513455cef0004673cda4f2538d059cf8ab85d

See more details on using hashes here.

File details

Details for the file ramannoodle-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: ramannoodle-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 59.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for ramannoodle-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0eb19b3c73bfc2f654c45b6634ab5f0a709836dc6528d9bcd1696215fc23dabd
MD5 62ab54ccab2234c1eed392cad30f9823
BLAKE2b-256 2327009253968297992548b7823daac42cf23ba502949dbdf045e296ae77dd30

See more details on using hashes here.

Supported by

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