Skip to main content

A pynxtools reader plugin for transferring Raman data from vendor formats to NeXus and NOMAD.

Project description

Ruff DOI

pynxtools-raman: A pynxtools reader for Raman data

A pynxtools reader plugin for transferring Raman data from vendor formats to NeXus and NOMAD.

+This pynxtools plugin was generated with cookiecutter using the pynxtools-plugin-template template.

Installation

It is recommended to use python 3.12 with a dedicated virtual environment for this package. Learn how to manage python versions and virtual environments.

This package is a reader plugin for pynxtools and should be installed together with pynxtools:

uv pip install pynxtools[raman]

Purpose

This reader plugin for pynxtools is used to translate diverse file formats from the scientific community and technology partners within the field of raman into a standardized representation using the NeXus application definition NXraman.

Step-by-Step Example

You see three Folders:

  • examples: contains example datasets to show how the data conversion is done (currently one example from WITec and one example from the Raman Open Database)
  • tests: contains a test procedure and files, which are required for software development
  • src/pynxtools_raman: source files, which contain the sub-reader function for Raman experiments. This only works in combination with the Python package pynxtools. This is a specialization of the Multiformat Reader. There are also sub-reader functions for a WITec device and files from the Raman Open Database. In addition, config.json files are located in src/pynxtools_raman/config. These are necessary to map the input data via the MultiformatReader to the NeXus concepts. These config files allow individual adjustments, as different laboratories may have different electronic lab notebook structures.

Perform a data conversion

for the WITec dataset via:

dataconverter examples/witec/txt/eln_data.yaml examples/witec/txt/Si-wafer-Raman-Spectrum-1.txt src/pynxtools_raman/config/config_file_witec.json --reader raman --nxdl NXraman --output new_witec_example_nexus.nxs

and for the Raman Open Database dataset set via:

dataconverter examples/database/rod/rod_file_1000679.rod src/pynxtools_raman/config/config_file_rod.json --reader raman --nxdl NXraman --output new_rod_example_nexus.nxs

For Example for the Raman Open Database command:

  • You assign the reader name via --reader raman.
  • You assign the NeXus application definition, on which the output will be based via --nxdl NXraman.
  • You specify the name and path of the output file via --output new_rod_example_nexus.nxs.
  • You assign an individualized config file via src/pynxtools_raman/config/config_file_rod.json. The config file is detected by its extension .json.
  • You give the file which includes the meta and measurement data via examples/database/rod/rod_file_1000679.rod. The parser is specified to detect the .rod file, and handle the content appropriately.

Then you can inspect the generated file at this website or in VScode via the extension "H5web".

Docs

More information about this pynxtools plugin is available in the documentation. You will find information about getting started, how-to guides, the supported file formats, how to get involved, and much more there.

Contact person in FAIRmat for this reader

Lukas Pielsticker

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

pynxtools_raman-0.1.3.tar.gz (20.1 kB view details)

Uploaded Source

Built Distribution

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

pynxtools_raman-0.1.3-py3-none-any.whl (28.0 kB view details)

Uploaded Python 3

File details

Details for the file pynxtools_raman-0.1.3.tar.gz.

File metadata

  • Download URL: pynxtools_raman-0.1.3.tar.gz
  • Upload date:
  • Size: 20.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pynxtools_raman-0.1.3.tar.gz
Algorithm Hash digest
SHA256 a021192e72929d4d3ffb058b8af0e9de8a011aa5a813ec44700ac241dd9a79ef
MD5 bcdcc3b2719e8eaaa410019653435dc5
BLAKE2b-256 18baa670d5e224aca8afb8834463ee255ba342a92ea19ea0f75a4efcc5bb2c09

See more details on using hashes here.

Provenance

The following attestation bundles were made for pynxtools_raman-0.1.3.tar.gz:

Publisher: publish.yml on FAIRmat-NFDI/pynxtools-raman

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

File details

Details for the file pynxtools_raman-0.1.3-py3-none-any.whl.

File metadata

File hashes

Hashes for pynxtools_raman-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 278f0c8c6161f125be5b0db0f40b00830eb49db97879f5ebbfa192cd8320beec
MD5 5268c3e3867eeaf7fa9d3b64836691f2
BLAKE2b-256 5219b165a082e46afb2d6a14ee92942d7ce94144481cc921a2040f4292ea7fd7

See more details on using hashes here.

Provenance

The following attestation bundles were made for pynxtools_raman-0.1.3-py3-none-any.whl:

Publisher: publish.yml on FAIRmat-NFDI/pynxtools-raman

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