Skip to main content

A program for texture simulations.

Project description

TexTOM

TexTOM is an end-to-end Python toolbox for texture tomography, covering:

  • detector-frame integration (pyFAI),
  • projection alignment (Mumott-based workflows),
  • physical model generation (diffractlets + projectors),
  • orientation-distribution optimization,
  • post-analysis and visualization.

Documentation

Installation

Requirements

  • Python >=3.9,<3.14
  • Linux/macOS (scientific stack availability may vary by platform)

Recommended (conda/micromamba environment + pip)

conda create --name textom python=3.11
conda activate textom
conda install numpy=2.4 scipy=1.16 openblas
python -m pip install --upgrade pip
python -m pip install textom

From source (development)

git clone https://gitlab.fresnel.fr/textom/textom.git
cd textom
python -m pip install -e ".[test,docs]"

Command-line entry points

After installation:

  • textom: launches an IPython session with TexTOM API preloaded.
  • textom_config: opens textom/config.py for runtime defaults.
  • textom_documentation: opens the legacy PDF manual.

Quickstart

Inside a sample working directory:

textom

Then in the IPython session:

set_path(".")
check_state()
integrate()
align_data()
make_model()
preprocess_data()
optimize()

Typical outputs are created under:

  • analysis/ (intermediate products, models, fits),
  • data_integrated/ and optionally data_integrated_1d/,
  • results/ (derived metrics and exported artifacts).

For a complete walkthrough, follow:

  • docs/tutorials/workflow.md
  • docs/how_to_guides/setup.md
  • docs/how_to_guides/remote.md

Configuration

Use:

textom_config

Key runtime parameters in textom/config.py include thread count, GPU usage, numerical dtype, and UI behavior. Keep project-specific configs versioned when running in teams or CI.

Development

Run tests:

pytest textom/tests

Run style checks:

isort --profile black --check-only --diff textom
ruff check .
ruff format --check .

Build docs:

sphinx-build -b html docs public

Citation

If you use TexTOM in published work, cite:

Frewein, M. P. K., Mason, J., Maier, B., Colfen, H., Medjahed, A., Burghammer, M., Allain, M. & Grunewald, T. A. (2024). IUCrJ, 11, 809-820. https://doi.org/10.1107/S2052252524006547

License

MIT License. See LICENSE.

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

textom-0.7.20.tar.gz (1.9 MB view details)

Uploaded Source

Built Distribution

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

textom-0.7.20-py3-none-any.whl (2.0 MB view details)

Uploaded Python 3

File details

Details for the file textom-0.7.20.tar.gz.

File metadata

  • Download URL: textom-0.7.20.tar.gz
  • Upload date:
  • Size: 1.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for textom-0.7.20.tar.gz
Algorithm Hash digest
SHA256 dcf61a3978e062a130e8da21203a7af19eed68bb22c059511106f39b05a6be28
MD5 6ff759babada361985721acc2b96b9eb
BLAKE2b-256 c22ef2f0ed15714d9af913fa078620ba988477294e63d02a8a2da30f3af578d4

See more details on using hashes here.

File details

Details for the file textom-0.7.20-py3-none-any.whl.

File metadata

  • Download URL: textom-0.7.20-py3-none-any.whl
  • Upload date:
  • Size: 2.0 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for textom-0.7.20-py3-none-any.whl
Algorithm Hash digest
SHA256 20818d27928e3c3f58a04849869dcc6238778bfbe3246aa5ca3282fccd51db44
MD5 4610625e7b4af702ae4e8e89fea56ed6
BLAKE2b-256 b12ee47f793ed2b2e34ae7fc3e2ea657ad0bf4713394935754fcb3d8643957cb

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