Skip to main content

THEMIS All-Sky Imager Raw PGM Data Readfile

Github Actions - Tests PyPI version MIT license PyPI Python versions

Python library for reading THEMIS All-Sky Imager (ASI) stream0 raw PGM-file data. The data can be found at https://data.phys.ucalgary.ca or http://themis.igpp.ucla.edu/index.shtml.

Supported Datasets

  • THEMIS ASI raw: stream0 PGM files

Installation

The themis-imager-readfile library is available on PyPI:

$ python3 -m pip install themis-imager-readfile

Supported Python Versions

themis-imager-readfile officially supports Python 3.8+.

Examples

Example Python notebooks can be found in the "examples" directory. Further, some examples can be found in the "Usage" section below.

Usage

Import the library using import themis_imager_readfile

Read a single file

>>> import themis_imager_readfile
>>> filename = "path/to/data/2020/01/01/atha_themis02/ut06/20200101_0600_atha_themis02_full.pgm.gz"
>>> img, meta, problematic_files = themis_imager_readfile.read(filename)

Read multiple files

>>> import themis_imager_readfile, glob
>>> file_list = glob.glob("path/to/files/2020/01/01/atha_themis02/ut06/*full.pgm*")
>>> img, meta, problematic_files = themis_imager_readfile.read(file_list)

Read using multiple worker processes

>>> import themis_imager_readfile, glob
>>> file_list = glob.glob("path/to/files/2020/01/01/atha_themis02/ut06/*full.pgm*")
>>> img, meta, problematic_files = themis_imager_readfile.read(file_list, workers=4)

Read with no output

>>> import themis_imager_readfile, glob
>>> file_list = glob.glob("path/to/files/2020/01/01/atha_themis02/ut06/*full.pgm*")
>>> img, meta, problematic_files = themis_imager_readfile.read(file_list, workers=4, quiet=True)

Read only the first frame of each file

>>> import themis_imager_readfile, glob
>>> file_list = glob.glob("path/to/files/2020/01/01/atha_themis02/ut06/*full.pgm*")
>>> img, meta, problematic_files = themis_imager_readfile.read(file_list, first_frame=True)

Exclude reading the metadata

>>> import themis_imager_readfile, glob
>>> file_list = glob.glob("path/to/files/2020/01/01/atha_themis02/ut06/*full.pgm*")
>>> img, meta, problematic_files = themis_imager_readfile.read(file_list, no_metadata=True)

Multiprocessing Notes

If you receive error messages about multiprocessing, be sure that your code is wrapped in a main() method. This usually resolves the issue. One example implementation is:

import themis_imager_readfile

def main():
    filename = "path/to/data/2020/01/01/atha_themis02/ut06/20200101_0600_atha_themis02_full.pgm.gz"
    img, meta, problematic_files = themis_imager_readfile.read(filename)

if (__name__ == "__main__"):
    main()

Development

Clone the repository and install dependencies using Poetry.

$ git clone https://github.com/ucalgary-aurora/themis-imager-readfile.git
$ cd themis-imager-readfile/python
$ make install

Testing

$ make test
[ or do each test separately ]
$ make test-flake8
$ make test-pylint
$ make test-pytest

Release files for themis-imager-readfile 1.4.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for themis-imager-readfile 1.4.1
File Size Uploaded
themis_imager_readfile-1.4.1.tar.gz 6.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for themis-imager-readfile 1.4.1
File Interpreter ABI Platform
themis_imager_readfile-1.4.1-py3-none-any.whl Python 3 none any Details

Total release size: 12.7 kB

Release files / themis_imager_readfile-1.4.1.tar.gz

Download URL themis_imager_readfile-1.4.1.tar.gz
Size 6.2 kB
Tags Source
SHA-256 checksum
How to use checksums
5b10eb26b9c334d1781c511bf55695266f7f86d199f9345e900a1ce2ccd94545
BLAKE2b-256 checksum
How to use checksums
3d32d5eca14662068c92e6c93fd1d8159021584d6974a548b4f1deaf990fa9ce
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.7.1 CPython/3.11.7 Linux/6.2.0-39-generic

Release files / themis_imager_readfile-1.4.1-py3-none-any.whl

Download URL themis_imager_readfile-1.4.1-py3-none-any.whl
Size 6.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
02f49ef33727cdbc27c78b85e125337028994d05934243e2f15d4a7555ac7f16
BLAKE2b-256 checksum
How to use checksums
7f13999f4c1f249891b94dd58cbbb7d210f4e858b062840b97d7759a264f907d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.7.1 CPython/3.11.7 Linux/6.2.0-39-generic

Release history Release notifications | RSS feed

This release

1.4.1 This release

2 release files

1.4.0

2 release files

1.3.0

2 release files

1.2.3

2 release files

1.2.2

2 release files

1.2.1

2 release files

1.2.0

2 release files

1.1.4

2 release files

1.1.3

2 release files

1.1.2

2 release files

1.1.1

2 release files

1.1.0

2 release files

1.0.11

2 release files

1.0.10

2 release files

1.0.9

2 release files

1.0.8

2 release files

1.0.7

2 release files

1.0.6

2 release files

1.0.5

2 release files

1.0.4

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page