Skip to main content

A program to output data in the Thermo Galactic SPC file format.

Project description

SPyC_Writer

A writer for the Thermo Galactic SPC file format, widely used in Thermo Scientific GRAMS and other applications, written in Python.

The only outside library used is numpy. The remainder of libraries used all come from the python standard library. Other outside libraries are used for testing, but the core module does not use them. Use Python 3.10+.

The module has been cross-validated using https://github.com/rohanisaac/spc and spectragryph by parsing the output file and verifying it matches what is expected.

Validation has been done on Y, XY, XYYY, and XYXYXY file types. All instances were successfully parsed.

Wiley's Know It All was also used for validating. It successfully parsed all formats except XYXYXY, which it states is invalid.

Tests

Tests are written using pytest and verified using https://github.com/rohanisaac/spc. This package appears to not have been updated in a while and contains a few errors, but it provides a straight forward interface in python for verifying parsing.

To-Do

  • Widen support for other SPC aspects that are currently listed as unsupported
    • Allow old file format
    • Provide option for not writing as IEEE float
    • etc.
  • Troubleshoot why KIA considers XYXYXY formats invalid
  • Expand tests
  • Expand input validation and provide informative error messages for wrong input

References

The Thermo Galactic spc-sdk code:

The newer format specification document:

The older format specification document (has greater detail in parts than newer doc):

Changelog

  • 2024-12-16 1.0.1
    • adjusted data validation to shape instead of size
  • 2023-10-02 1.0.0
    • fixed for Python 3.11
  • 2022-12-05 0.2.0
    • published to PyPi
  • 2022-06-06 0.1.0
    • initial version

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

spyc_writer-1.0.1.tar.gz (15.9 kB view details)

Uploaded Source

Built Distribution

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

spyc_writer-1.0.1-py2.py3-none-any.whl (15.2 kB view details)

Uploaded Python 2Python 3

File details

Details for the file spyc_writer-1.0.1.tar.gz.

File metadata

  • Download URL: spyc_writer-1.0.1.tar.gz
  • Upload date:
  • Size: 15.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.31.0

File hashes

Hashes for spyc_writer-1.0.1.tar.gz
Algorithm Hash digest
SHA256 1669b371cbb205f755eaf2feed8039393656ad136721b4ab67c9952e1c97dc82
MD5 4f808ed0776628fd42a8efc9b9669892
BLAKE2b-256 acd6ecd44f4689729b000957d7723bc7fe7dbcccb54282cace210958f4a1c193

See more details on using hashes here.

File details

Details for the file spyc_writer-1.0.1-py2.py3-none-any.whl.

File metadata

  • Download URL: spyc_writer-1.0.1-py2.py3-none-any.whl
  • Upload date:
  • Size: 15.2 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.31.0

File hashes

Hashes for spyc_writer-1.0.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 13534e90d6ee60d2055bde21d12f7dc0549d5f5b4775356d46a9f483bf120775
MD5 9f08ed036f104ebe6ec54f96490dfb1d
BLAKE2b-256 d47345c2ce14de2255c33b6c09839777aea09eff84a53333348b235c447b151d

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