Skip to main content

nxtomo

The goal of the nxtomo project is to provide a powerful and user-friendly API to create, edit or read NXtomo application definition files.

pip install nxtomo

Add the optional extras when you need documentation or development tooling:

pip install nxtomo[doc,test]

Quick Start

Create a minimal NXtomo scan, populate detector data, and save it to disk:

import numpy as np
from pint import get_application_registry

from nxtomo.application.nxtomo import NXtomo
from nxtomo.nxobject.nxdetector import ImageKey

ureg = get_application_registry()

nx = NXtomo()
nx.title = "Demo scan"
nx.instrument.beam.incident_energy = 18 * ureg.keV

n_frames = 180
nx.instrument.detector.data = np.random.rand(n_frames, 64, 64).astype(np.float32)
nx.instrument.detector.image_key_control = np.full(
    n_frames, ImageKey.PROJECTION.value, dtype=np.uint8
)
nx.sample.rotation_angle = (
    np.linspace(0.0, 180.0, n_frames, endpoint=False) * ureg.degree
)

output_file = "demo_scan.nx"
nx.save(output_file, data_path="/entry0000")

loaded = NXtomo().load(output_file, data_path="/entry0000")
print(f"Energy: {loaded.energy}, Rotation angles: {loaded.sample.rotation_angle}")

Explore additional workflows in the tutorials, such as splitting large acquisitions or working with TIFF backends.

Documentation and Support

Contributing

Contributions and feedback are welcome. Please open an issue or submit a merge request on GitLab. See the development guide in doc/development for details on setting up a local environment and running the test suite.

License

nxtomo is released under the MIT License. See LICENSE for the full text.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nxtomo-3.1.1.tar.gz (76.6 kB view details)

Uploaded Source

Built Distribution

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

nxtomo-3.1.1-py3-none-any.whl (92.7 kB view details)

Uploaded Python 3

File details

Details for the file nxtomo-3.1.1.tar.gz.

File metadata

  • Download URL: nxtomo-3.1.1.tar.gz
  • Upload date:
  • Size: 76.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.10

File hashes

Hashes for nxtomo-3.1.1.tar.gz
Algorithm Hash digest
SHA256 c6d6e27a58c436b449157ff0be57a1c90a0cb5200e1cff273017080c177bd7dc
MD5 e05d3fc563b2d1ffb2b769cbc40304d3
BLAKE2b-256 ff95106db349803cfbaacd76259898d04a814b86bfe5a6e6f6961a1871db94f6

See more details on using hashes here.

File details

Details for the file nxtomo-3.1.1-py3-none-any.whl.

File metadata

  • Download URL: nxtomo-3.1.1-py3-none-any.whl
  • Upload date:
  • Size: 92.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.10

File hashes

Hashes for nxtomo-3.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 4360457fa6454c75ad72560fe112f72a72f7c348f0ffea6d9deb5c2379ab6ed6
MD5 41ef20149c563996e4b8bfca41ad2cbf
BLAKE2b-256 2746da3f5233d7e5a16a49f21f6e27cd821d78ea717f755061dae0ff10dbac25

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

3.1.1

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page