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 hashes)

Uploaded Source

Built Distribution

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

Uploaded Python 3

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