Recent Releases of Monte Carlo / Dynamic Code (MC/DC)

Monte Carlo / Dynamic Code (MC/DC) - v0.12.0

What's Changed

  • Cell-based tallies added by @ethan-lame in https://github.com/CEMeNT-PSAAP/MCDC/pull/243
    • Time and energy binning added by @northroj in https://github.com/CEMeNT-PSAAP/MCDC/pull/282
  • Continuously moving surfaces re-added:
    • Verified on planar surfaces in @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/244
    • Quadric surfaces added in by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/264, https://github.com/CEMeNT-PSAAP/MCDC/pull/265
  • Compressed sensing implemented by @ethan-lame in https://github.com/CEMeNT-PSAAP/MCDC/pull/266
  • Automatic Lagged Weight Windows implemented by @shac170 in https://github.com/CEMeNT-PSAAP/MCDC/pull/295
  • Domain decomposition:
    • Non-uniform processor allocation by @alexandermote in https://github.com/CEMeNT-PSAAP/MCDC/pull/246
    • Variable-sized subdomains on CPU/GPU by @alexandermote in https://github.com/CEMeNT-PSAAP/MCDC/pull/271
  • Time tallying and census:
    • Updates and bug fixes @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/272, https://github.com/CEMeNT-PSAAP/MCDC/pull/273, and https://github.com/CEMeNT-PSAAP/MCDC/pull/275
    • Census tally recombination and bug fixes by @shac170 in https://github.com/CEMeNT-PSAAP/MCDC/pull/301
  • Updates to geometry and meshing:
    • Universe cell added, user interface changed, and major geometry-related refactoring by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/244
    • Mesh tally scoring updated to anticipate the CSG geometry changes made in v0.11.0 by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/258
    • Mesh tally allows for multiple tally meshes with different shapes by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/262
  • Updates to output processing:
    • For runs with multiple mesh tallies by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/259
    • For IC particle generators by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/260
    • Separate runtime output file for performance analysis added by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/292
  • Update precursor source generator by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/261 and increase default source bank buffer by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/288
  • GPU operability bug fixes by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/310: use of default function argument (COINCIDENCE_TOLERANCE*) in mesh functions of structured.py and uniform.py and use of Numpy functions in compressed sensing
  • Regression tests updated to use batch statistics for sdev reproducibility on GPU by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/316
  • Numba caching temporarily removed by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/244
  • Documentation updates:
    • Recommended installation changed from conda to python venv by @jpmorgan98 in https://github.com/CEMeNT-PSAAP/MCDC/pull/254
    • GPU install and execution instructions added by @jpmorgan98 in https://github.com/CEMeNT-PSAAP/MCDC/pull/254 and https://github.com/CEMeNT-PSAAP/MCDC/pull/284
    • Instructions for contributing to documentation by @clemekay in https://github.com/CEMeNT-PSAAP/MCDC/pull/305
  • Continuous integration:
    • Ubuntu Version Static set to 22.04 by @jpmorgan98 in https://github.com/CEMeNT-PSAAP/MCDC/pull/269
    • Numba patch no longer necessary with Numba 0.61.0 by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/274
    • GPU CI from COE CI machine by @jpmorgan98 in https://github.com/CEMeNT-PSAAP/MCDC/pull/307
    • Known issue: COE CI machine periodically disconnects from GitHub. GPU regression tests have been manually run.
  • Update dependency to use Numba 0.60.0 and MPI4py 3.1.4 by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/313

New Contributors

  • @ethan-lame made their first contribution in https://github.com/CEMeNT-PSAAP/MCDC/pull/243

Full Changelog: https://github.com/CEMeNT-PSAAP/MCDC/compare/v0.11.1...v0.12.0

Scientific Software - Peer-reviewed - Python
Published by clemekay 8 months ago

Monte Carlo / Dynamic Code (MC/DC) - v0.11.1

Changing GPU runtime behavior to allow for code profiling for M&C 2025 papers

What's Changed

  • Merge pull request #248 from CEMeNT-PSAAP/dev (Making dev up to date to main) by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/249
  • GPU Sub-batching + Opt-in caching by @braxtoncuneo in https://github.com/CEMeNT-PSAAP/MCDC/pull/250
  • pyproject.toml for v0.11.1 by @jpmorgan98 in https://github.com/CEMeNT-PSAAP/MCDC/pull/251
  • v0.11.1 by @jpmorgan98 in https://github.com/CEMeNT-PSAAP/MCDC/pull/252

Full Changelog: https://github.com/CEMeNT-PSAAP/MCDC/compare/v0.11.0...v0.11.1

Scientific Software - Peer-reviewed - Python
Published by jpmorgan98 about 1 year ago

Monte Carlo / Dynamic Code (MC/DC) - v.0.11.0

  • AMD and NVIDIA GPU functionalities #241 by @braxtoncuneo.
  • Improved CSG geometry modeling #222 by @ilhamv: intersection, union, complement
    • Reverse Polish Notation algorithm is used
    • Cell input changes. Cell region is now defined with boolean operations of regions or surface halfspaces. Previously, it was defined as a list of surface halfspaces that were limited to intersection operation.
  • Improved geometry tracking #238 by @ilhamv: replace particle shifting with direction checking to treat spatial coincidences, refactor geometry-related source code to submodules, better coincident event treatment, better unit testing, non-stopping tally mesh
  • Improved tally: refactor tally structure into long 1D array #227 and density score #245 by @ilhamv, mesh tally decomposition #227 by @alexandermote,
  • Improved universe modeling #238 by @ilhamv : universe rotation and translation, universe-filled cell
  • Add and set splitting roulette as default population control (#242) for complete reproducibility on GPU runs due to concurrent tracking of the secondaries by @braxtoncuneo and @ilhamv.
  • iQMC update #223 by @spasmann: batching algorithm, improved readability and maintanibility
  • Visualizer update
    • A 2D lightweight visualizer is introduced #240 by @ilhamv .
    • The 3D Ngsolve visualizer is removed #245. It is and will be replaced with alternatives that have fewer dependencies.
  • Pre-commit hook for automatic black-styling
  • The moving surface capability is temporarily removed (#238). It will be better reimplemented in the next version.
  • Verification test is moved (#238) to https://github.com/CEMeNT-PSAAP/MCDC-VVP
  • Having portability on CPUs, NVIDIA GPUs, and AMD GPUs, this version will be the first named version whose performance test results are recorded in https://github.com/CEMeNT-PSAAP/MCDC-VVP

What's Changed

  • Update pyproject.toml by @jpmorgan98 in https://github.com/CEMeNT-PSAAP/MCDC/pull/203
  • iQMC Refactor by @spasmann in https://github.com/CEMeNT-PSAAP/MCDC/pull/204
  • Improving CSG and input cards by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/198
  • Bug fix: particles sourced on cell boundaries by @spasmann in https://github.com/CEMeNT-PSAAP/MCDC/pull/213
  • Bug fix, continuous energy test, and file-based source test by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/215
  • Added mpi4py.util.dtlib to docs MOCK_MODULES by @clemekay in https://github.com/CEMeNT-PSAAP/MCDC/pull/219
  • Moving visualizer to a sub package for mac support by @jpmorgan98 in https://github.com/CEMeNT-PSAAP/MCDC/pull/221
  • Refactor CSG tracking with Reverse Polish Notation by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/222
  • Decomposed mesh tallies when domain decomposition is active by @alexandermote in https://github.com/CEMeNT-PSAAP/MCDC/pull/212
  • Merge main into dev by @clemekay in https://github.com/CEMeNT-PSAAP/MCDC/pull/226
  • Remove DSM temporarily by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/233
  • Remove particle tracker temporarily by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/234
  • Refactor local arrays and objects by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/229
  • Refactor geometry by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/235
  • Add a pre-commit hook (Black styling) by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/228
  • iQMC Batch Method by @spasmann in https://github.com/CEMeNT-PSAAP/MCDC/pull/223
  • Adding 3D tally recomposition and 3D Domain Decomposition test by @alexandermote in https://github.com/CEMeNT-PSAAP/MCDC/pull/230
  • add version to init and hdf5 output by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/239
  • Update geometry and mesh by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/238
  • Merge the new tally structure by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/227
  • AMD GPU (ROCM) Interoperability by @braxtoncuneo in https://github.com/CEMeNT-PSAAP/MCDC/pull/241
  • Add a lightweight 2D visualizer. by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/240
  • Add splitting roulette population control by @braxtoncuneo in https://github.com/CEMeNT-PSAAP/MCDC/pull/242
  • Update example by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/245
  • Updating metadata for version release by @jpmorgan98 in https://github.com/CEMeNT-PSAAP/MCDC/pull/247

New Contributors

  • @alexandermote made their first contribution in https://github.com/CEMeNT-PSAAP/MCDC/pull/212

Full Changelog: https://github.com/CEMeNT-PSAAP/MCDC/compare/v0.10.0...v0.11.0

Scientific Software - Peer-reviewed - Python
Published by ilhamv about 1 year ago

Monte Carlo / Dynamic Code (MC/DC) - v0.10.0

GPU functionality via harmonize and domain decomposition. Known bug: GPU regression tests not 1to1 match

What's Changed

  • Minor bug in install.sh by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/162
  • Add python version check to install script. by @clemekay in https://github.com/CEMeNT-PSAAP/MCDC/pull/165
  • domain decomposition by @shac170 in https://github.com/CEMeNT-PSAAP/MCDC/pull/169
  • Small regression test fix and merge recent changes made in main. by @spasmann in https://github.com/CEMeNT-PSAAP/MCDC/pull/172
  • Adding a citation file and maunal pypi publish by @jpmorgan98 in https://github.com/CEMeNT-PSAAP/MCDC/pull/184
  • Updating dev by @jpmorgan98 in https://github.com/CEMeNT-PSAAP/MCDC/pull/185
  • Added documentation for dd and reorganized other docs by @shac170 in https://github.com/CEMeNT-PSAAP/MCDC/pull/187
  • Caching and Documentation by @jpmorgan98 in https://github.com/CEMeNT-PSAAP/MCDC/pull/189
  • Domain Decomposition Revamped by @braxtoncuneo in https://github.com/CEMeNT-PSAAP/MCDC/pull/194
  • Update Read the Docs refs by @clemekay in https://github.com/CEMeNT-PSAAP/MCDC/pull/192
  • GPU Interop by @braxtoncuneo in https://github.com/CEMeNT-PSAAP/MCDC/pull/195
  • Remove bilinear source tilting and Davidson's method by @spasmann in https://github.com/CEMeNT-PSAAP/MCDC/pull/199
  • remove manual check in vade regression test by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/200
  • Version release 0.10.0 by @jpmorgan98 in https://github.com/CEMeNT-PSAAP/MCDC/pull/202

Full Changelog: https://github.com/CEMeNT-PSAAP/MCDC/compare/v0.9.1...v0.10.0

Scientific Software - Peer-reviewed - Python
Published by jpmorgan98 over 1 year ago

Monte Carlo / Dynamic Code (MC/DC) - v0.9.1

Version release required for JOSS approval

  • Adding more to docs
  • Fixing a few examples
  • Adding runtime warning for unconfigured continuous energy xsec library
  • Fixing install script

What's Changed

  • KN updates to JOSS paper by @kyleniemeyer in https://github.com/CEMeNT-PSAAP/MCDC/pull/152
  • Fixing capabilities on continuous energy mode by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/150
  • Keep collision-inducing neutron alive when applicable. Update on tests. by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/154
  • Adding Caching and a Debug Runtime Option by @jpmorgan98 in https://github.com/CEMeNT-PSAAP/MCDC/pull/161
  • Hotfix for install script by @jpmorgan98 in https://github.com/CEMeNT-PSAAP/MCDC/pull/171
  • Hotfixes for issues by @jpmorgan98 in https://github.com/CEMeNT-PSAAP/MCDC/pull/175
  • Add colorama mock for Sphinx by @clemekay in https://github.com/CEMeNT-PSAAP/MCDC/pull/179
  • Adding middle names to Joss paper by @jpmorgan98 in https://github.com/CEMeNT-PSAAP/MCDC/pull/181
  • adding dois, fixing in text bib refs by @jpmorgan98 in https://github.com/CEMeNT-PSAAP/MCDC/pull/182
  • Updating pyproject for v0.9.1 by @jpmorgan98 in https://github.com/CEMeNT-PSAAP/MCDC/pull/183

New Contributors

  • @kyleniemeyer made their first contribution in https://github.com/CEMeNT-PSAAP/MCDC/pull/152

Full Changelog: https://github.com/CEMeNT-PSAAP/MCDC/compare/v0.9.0...v0.9.1

Scientific Software - Peer-reviewed - Python
Published by jpmorgan98 over 1 year ago

Monte Carlo / Dynamic Code (MC/DC) - v0.9.0

It has been a year since our last version release lots of things have changed

  • Continious energy transport
  • Bug fixes for HPC systems
  • Adding a visualizer into the main branch
  • Documentation
  • Packaging with pypi
  • various new iqmc methods
  • Production of easy to use install scripts for HPC devlopment

What's Changed

  • Continuous integration for unit tests on github v0.1 by @northroj in https://github.com/CEMeNT-PSAAP/MCDC/pull/99
  • Add Initial Condition Sampling by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/102
  • Refactor of the event system by @goodman17c in https://github.com/CEMeNT-PSAAP/MCDC/pull/97
  • Add energy group grid to tally mesh by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/103
  • iQMC Krylov Solvers by @spasmann in https://github.com/CEMeNT-PSAAP/MCDC/pull/106
  • Improvements to weight windows by @goodman17c in https://github.com/CEMeNT-PSAAP/MCDC/pull/107
  • update gitignore by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/110
  • add cmd line options, add second-order sensitivity method by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/111
  • minor update on input cards by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/112
  • Move out tally bin reduction in history closeout (refactoring to help integration of harmonize) by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/113
  • Local rng by @braxtoncuneo in https://github.com/CEMeNT-PSAAP/MCDC/pull/114
  • Minor update by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/115
  • Refactoring loops by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/116
  • move out iqmc sweep counter by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/117
  • add batch loop for fixed source by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/118
  • Parallelization of LDS and Additional Unit Tests by @spasmann in https://github.com/CEMeNT-PSAAP/MCDC/pull/119
  • update c5g7 examples by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/120
  • remove crossing estimators by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/121
  • minor updates by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/122
  • debug parallel issue on source bank access by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/127
  • Create installation script and documentation website by @clemekay in https://github.com/CEMeNT-PSAAP/MCDC/pull/128
  • Merging variance deconvolution feature into main. by @clemekay in https://github.com/CEMeNT-PSAAP/MCDC/pull/130
  • iQMC print statement refactor by @spasmann in https://github.com/CEMeNT-PSAAP/MCDC/pull/132
  • Reconfigure test by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/131
  • update workflow by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/134
  • small SEEDSPLITUQ bug fix by @spasmann in https://github.com/CEMeNT-PSAAP/MCDC/pull/137
  • iqmc source tilting and refactorization by @spasmann in https://github.com/CEMeNT-PSAAP/MCDC/pull/140
  • add iqmc mpi test to workflow by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/141
  • Adding visulization (Merging #109) by @jpmorgan98 in https://github.com/CEMeNT-PSAAP/MCDC/pull/143
  • iQMC MPI Bug Fix by @spasmann in https://github.com/CEMeNT-PSAAP/MCDC/pull/144
  • Add continuous energy physics by @ilhamv in https://github.com/CEMeNT-PSAAP/MCDC/pull/142
  • Testing Refactor, New Documentaiton, & Cont Energy Xsec Config script by @jpmorgan98 in https://github.com/CEMeNT-PSAAP/MCDC/pull/145
  • Documentation and Testing by @jpmorgan98 in https://github.com/CEMeNT-PSAAP/MCDC/pull/147
  • Visualization Timescale and color fix. by @RohanPankaj in https://github.com/CEMeNT-PSAAP/MCDC/pull/146
  • Documentation and Packaging update (Pre mc/dc 0.0.9) by @jpmorgan98 in https://github.com/CEMeNT-PSAAP/MCDC/pull/149

New Contributors

  • @northroj made their first contribution in https://github.com/CEMeNT-PSAAP/MCDC/pull/99
  • @braxtoncuneo made their first contribution in https://github.com/CEMeNT-PSAAP/MCDC/pull/114
  • @clemekay made their first contribution in https://github.com/CEMeNT-PSAAP/MCDC/pull/128
  • @RohanPankaj made their first contribution in https://github.com/CEMeNT-PSAAP/MCDC/pull/146

Full Changelog: https://github.com/CEMeNT-PSAAP/MCDC/compare/v0.1.0...v0.9.0

Scientific Software - Peer-reviewed - Python
Published by jpmorgan98 almost 2 years ago

Monte Carlo / Dynamic Code (MC/DC) - v0.1.0

Scientific Software - Peer-reviewed - Python
Published by jpmorgan98 over 2 years ago