McXtrace - Monte Carlo Xray Tracing, is a joint venture by
Our code is based on technology from
Code repository (shared with 'McStas') is located at github.com/McStasMcXtrace
For information on our progress, please subscribe to our user mailinglist..
- To download the latest release: download area
- For installation instructions :
- For a quick list of the available commands: commands
Recent McXtrace News
Migrating from McXtrace 1.x to 3.x? - Use the
wiki-based guides
September 17th, 2024: Try the new version in a binder - no
installation required
Here you may access a web-desktop with McStas and McXtrace:
Start
mxgui
from a terminal and try everything out:
Note that the session is not persistent, so using this for actual work is a bad idea. :-)
Instead you may also use the corresponding Docker container, can be run with
podman run -p 8888:8888 -p 5173:5173 docker.io/mccode/mcstas-mcxtrace
September 16th, 2024: McStas and McXtrace 3.5.1 release!
Dear all,
It is finally time for a set of new McStas and McXtrace releases: v3.5.1!
Thanks:
- Thanks to all members of the joint McStas-McXtrace team and input from our
users via emails and GitHub issues alike! Further a special thanks to
Theodor Peter Guttesen (former DTU diploma student) who has helped modernise
our 3D visualisation!
Most important changes going forward:
- From release 3.5.1 McStas and McXtrace are released simultaneously and with
the same versioning (meaning that McXtrace takes a jump from 3.2 up to 3.5)
- With release 3.5.1 we are officially dropping support for the "legacy"
McStas 2.7.2 release and the "legacy" McXtrace 1.7.1 release.
- To minimize work required for platform support and builds, we are now focusing
on fewer platforms:
- Debian packages at packages.mccode.org are provided for x86_64 and arm64 Linux
(Thanks to the work of Emmanuel Farhi and his team at SOLEIL, official Debian
packages are already available in Debian Testing and Unstable
(see https://tracker.debian.org/pkg/mccode) and should become
widely available with next Debian Stable, after which we might drop our "own
channel").
- conda-forge is to become our distribution channel for "everything else", meaning
that:
- Our macOS "bundles" are effectively now self-extracting conda-installers and
REQUIRE an active internet connection during installation
- From a later release in the 3.5 series the same will be the
case for Windows
- We are dropping builds for ALL rpm-oriented platforms. Please
use conda-forge instead.
- We want to release more "early and often" going forward, see the linked CHANGES
documents under conda-forge.
Both codes have received a number of bug fixes, new models and features - and to
mention everything here would quickly become too long. But those interested in the
details are recommended to read the respective CHANGELOGs for the two codes:
One little P.s:
The transition to the new releases require a little extra, unexpected work on the
websites - so please expect a little website-documentation inconsistency for the next
week or two.
All the best from the joint
McStas-McXtrace team
[16/05/2024] (experimental) previews of the forthcoming 3.5-release
Dear all,
If you want a sneak preview at the forthcoming 3.5-release (see
below for explanation of version-"jump"), we recommend you
to try either
- Our conda-forge packages
(NB: The Windows version of the package does not include MCPL and NCrystal yet)
- A new set of conda-based macOS app bundles
(Based on conda-forge and should auto-download the newest conda-package plus dependencies)
- Corresponding Debian packages, Windows/MinGW package and macOS/Intel package are built on a nightly basis via GitHub action "mcxtrace-autobuild" see e.g. this latest one
(The packages are available in the "artifacts", download may require being logged in on GitHub. Somewhat confusingly, the Windows build is enclosed in the "ubuntu" artifact.)
Among the hightlights are:
- New default-
CFLAGS
(Gives improved simulation performance of ~ 30-40% when using gcc
and/or clang
on Unix platforms at the cost of 5-10% longer compile time. -
Thanks to Thomas Kittelmann for help debugging a slowdown found when using the built-in compilers on conda :-) )
- Tighter integration with McStasScript
(mcxtrace-pygen
-driven button in mcgui
directly spawns JupyterLab with a generated notebook)
- McStasScript is automatically included and configured on mac and Windows builds
- We have started organising the instrument-
examples
in a folder-structure,
allowing to distribute "more than just the instrument-file" as an example.
(Case-specific datafiles or geometry-files, c-code snippets, python scripts or McStasScript notebooks welcome - we still want new comps
to arrive in contrib
)
- New
File.comp
contribution from Greg Tucker, allows to use metadata
blocks to store input-files for components
(e.g. for a small OFF file or other datafile - then visible alongside instr
in your editor.)
- ... and we are working on freshening up certain aspects of the 3D-visualisation... ;-)
(New visualisation is not yet included in the above-mentioned packages...)
Do you have new component- or instrument-developments you would like included in next release?
- Then NOW is a good time to send them. :-) We prefer of you open a PR on GitHub but of course email-based contributions are also welcome. :-)
Finally, if you know anyone running McStas all
of the above should also work for them. And going forward, releases of
McStas and McXtrace should come in pairs with the same versioning.
[13/02/2024] Issue with anisotropic SasView models
Dear all, a bug in the 3.2 release of McXtrace has been found by one of our DTU users.
Instruments containing "anisotropic" SasView components will not compile out of the box, instead giving the compilation error
core_shell_cylinder:2944:43: error: expected ')'
double l0, l1, k, l_full, l, dl, d_Phi, theta;
^
which indicates a doubly-defined 'theta' symbol in the generated component-codes.
If you need / want to use one of these anisotropic models, please either
- Pick a "fresh" comp from our Git repo (https://github.com/McStasMcXtrace/McCode/tree/main/mcxtrace-comps/sasmodels)
- Edit the first line in TRACE containing
TRACE
%{
double l0, l1, k, l_full, l, dl, d_Phi, theta;
to instead read
TRACE
%{
double l0, l1, k, l_full, l, dl, d_Phi;
A fresh McXtrace release will be spun out in the spring of 2024.
2023,
2022,
2021,
2020 and older News
mailto:webmaster@mcxtrace.org
Last Modified: Tuesday, 17-Sep-2024 14:02:20 CEST