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.0.tar.gz (76.7 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.0-py3-none-any.whl (92.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: nxtomo-3.1.0.tar.gz
  • Upload date:
  • Size: 76.7 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.0.tar.gz
Algorithm Hash digest
SHA256 c4434c0ed6b9aeca75c6e2275950f45e459046674043a59ad545fd777802e957
MD5 677551c3494988565accf5a15e6642d4
BLAKE2b-256 f78e525791b6a9760c4483c473edf3103b6814884833b90690310170e6e02317

See more details on using hashes here.

File details

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

File metadata

  • Download URL: nxtomo-3.1.0-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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 cece26ede35b99bbeda67fd4960fecbddcf440531c58b1a913fa9f66238dce4c
MD5 ce6ed939cc82f4703353d342fcb47226
BLAKE2b-256 e802d464f7882b30a2c3d47cef801a1b532de544fbd6f43f9a7c5d56ad591c0d

See more details on using hashes here.

Release history Release notifications | RSS feed

Supported by

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