Releases: mccode-dev/McCode
Releases · mccode-dev/McCode
Update-release 3.5.26
What's Changed
Patching
- Post 3.5.24 patches by @willend in #1861
- Typo fixes from @farhi during FZJ hackathon by @willend in #1941
Feature updates
Common:
- Update rootmccode to work with new version of ROOT by @ebknudsen in #1862
- Return None in mctest if no mccode.sim was written by @willend in #1885
- Add wrapper for mc/mxdisplay-cad on Windows by @willend in #1888
- Input flag -y / --yes applies all instrument parameter default values by @willend in #1914
- Fix issue 1883 by setting mpirun --mca params by @willend in #1884
- PowderN: remove a static variable declare from SHARE section by @willend in #1945
- Add COPY SHARE to Diaphragm Slit-alias-comp + add in McXtrace by @willend in #1950
- @farhi mcgui tooltip edits from #1952 by @willend in #1953
- PowderN and SX fixes: cif2hkl now searches correctly files using Open_File/real path, and sets 'barns=1' by @farhi in #1952
- Correct implementation to use unit64_t (achieves a correct 64bit RNG also on Windows...) by @willend in #1955, #1956, #1966
McStas:
- Full adaptation of "spin-component nullification" after "spin up/down measurement" by @willend in #1886
- Allow further geometries for He3 cell component by @willend in #1915
- Contributed component Source_custom by @pablogila in #1911, #1946
- Update MCPL_input.comp by @g5t in #1924
- Comp updates from work on ESS SKADI by @willend in #1948
McXtrace:
- McXtrace: data: refactor reflec_xraydb.py: refactor by @farhi in #1897
- McXtrace: work in data/reflec_xraydb script by @farhi in #1916
- mcxtrace:powderN: Update PowderN.comp: reduce nb of printed warnings by @farhi in #1919
- McXtrace: Fluorescence handling ala PowderN by @willend in #1942
- McXtrace: samples: add Fluo+PowderN component by @farhi in #1951
CI/testing
- Expand nighty test suite to macOS and Windows by @willend in #1870
- Fix paths in mcxtrace testsuite script by @willend in #1871
- Try to run the basic test using mpich on macOS by @willend in #1873
- Enable mpi for windows in test CI by @willend in #1875
- Enable MPI, NCrystal and MCPL in windows-test-CI by @willend in #1876, @willend in #1877
- Add libnexus-dev on Ubuntu nightly test by @willend in #1878
- Correct path for mcxtrace nightly testsuite by @willend in #1879
- First stab at adding basic windows MSVC test by @tkittel in #1898
- Disable macos/openmpi in favour of macos/mpich for now by @willend in #1906
Debian packages
macOS bundle
-
MacInstall: add comment on forcing open permission with command by @farhi in #1890
-
Suppress const char in the cif2hkl fcts by
-
Suppess various warnings from msvc on Windows by @willend in #1957, #1958, #1959, #1960, #1961
-
Use MCPL 2.0 on all platforms, by @willend in #1962, #1964, #1964
New Contributors
- @pablogila made their first contribution in #1911
Full Changelog: v3.5.24...v3.5.26
v3.5.25 - incremental update before hackathon
What's Changed
- V3.5.24 release doc updates etc by @willend in #1856
- Fix typo by @willend in #1857
- Don't internally build cif2hkl by @willend in #1858
- Correct notes on MCPL and McStasScript by @willend in #1859
- No more McStasScript via pip, dammit by @willend in #1860
- Post 3.5.24 patches by @willend in #1861
- Tool folder spring cleaning by @willend in #1863
- More spring cleaning by @willend in #1864
- Shift org URLs by @willend in #1865
- Update rootmccode to work with new version of ROOT by @ebknudsen in #1862
- Add 'dtruss' on macOS in attempt to get info for #1866 by @willend in #1868
- Use macOS leaks binary for potential debug of #1866 by @willend in #1869
- A few minor commits for Install (sudo -E) and libgsl dependency. by @farhi in #1867
- Expand nighty test suite to macOS and Windows by @willend in #1870
- Fix paths in mcxtrace testsuite script by @willend in #1871
- Try to run the basic test using mpich on macOS by @willend in #1873
- NCrystal default branch was renamed from master to main by @tkittel in #1874
- Enable mpi for windows in test CI by @willend in #1875
- Enable MPI, NCrystal and MCPL in windows-test-CI by @willend in #1876
- Fixes to rectify remaining MCPL, NCrystal, gsl and xraylib by @willend in #1877
- Add libnexus-dev on Ubuntu nightly test by @willend in #1878
- Correct path for mcxtrace nightly testsuite by @willend in #1879
- Cppcheck hints by @willend in #1881
- Return to mpich on basictest by @willend in #1882
- Fix issue 1883 by setting mpirun --mca params by @willend in #1884
- Return None in mctest if no mccode.sim was written by @willend in #1885
- Full adaptation of "spin-component nullification" after "spin up/down measurement" by @willend in #1886
- Add wrapper for mc/mxdisplay-cad on Windows by @willend in #1888
- MacInstall: add comment on forcing open permission with command by @farhi in #1890
- Add component name in "segno" related Exit/Error statement by @willend in #1895
- McXtrace: data: refactor reflec_xraydb.py: refactor by @farhi in #1897
- First stab at adding basic windows MSVC test by @tkittel in #1898
- Doc correction for MCPL install-location in Windows legacy by @willend in #1900
- Restores MPIFLAGS configuration on non-windows platforms. by @willend in #1904
- Disable macos/openmpi in favour of macos/mpich for now by @willend in #1906
- 8GPU box software stack update by @willend in #1912
- Allow further geometries for He3 cell component by @willend in #1915
- McXtrace: work in data/reflec_xraydb script by @farhi in #1916
- Input flag -y / --yes applies all instrument parameter default values by @willend in #1914
Full Changelog: v3.5.24...v3.5.25
v3.5.24 Milestone with mcstas-antlr support, NCrystal on Windows
What's Changed
Important note
- McStas and McXtrace will soon change organisation-name on GitHub - from McStasMcXtrace -> mccode-dev
User interfaces and tools
- [Feature]
mcgui/mxguiLet configuration dialogue spawn yourEDITORto edit your localmccode_config.json
by @willend in #1838 (available also by--edit-user-configfrommcrun/mxrun) - [Feature]
mcrun/mxrun: New switch --cogen to allow on-demand switch to non-standard code generator.
See also interoperability withmccode-antlrbelow
by @willend in #1851 - [Feature]
mcrun/mxrunSolution for picking up code generator from PATH if not found where expected
by @willend in #1840 - [Feature] pygen minor revision: Build importable make() function and call from generic notebook
by @willend in #1827 - [Fix] Support Scintilla editor on Debian with Qt6
by @willend in #1813 - [Fix] Drop hard-coded check for PyQt5
by @willend in #1814 - [Fix] No more hidden Perl dependencies! (perl -> python 1-liner readlinkf())
by @willend in #1824 - [Fix] too-restrictive
mcdisplay/mxdisplayinstrument line parsing
by @g5t in #1834 - [Fix] Patches for
mcdisplay/mxdisplayin Windows
from @LelandWH #1853
Components and instruments
- [Fix] McStas
Vertical_bender: Add max iteration criterion for while loop (default 1000).
by @willend in #1815 - [Fix] McStas
NCrystal_sample: Remove possible out-of-bounds memory access
by @g5t in #1821 - [Fix] McStas
Elliptic_guide_gravityandPol_mirror: Minor comp revisions, suppresses compilation warnings from clang
by @willend in #1826 - [Fix] McStas
SNS_ARCS.instredits
by @willend in #1838 - [Fix] McStas
ISIS_IMAT.instrDEPENDENCY " @NEXUSFLAGS@ " added
by @willend in #1839 - [Fix] McStas
Union_masterAdjustment of default parameter
by @willend in #1840 - [Fix] McStas
Union-related fixes and imports from DMSC school
by @willend in #1841 - [Fix] McStas
Elliptical_guide_gravitydid not work in GROUPS as it always SCATTERS
by @mads-bertelsen in #1843 - [Fix]
Monitor_nDon GPU: Adjustments for coherence between CPU and GPU particle lists
by @willend in #1816
Core simulation toolkit
- [Feature] NeXus: sort comp instances by index and include comp parameter information
by @willend in #1828 - [Fix] Increased stability in NeXus x wide MPI
by @willend in #1811 - [Fix] Portability, Windows +
cl.exe: Remove variable length array allocations for issue #1817
by @g5t in #1819 and
#1818 by @willend in #1822
Interfaces and interoperability with other codes
NCrystal
- Thanks to @tkittel for ping-pong on this :)
- [Feature] McStas 3.5.24 and later now depends on NCrystal 4.0.0 and later. NCrystal is now available also on Windows!
by @willend in #1848 and #1855
mccode-antlr
- Thanks to @g5t for ping-pong on this :)
- [Feature]
mccode-antlris an alternative code-generator for McStas and McXtrace - a new development by @g5t and based onANTLRinstead oflex/yacc. The new tool is mainly written in python and thus has a lower barrier for changes in language syntax and code generation. The tool implementationsmcstas-antlrandmcxtrace-antlrare thus a candidate implementations to potentially replace the classicmcstasandmcxtracecode generators in the future. Current status is that- McStas:
mcstas-antlris fully feature complete wrt.mcstasfor CPU simulations and close to complete for GPU simulations - McXtrace: Not all instruments will compile using
mcxtrace-antlrbut basic functionality is in place - To try:
- Install
mccode-antlrfromconda-forgeor viapip - Adapt your configuration to use e.g.
mcstas-antlrby
- Setting the new
--cogen=mcstas-antlroption inmcrun - Enable or edit the
MCCOGENfield ofmccode_config.jsonusing the newSave/Edit configurationinmcgui - (The antlr tools default to download comps etc. to an internal cache: Add e.g.
-I${MCSTAS}to prefer ingredients fromyour local library)
- Use the
mcrun-antlr/mxrun-antlrtools provided directly bymccode-antlr
- Install
- McStas:
Platform support
- Debian/Ubuntu
- Windows
- [Feature] NCrystal is now available with McStas on Windows
- [Info] Windows via cross-compiled
.exeinstaller frommccode.org:
Please place the MCPL-related.batfiles from theextrasfolder in e.g.c:\mcstas-3.5.24\binto enable MCPL
(May require giving your user 'full access' permissions to the bin folder) - [Info] Windows via conda-forge: MCPL is not yet available but expected during the spring
Full Changelog: v3.5.16...v3.5.24
v3.5.23 February "scoop-up" release
What's Changed
- Post 3.5.16 minor Union fixes + NeXus x wide MPI by @willend in #1811
- Issue 1721 fix: Support Scintilla editor on Debian with Qt6 by @willend in #1813
- Drop hard-coded check for PyQt5 by @willend in #1814
- Add max iteration criterion for while loop (default 1000). by @willend in #1815
- Adjustments for coherence between CPU and GPU particle lists by @willend in #1816
- Remove variable length array allocations for #1817 by @g5t in #1819
- Fix typos in polyhedron.c by @g5t in #1820
- Remove NCrystal_sample.comp possible out-of-bounds memory access by @g5t in #1821
- Fix for #1818 by @willend in #1822
- Sync variants of Monitor_nD acc/noacc McStas, McXtrace by @willend in #1823
- perl -> python 1-liner readlinkf() by @willend in #1824
- Make hidden numpy dependency explicit also on Debian by @willend in #1825
- Minor comp revisions, suppresses compilation warnings from clang by @willend in #1826
- pygen minor revision: Build importable make() function and call from generic notebook by @willend in #1827
- Sync with main by @willend in #1829
- Software stack update for 8-way GPU box by @willend in #1830
- Software stack update by @willend in #1831
- Switch ZLIB FETCH->IFAVAILABLE for cros-platform Windows by @willend in #1832
- [Fix] too-restrictive McDisplay instrument line parsing by @g5t in #1834
- Sync this NeXus dev branch against main by @willend in #1836
- Adapt tooling to edit json config in EDITOR + SNS_ARCS edits by @willend in #1838
- NeXus: sort comp instances by index and include comp parameter information by @willend in #1828
- Enable DEPENDENCY " @NEXUSFLAGS@ " in IMAT instr by @willend in #1839
- Param default adj Union_master + mcrun fallback solution for picking up code generator from PATH by @willend in #1840
- Union-related fixes and imports from DMSC school issue by @willend in #1841
- Elliptical_guide_gravity did not work in GROUPS as it always SCATTERS by @mads-bertelsen in #1843
- Update README.md by @willend in #1845
- Update README.md by @willend in #1846
- Various NCrystal 4.0.0 related patches by @willend in #1848
- Ncrystal 4 patches - remove from cross-compile build by @willend in #1849
- Config fixes openacc by @willend in #1850
- Add switch --cogen to allow on-demand switch betwen mcstas/mcstas-antlr by @willend in #1851
- meta-pkgs:deb:mcxtrace: add libgsl-dev as dependency by @farhi in #1852
- Gzip biggest McXtrace datafiles by @willend in #1847
Full Changelog: v3.5.16...v3.5.23
v3.5.22 minor update
What's Changed
- Post 3.5.16 minor Union fixes + NeXus x wide MPI by @willend in #1811
- Issue 1721 fix: Support Scintilla editor on Debian with Qt6 by @willend in #1813
- Drop hard-coded check for PyQt5 by @willend in #1814
- Add max iteration criterion for while loop (default 1000). by @willend in #1815
- Adjustments for coherence between CPU and GPU particle lists by @willend in #1816
- Remove variable length array allocations for #1817 by @g5t in #1819
- Fix typos in polyhedron.c by @g5t in #1820
- Remove NCrystal_sample.comp possible out-of-bounds memory access by @g5t in #1821
- Fix for #1818 by @willend in #1822
- Sync variants of Monitor_nD acc/noacc McStas, McXtrace by @willend in #1823
- perl -> python 1-liner readlinkf() by @willend in #1824
- Make hidden numpy dependency explicit also on Debian by @willend in #1825
- Minor comp revisions, suppresses compilation warnings from clang by @willend in #1826
- pygen minor revision: Build importable make() function and call from generic notebook by @willend in #1827
- Sync with main by @willend in #1829
- Software stack update for 8-way GPU box by @willend in #1830
- Software stack update by @willend in #1831
- Switch ZLIB FETCH->IFAVAILABLE for cros-platform Windows by @willend in #1832
- [Fix] too-restrictive McDisplay instrument line parsing by @g5t in #1834
- Sync this NeXus dev branch against main by @willend in #1836
- Adapt tooling to edit json config in EDITOR + SNS_ARCS edits by @willend in #1838
- NeXus: sort comp instances by index and include comp parameter information by @willend in #1828
- Enable DEPENDENCY " @NEXUSFLAGS@ " in IMAT instr by @willend in #1839
- Param default adj Union_master + mcrun fallback solution for picking up code generator from PATH by @willend in #1840
- Union-related fixes and imports from DMSC school issue by @willend in #1841
- Elliptical_guide_gravity did not work in GROUPS as it always SCATTERS by @mads-bertelsen in #1843
- Update README.md by @willend in #1845
- Update README.md by @willend in #1846
- Various NCrystal 4.0.0 related patches by @willend in #1848
Full Changelog: v3.5.16...v3.5.22
v3.5.21 minor update
What's Changed
- Post 3.5.16 minor Union fixes + NeXus x wide MPI by @willend in #1811
- Issue 1721 fix: Support Scintilla editor on Debian with Qt6 by @willend in #1813
- Drop hard-coded check for PyQt5 by @willend in #1814
- Add max iteration criterion for while loop (default 1000). by @willend in #1815
- Adjustments for coherence between CPU and GPU particle lists by @willend in #1816
- Remove variable length array allocations for #1817 by @g5t in #1819
- Fix typos in polyhedron.c by @g5t in #1820
- Remove NCrystal_sample.comp possible out-of-bounds memory access by @g5t in #1821
- Fix for #1818 by @willend in #1822
- Sync variants of Monitor_nD acc/noacc McStas, McXtrace by @willend in #1823
- perl -> python 1-liner readlinkf() by @willend in #1824
- Make hidden numpy dependency explicit also on Debian by @willend in #1825
- Minor comp revisions, suppresses compilation warnings from clang by @willend in #1826
- pygen minor revision: Build importable make() function and call from generic notebook by @willend in #1827
- Sync with main by @willend in #1829
- Software stack update for 8-way GPU box by @willend in #1830
- Software stack update by @willend in #1831
- Switch ZLIB FETCH->IFAVAILABLE for cros-platform Windows by @willend in #1832
- [Fix] too-restrictive McDisplay instrument line parsing by @g5t in #1834
- Sync this NeXus dev branch against main by @willend in #1836
- Adapt tooling to edit json config in EDITOR + SNS_ARCS edits by @willend in #1838
- NeXus: sort comp instances by index and include comp parameter information by @willend in #1828
- Enable DEPENDENCY " @NEXUSFLAGS@ " in IMAT instr by @willend in #1839
- Param default adj Union_master + mcrun fallback solution for picking up code generator from PATH by @willend in #1840
- Union-related fixes and imports from DMSC school issue by @willend in #1841
Full Changelog: v3.5.16...v3.5.21
v3.5.20 minor update
What's Changed
- Post 3.5.16 minor Union fixes + NeXus x wide MPI by @willend in #1811
- Issue 1721 fix: Support Scintilla editor on Debian with Qt6 by @willend in #1813
- Drop hard-coded check for PyQt5 by @willend in #1814
- Add max iteration criterion for while loop (default 1000). by @willend in #1815
- Adjustments for coherence between CPU and GPU particle lists by @willend in #1816
- Remove variable length array allocations for #1817 by @g5t in #1819
- Fix typos in polyhedron.c by @g5t in #1820
- Remove NCrystal_sample.comp possible out-of-bounds memory access by @g5t in #1821
- Fix for #1818 by @willend in #1822
- Sync variants of Monitor_nD acc/noacc McStas, McXtrace by @willend in #1823
- perl -> python 1-liner readlinkf() by @willend in #1824
- Make hidden numpy dependency explicit also on Debian by @willend in #1825
- Minor comp revisions, suppresses compilation warnings from clang by @willend in #1826
- pygen minor revision: Build importable make() function and call from generic notebook by @willend in #1827
- Sync with main by @willend in #1829
- Switch ZLIB FETCH->IFAVAILABLE for cros-platform Windows by @willend in #1832
- [Fix] too-restrictive McDisplay instrument line parsing by @g5t in #1834
- Sync this NeXus dev branch against main by @willend in #1836
- Adapt tooling to edit json config in EDITOR + SNS_ARCS edits by @willend in #1838
- NeXus: sort comp instances by index and include comp parameter information by @willend in #1828
Full Changelog: v3.5.16...v3.5.20
v3.5.19 minor update
What's Changed
- Post 3.5.16 minor Union fixes + NeXus x wide MPI by @willend in #1811
- Issue 1721 fix: Support Scintilla editor on Debian with Qt6 by @willend in #1813
- Drop hard-coded check for PyQt5 by @willend in #1814
- Add max iteration criterion for while loop (default 1000). by @willend in #1815
- Adjustments for coherence between CPU and GPU particle lists by @willend in #1816
- Remove variable length array allocations for #1817 by @g5t in #1819
- Fix typos in polyhedron.c by @g5t in #1820
- Remove NCrystal_sample.comp possible out-of-bounds memory access by @g5t in #1821
- Fix for #1818 by @willend in #1822
Full Changelog: v3.5.16...v3.5.19
v3.5.18 New year 2025 minor release
What's Changed
- Post 3.5.16 minor Union fixes + NeXus x wide MPI by @willend in #1811
- Issue 1721 fix: Support Scintilla editor on Debian with Qt6 by @willend in #1813
Full Changelog: v3.5.16...v3.5.18
v3.5.17 Christmas break release 2024
What's Changed
- Release-doc updates etc. for 3.5.16 by @willend in #1800
- Update README.md by @willend in #1801
- Post 3.5.16 minor fixes by @willend in #1802
- Correct dumb typo by @willend in #1803
- Post 3.5.16 minor fixes by @willend in #1804
- Post 3.5.16 minor fixes by @willend in #1805
- Ditch binder links by @willend in #1806
- Align with main by @willend in #1810
- Post 3.5.16 minor Union fixes + NeXus x wide MPI by @willend in #1811
Full Changelog: v3.5.16...v3.5.17