GitPedia
Home/kklmn/xrt/Changelog
kklmn

kklmn/xrt

Package xrt (XRayTracer) is a python software library for ray tracing and wave propagation in x-ray regime. It is primarily meant for modeling synchrotron sources, beamlines and beamline elements.

14 Releases
Latest: 1mo ago
xrt 2.0.0b1 - Beta Releasev2.0.0b1LatestPre-release
yxrmzyxrmz·1mo ago·April 27, 2026
GitHub

📦 Highlights

  • Added the visual beamline flow editor based on `qtpynodeeditor`.
  • Fixed the beam local coordinate system transform.
  • Restored static-mode operation in `xrtGlow`.
  • Restored initialization from saved Glow configuration parameters.
  • Updated `xrtGlow` scene import/export.
  • Fixed closed-surface rendering.
  • Fixed hemispheric screen rendering.
  • Fixed rendering of rays inside multi-surface optical elements.
  • + 7 more

📋 API Changes

  • `BeamLine.glow()` now accepts `mode='dynamic'` or `mode='static'`.
  • The old `v2=` argument remains temporarily supported for compatibility and emits a deprecation warning.
  • Energy-based auto-alignment for `pitch` and `bragg` now accepts unit strings, for example `pitch='8 keV'`, `bragg='8000 eV'`, or `'auto'`.
  • The older list form, such as `bragg=[8000]`, remains supported for compatibility and emits a deprecation warning.
xrt 2.0.0b0.post1v2.0.0b0.post1Pre-release
yxrmzyxrmz·4mo ago·February 11, 2026
GitHub

Packaging update for 2.0.0b0. Fixes package discovery and data file inclusion issues introduced after module restructuring. No functional changes.

Release 1.6.21.6.2
yxrmzyxrmz·4mo ago·February 6, 2026
GitHub

📋 Changes

  • Enable wave propagation for two-side OEs (lenses).
  • Minor fixes in help pages of xrtQook.
  • HyperbolicMirrorParam enabled in xrtQook
  • Fix wide angle approximation for edge radiation
xrt 2.0.0b0 — Beta releasev2.0.0b0Pre-release
yxrmzyxrmz·4mo ago·February 6, 2026
GitHub

📋 ✨ Major changes

  • 1. Dynamic object model and workflow improvements - The internal architecture has been refactored to support dynamic modification of objects across the framework:
  • Optical elements, materials, figure errors, and plots now support dynamic property updates without requiring complete reinitialization.
  • Generated beams are stored in a dictionary internally linked to optical elements.
  • Optical elements and beams are addressed by UUID, simplifying renaming and object tracking.
  • Propagation and visualization can now be executed directly from XML or JSON templates.
  • Beamlines can be imported into Qook directly from Python scripts (may fail for complex runtime logic or custom processing steps).
  • 2. Figure errors and surface modeling - Figure error handling has been significantly improved:
  • Added dedicated classes and methods for intuitive application of Figure Errors.
  • + 20 more

🧪 🧪 Testing focus

  • Feedback is particularly welcome on:
  • Dynamic modification of optical elements and figure errors
  • GUI responsiveness and rendering performance
  • Visualization propagation behavior
  • Compatibility with existing beamline scripts and workflows
  • Import of existing beamlines into Qook
  • macOS testing of xrtGlow

📦 ⚠️ Notes

  • Importing beamlines from Python scripts may not work for complex runtime logic.
  • Documentation for new workflows is still being updated.
  • For now EPICS controls are only enabled in xrtGlow session, run xrtGlow with `epicsPrefix` argument. For example:
  • `myBeamline.glow(v2=True, epicsPrefix="TESTBL:")`

📦 📦 Installation

  • `pip install xrt[all] --pre`
  • or download the wheel from the release assets and install from file:
  • `pip install --pre xrt[all] --find-links path-to-wheel/`
Release 1.6.11.6.1
kklmnkklmn·1y ago·November 13, 2024
GitHub

📋 Changes

  • Minor bug fixes.
  • Enable custom materials in xrtQook.
  • Add hyperbolic (oes.HyperbolicMirrorParam) and hyperboloid
  • Add an example for applying a slope error map to a parametric mirror
  • Major rebuild of the documentation on
  • Add in-plane rotation to :meth:`Crystal.get_amplitude_pytte()`.
  • Major update of :ref:`Tests of Materials <tests_materials>`. Add
Release 1.6.01.6.0
kklmnkklmn·2y ago·July 17, 2023
GitHub

📋 Changes

  • Enable calculations of elastically deformed crystals on GPUs. Based on PyTTE code. Used both in ray tracing and
  • Add predefined material classes in three categories: crystals, compounds and elemental. Several crystal classes also include
  • All OpenCL tasks can be run on a remote GPU server.
  • Extend the examples of 1D- and 2D-bent crystal analyzers with elastically deformed crystal reflectivity.
  • Add docs "sampling-strategies" on sampling strategies of syncrotron sources. Add an example
  • Add user classes of optical elements to xrtQook.
  • Add an example "Orbital Angular Momentum of helical undulator radiation".
  • Use python properties in OEs, screens, apertures etc. to transparently set object attributes.
  • + 1 more
Release 1.5.01.5.0
kklmnkklmn·3y ago·September 8, 2022
GitHub

See the version history at [RTFD](http://xrt.readthedocs.io/history.html#history)

Release 1.4.01.4.0
kklmnkklmn·4y ago·September 22, 2021
GitHub

Major update for the synchrotron sources module

Release 1.3.51.3.5
kklmnkklmn·5y ago·November 27, 2020
GitHub

A bug fix release. See the version history at [RTFD](http://xrt.readthedocs.io/history.html#history)

Release 1.3.41.3.4
kklmnkklmn·6y ago·May 21, 2020
GitHub

See the version history at [RTFD](http://xrt.readthedocs.io/history.html#history)

Release 1.3.31.3.3
kklmnkklmn·7y ago·March 11, 2019
GitHub

See the version history at [RTFD](http://xrt.readthedocs.io/history.html#history)

Release 1.3.21.3.2
kklmnkklmn·8y ago·June 7, 2018
GitHub

Bug fixes and minor updates.

Release 1.3.11.3.1
kklmnkklmn·8y ago·May 24, 2018
GitHub

See the version history at [RTFD](http://xrt.readthedocs.io/history.html#history)

Release 1.3.01.3.0
kklmnkklmn·8y ago·March 25, 2018
GitHub

See the version history at [RTFD](http://xrt.readthedocs.io/history.html#history)