Skip to content

Commit 6e8f4a3

Browse files
committed
Update changes docs from GitHub release doc
1 parent 9669177 commit 6e8f4a3

File tree

2 files changed

+136
-38
lines changed

2 files changed

+136
-38
lines changed

CHANGES_McStas

Lines changed: 68 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,54 @@
6464
* It gives a 'changes' list from the beginning of the project
6565
*
6666
*******************************************************************************/
67-
Changes in McStas/McXtrace 3.6.0, December 12th, 2025
67+
## What's Changed - Main Highlights:
68+
69+
### Overall release focus:
70+
* Code quality improvements: Suppression of warnings from c-compilers and our static code analysis tool `cppcheck`
71+
* Continuous integration improvement: Any change in instrument/component code is tested via GitHub CI features
72+
73+
### New tool features / capabilities:
74+
* `mcrun/mxrun` simulation launch tool: (@willend)
75+
* Scans can be parallelised at the "step number" level, use `--scan_split`. Contribution from @Lomholy.
76+
* If installed, `cppcheck` can be used to perform static code analysis on the generated code, use `-C/--c-lint?`
77+
* Improved string-handling in input parameters, e.g. in use with `NCrystal` config strings. Contribution from @tkittel.
78+
* `mcplot/mxplot` simulation plot tools: (@willend)
79+
* Better support for 'intermediate saves' done via `kill -USR2` or `Progress_bar`, and plots should work on an unfinished simulation.
80+
* Plotting a completed simulation with 'intermediate saves' will give you **latest** plot version in the 2D case and **multiple, overplotted** curves in the 1D case
81+
* The `mcplot-matlab/mxplot-matlab` tool is back. You need to manually install either Matlab or Octave to make use of this
82+
* `mcdisplay/mxdisplay` instrument visualisation tools: (@willend)
83+
* On `conda`-based installations, the `mcdisplay-cad/mxdisplay-cad` tool includes the `cadquery` dependency. On completion of building the model, the OS is asked to handle the resulting CAD model.
84+
* The `mcdisplay-matlab/mxdisplay-matlab` tool is back. You need to manually install either Matlab or Octave to make use of this
85+
* For better integration with McStasScript, the `mcdisplay-webgl-classic/mxdisplay-webgl-classic` is used in such scenarios
86+
* The 'newer/fancy' `mcdisplay-webgl/mxdisplay-webgl` based on `THREE.js`, `react` and other javascript requires a slightly time-consuming installation process on 1st launch. The user now gets an info box about this.
87+
* The McStas-specific `mcdisplay-mantid` IDF generator tool received a bug fix for OFF geometry detectors.
88+
* `mcdoc/mxdoc` documentation tool: (@willend)
89+
* Higher quality / more complete comp/instr doc pages
90+
* `mctest/mxtest` test tool: (@willend)
91+
* Easier to use locally for component/instrument developers
92+
93+
### Components and instruments:
94+
#### McXtrace:
95+
* The `Fluorescence` components have a new flag to enhance statistics/signal from low concentration materials. Work by @farhi.
96+
#### McStas:
97+
* The `Union` subsystem now handles 'surface physics' with the introduction of a system of refraction/reflection processes on geometry surfaces. Work by @mads-bertelsen.
98+
* The `Union` subsystem now has a functional 3D-mesh system (`Union_mesh`) that supports CAD style geometries. (Ascii/binary STL files and OFF files are supported. - For now only those with triangular meshing.) Work by @Lomholy.
99+
* As part of the overall code-quality improvement process, various aspects of the `Union` subsystem have been tested / improved / revised. Contributions by @tkittel and @willend in close collaboration with @mads-bertelsen.
100+
* New ISIS-related instrument files, components and data:
101+
* `ISIS_LET` by Ross Stewart and Rob Bewley, serves as test-instrument for `Commodus_I3` (ISIS source model - corresponds to `ViewModISIS` with a different parameter interface)
102+
* Updated / larger set of input files for the ISIS moderator components
103+
* `Multilayer_sample` from Rob Dalgliesh was updated with `nrepeats` which allows to repeat an SLD material stack. `ISIS_CRISP` was updated to include this feature.
104+
* `TOF_PSDmonitor_toQ` is a new component with built-in data reduction from Rob Dalgliesh. Uses ToF to calculate Q. `Test_TOF_PSDmonitor_toQ` is a basic instrument to showcase the component.
105+
* Several of the basic McStas sample components received a systematic validation against analytical methods, thanks to @Lomholy with help from KU/NBI students.
106+
* As part of the overall code-quality improvement process, the whole component / instrument base got a BIG overhaul as such (@willend)
107+
108+
### Platform support:
109+
* The Windows/`conda` platform which uses the `MSVC` compiler is now **fully** functional for all McStas code and a good part of the McXtrace code. As part of this process a new header-file `mccode-complex-lib.h` should be used by all code requiring complex numbers. (Implements functions for e.g. `+-*/` operations across platforms - MSVC does not self implement these operations...) @willend
110+
111+
112+
## What's Changed - Details:
113+
114+
### Common changes to McStas and McXtrace
68115

69116
* Code quality improvements
70117
* Remove compiler warnings by @willend in https://github.com/mccode-dev/McCode/pull/2088
@@ -83,30 +130,30 @@ Changes in McStas/McXtrace 3.6.0, December 12th, 2025
83130
* Fixes for parameter quoting issues by @tkittel in https://github.com/mccode-dev/McCode/pull/2151
84131
* mcgui:
85132
* Fixes for parameter quoting issues by @tkittel in https://github.com/mccode-dev/McCode/pull/2151
86-
* mctest:
87-
* Implement 'cppcheck' linting support on Unix, use `mctest --lint`
88-
* Update mctest with log of attained test value if test ran by @willend in https://github.com/mccode-dev/McCode/pull/2161
89-
* Add --local=DIR input to mctest, will test instruments from that folder instead of 'system' by @willend in https://github.com/mccode-dev/McCode/pull/2221
90-
* Add mctest feature to filter tested instruments by use of given COMP by @willend in https://github.com/mccode-dev/McCode/pull/2236
133+
* mcplot:
134+
* Use multiple # Data entries in output files if -USR2 is used for intermediate saves by @willend in https://github.com/mccode-dev/McCode/pull/2181
135+
* mcplot plot only last # Data block in files with multiple entries by @willend in https://github.com/mccode-dev/McCode/pull/2182
136+
* Bring back mcplot-matlab/octave by @willend in https://github.com/mccode-dev/McCode/pull/2256
137+
* Correct visualisation artefacts in Matlab/multiline mcdisplay by @willend in https://github.com/mccode-dev/McCode/pull/2257
91138
* mcdisplay:
92139
* Let mcdisplay-webgl and -classic honour -d directory by @willend in https://github.com/mccode-dev/McCode/pull/2093
93140
* mcdisplay-webgl 1st run notice (wait until node.js install is done) @willend in https://github.com/mccode-dev/McCode/pull/2140
94141
* Bring back mcdisplay-matlab/octave by @willend in https://github.com/mccode-dev/McCode/pull/2256
95142
* Correct visualisation artefacts in Matlab/multiline mcdisplay by @willend in https://github.com/mccode-dev/McCode/pull/2257
96143
* Minor tool improvements: mcdisplay-cad by @willend in https://github.com/mccode-dev/McCode/pull/2258
97-
* mcplot:
98-
* Use multiple # Data entries in output files if -USR2 is used for intermediate saves by @willend in https://github.com/mccode-dev/McCode/pull/2181
99-
* mcplot plot only last # Data block in files with multiple entries by @willend in https://github.com/mccode-dev/McCode/pull/2182
100-
* Bring back mcplot-matlab/octave by @willend in https://github.com/mccode-dev/McCode/pull/2256
101-
* Correct visualisation artefacts in Matlab/multiline mcdisplay by @willend in https://github.com/mccode-dev/McCode/pull/2257
102-
* mcdoc:
103-
* mcdoc is now more tolerant to e.g. missing asterisks in header by @willend in https://github.com/mccode-dev/McCode/pull/2121
104-
* mcdoc fills in "short description" if not found by parsing by @willend in https://github.com/mccode-dev/McCode/pull/2123
105-
* Improve clarity of mcdoc Generate buttion and clipboard by @willend in https://github.com/mccode-dev/McCode/pull/2141
106-
* Allow mcdoc to work with --dir . by @willend in https://github.com/mccode-dev/McCode/pull/2147
107-
* Bugfix to filtered search https://github.com/mccode-dev/McCode/pull/2148
108-
* Fix mcdoc for single-file search (e.g. BNL_H8.instr) by @willend in https://github.com/mccode-dev/McCode/pull/2166
109-
* Mcdoc patch, tolerate missing ^* in header description / parameters by @willend in https://github.com/mccode-dev/McCode/pull/2179
144+
* mcdoc:
145+
* mcdoc is now more tolerant to e.g. missing asterisks in header by @willend in https://github.com/mccode-dev/McCode/pull/2121
146+
* mcdoc fills in "short description" if not found by parsing by @willend in https://github.com/mccode-dev/McCode/pull/2123
147+
* Improve clarity of mcdoc Generate buttion and clipboard by @willend in https://github.com/mccode-dev/McCode/pull/2141
148+
* Allow mcdoc to work with --dir . by @willend in https://github.com/mccode-dev/McCode/pull/2147
149+
* Bugfix to filtered search https://github.com/mccode-dev/McCode/pull/2148
150+
* Fix mcdoc for single-file search (e.g. BNL_H8.instr) by @willend in https://github.com/mccode-dev/McCode/pull/2166
151+
* Mcdoc patch, tolerate missing ^* in header description / parameters by @willend in https://github.com/mccode-dev/McCode/pull/2179
152+
* mctest:
153+
* Implement 'cppcheck' linting support on Unix, use `mctest --lint`
154+
* Update mctest with log of attained test value by @willend in https://github.com/mccode-dev/McCode/pull/2161
155+
* Add --local=DIR input to mctest, will test instruments from that folder instead of 'system' by @willend in https://github.com/mccode-dev/McCode/pull/2221
156+
* Add mctest feature to filter tested instruments by use of given COMP by @willend in https://github.com/mccode-dev/McCode/pull/2236
110157
* Code generator/Grammar/runtime libs:
111158
* Let `-pygen` generated McStasScript code propose using `mcdisplay-webgl-classic` in Jupyter by @willend in https://github.com/mccode-dev/McCode/pull/2091
112159
* Common work on McStas / McXtrace components
@@ -152,6 +199,8 @@ Changes in McStas/McXtrace 3.6.0, December 12th, 2025
152199
* New test/devel tool to build McCode in a conda env by @willend in https://github.com/mccode-dev/McCode/pull/2106, https://github.com/mccode-dev/McCode/pull/2160, @tkittel in https://github.com/mccode-dev/McCode/pull/2155,
153200
* New PR template by @willend in https://github.com/mccode-dev/McCode/pull/2129, https://github.com/mccode-dev/McCode/pull/2130, https://github.com/mccode-dev/McCode/pull/2131, https://github.com/mccode-dev/McCode/pull/2132, https://github.com/mccode-dev/McCode/pull/2133, https://github.com/mccode-dev/McCode/pull/2134, https://github.com/mccode-dev/McCode/pull/2138, @tkittel in https://github.com/mccode-dev/McCode/pull/2176
154201

202+
### Behind the scenes:
203+
155204
* Deployment and CI
156205
* The 'autobuild' workflows automatically build non-conda packages for McStas and McXtrace on any new release tag by @willend in https://github.com/mccode-dev/McCode/pull/2079
157206
* Automated testing of modified instrs/comps by @willend in https://github.com/mccode-dev/McCode/pull/2100, https://github.com/mccode-dev/McCode/pull/2101, https://github.com/mccode-dev/McCode/pull/2102

0 commit comments

Comments
 (0)