4.2. Release Notes for ARMI 0.6

Here you will find the release notes for previous ARMI releases.

4.2.1. ARMI v0.6.0

Release Date: 2025-09-25

This was a big release. A lot of technical debt has been cleaned up (XML geom files are finally gone), but there was a lot a lot of feature work: multi-pin blocks, axial expansion improvements, more powerful shuffle logic, and the ability to more freely load an ARMI database.

4.2.1.1. Code Changes, Features

  1. (PR#1995) Improving HexBlock.getFlowArea

  2. (PR#2031) Providing better composite iteration methods

  3. (PR#2045) Adding a check on the grid/component consistency in the BPs

  4. (PR#2092) Allowing ARMI to use tmp dir on Mac/Linux

  5. (PR#2105) Removing support for XML geom files

  6. (PR#2106) Add Core.iterBlocks and Assembly.iterBlocks

  7. (PR#2107) Handing empty string defaults better in copyInterfaceInputs

  8. (PR#2109) Store number densities in numpy arrays instead of dictionary

  9. (PR#2114) Allowing component area to be queried at arbitrary temp

  10. (PR#2118) Adding a FilletedHexagon shape

  11. (PR#2121) Supporting growing DBto full core on db load

  12. (PR#2135) Retooling single-warnings report as all warnings report

  13. (PR#2138) Allowing the BOL orientations to be set in the blueprints

  14. (PR#2162) Make axial linking aware of block grids for axial expansion

  15. (PR#2173) Improving Core.libs to look for the current cycle and node

  16. (PR#2175) Blocking duplicate flags from being added

  17. (PR#2198) Updating Axial Expansion Changer for improved mass redistribution

  18. (PR#2199) Add 3 nuclides to getDefaultNuclideFlags

  19. (PR#2202) Provide Component.pinIndices for helping understand where pins are

  20. (PR#2208) Making ParamMapper symmetry-aware

  21. (PR#2209) Block collection nuclides

  22. (PR#2218) Adding a method to get cycle/node combinations for a time interval

  23. (PR#2219) Refactoring Shuffle Logic Inputs to YAML

  24. (PR#2221) Update logic for number density arrays and other cleanup

  25. (PR#2223) Move the zonesFile setting to the framework and add building of zones to the interface stack

  26. (PR#2225) Advancing r.p.time in the Operator

  27. (PR#2227) Symmetry testing

  28. (PR#2233) Remove axialPowerProfile* parameters

  29. (PR#2235) Adding two geometry parameters

  30. (PR#2243) Updating wetted perimeter calculation

  31. (PR#2251) Comparing special formatting parameters in DBs

  32. (PR#2255) Add b10NumFrac attribute to B4C class to allow for flexible setDefaultMassFracs

  33. (PR#2266) Allow assembly parameters to be symmetry aware during core transformations and move operations

  34. (PR#2269) Track assemblies if discharged to SFP

  35. (PR#2272) Adding new Component param enrichmentBOL

  36. (PR#2275) Cleaning internal state out of some materials

  37. (PR#2277) Enhance fuel handler logic to support module imports

  38. (PR#2278) Adding support for moving assemblies from SFP to Core in YAML shuffle input

  39. (PR#2292) Support mixed Blocks for smear density calculation

  40. (PR#2305) Raising error if no driverBlock is found by latticePhysicsWriter

4.2.1.2. Code Changes, Bugs and Fixes

  1. (PR#1654) Use clearer input syntax for hexagonal lattice pitch

  2. (PR#1998) Fixing a couple of plots to use initial block height

  3. (PR#2098) Removing the HTML reports feature

  4. (PR#2102) Fixing issue in copyInterfaceInputs with one file

  5. (PR#2111) fix side effects from tests

  6. (PR#2115) Adding Reactor construction hook to Database.load()

  7. (PR#2120) Cylindrical Cross Section model updates

  8. (PR#2129) OperatorMPI doesn’t need to bcast quits if there no other workers

  9. (PR#2153) Hiding duplicate warning messages

  10. (PR#2160) Fixing bad Return in safeCopy

  11. (PR#2163) Using gamma groups instead of neutron groups in gamiso.addDummyNuclidesToLibrary

  12. (PR#2176) Using np.int32 when reading GEODST files

  13. (PR#2180) Remove assert statements from FilletedHexagon instantiation

  14. (PR#2186) Ensuring full core BPs aren’t converted like 1/3 core

  15. (PR#2187) Fixing bug in Uranium.pseudoDensity

  16. (PR#2189) Fixing bug in finding ISOTXS libraries to merge

  17. (PR#2191) Fixing issue with full core BP geometry conversion

  18. (PR#2195) Fixing round trip of hex lattice maps

  19. (PR#2226) Fix equality of MultiIndexLocator and CoordinateLocation

  20. (PR#2228) Fixing bug in Air.pseudoDensity when given Celsius T

  21. (PR#2229) Change initialization of modArea for database load

  22. (PR#2231) Fixing issue initial time node in previous PR

  23. (PR#2236) Handle pinIndices for blocks that don’t have fuel

  24. (PR#2245) Fixing invalid any() signature

  25. (PR#2248) Fixing issue loading from snapshots database

  26. (PR#2253) Making a unit test thread safe

  27. (PR#2259) Re-assigning pin indices when sorting a Block

  28. (PR#2260) Fixing compareLines so that it doesn’t trip on zeros

  29. (PR#2268) Fixing Uranium enrichment calculations

  30. (PR#2276) Fixing Composite.extend to correctly set the parent

  31. (PR#2282) Fixing incorrect variable name in Pitch class

  32. (PR#2291) Conserve molesHmBOL / massHmBOL when performing axial expansion

  33. (PR#2294) Ensuring settings file can be found when writing one DB from another

  34. (PR#2298) Preserve loading of CoordinateLocation in db load

  35. (PR#2302) Handle pin indices for fuel + non fuel on the same grid

  36. (PR#2307) Clearing out Component.p.pinIndices prior to assignment

4.2.1.3. Code Changes, Maintenance, or Trivial

  1. (PR#1386) Improve “smallRun” settings names

  2. (PR#2085) Dropping black formatter for ruff

  3. (PR#2093) Speed up axial expansion unit tests

  4. (PR#2096) Fixing spelling errors

  5. (PR#2103) Fixing spelling in docs and docstrings

  6. (PR#2104) Removing defunct references to Cinder

  7. (PR#2110) Combining three .gitignore files into one

  8. (PR#2116) Cleaning up the codeTiming reports

  9. (PR#2117) Reducing the warnings from Block.autoCreateSpatialGrids

  10. (PR#2123) Removing permanently skipped tests

  11. (PR#2126) Removing old TODO comments from the codebase

  12. (PR#2127) Removing 3 unused Settings

  13. (PR#2128) Created a fast flux energy structure for calculating fast flux

  14. (PR#2130) Removing unused Parameters

  15. (PR#2132) Removing unused reactivity coeffs params

  16. (PR#2133) Moving NeutronicsPlugin to its own file

  17. (PR#2134) Removing unused Parameters

  18. (PR#2136) Removing unused TH parameters

  19. (PR#2139) Removing unnecessary DB load try/except

  20. (PR#2140) Cleaning up Block constructor

  21. (PR#2141) Changing format-style strings to f-strings

  22. (PR#2142) Quieting warnings from Block.getComponent

  23. (PR#2144) Improving the default value for Assembly.getArea()

  24. (PR#2146) Some more fstring conversions

  25. (PR#2155) Cleaning up strange counter line

  26. (PR#2157) Removing overly-specific check from the Component constructor

  27. (PR#2165) Removing old setting mpiTasksPerNode from ZPPR test file

  28. (PR#2166) Removing commented out code

  29. (PR#2167) Removing unused test code

  30. (PR#2168) Removing Deprecation Warning on sortReactor setting

  31. (PR#2170) Adding a collar flag

  32. (PR#2171) Cleaning up Tests to have Fewer Side Effects

  33. (PR#2183) Renaming old smallRun Setting to rmExternalFilesAtEOL

  34. (PR#2190) Using iterators instead of getAssemblies where possible

  35. (PR#2197) Using iterators more in our unit tests

  36. (PR#2203) Slight refactor on b.getSmearDensity to accommodate downstream work

  37. (PR#2210) Removing python-dateutil dependency

  38. (PR#2211) Remove Component.p.puFrac

  39. (PR#2212) Removing duplicate lines

  40. (PR#2215) Removing defunct deprecation warning

  41. (PR#2220) Adding a basic unit test of Block.computeSmearDensity

  42. (PR#2230) Adding Composite.getFirstComponent method

  43. (PR#2232) Handling BOL times better

  44. (PR#2240) Cleaning trace and profile out of RunEntryPoint

  45. (PR#2241) move attributes to __init__

  46. (PR#2242) ParamLocation for Duct Temp/DPAs

  47. (PR#2257) Improving Code Coverage for Blocks and MPIAction

  48. (PR#2263) Adding tests to improve code coverage

  49. (PR#2265) Removing deprecated settingsValidation file

  50. (PR#2283) Removing unused debugDB setting

  51. (PR#2285) Improving the error messages for invalid settings data

  52. (PR#2289) Improving extensibility of mass redistribution method in axial expansion

  53. (PR#2297) Reducing log spam when creating a lot of spatial grids

  54. (PR#2300) Shortening our longest unit test names

4.2.1.4. Documentation-Only Changes

  1. (PR#2090) Adding an SCR section to the docs

  2. (PR#2095) Edits to STR test report

  3. (PR#2100) Adding more info to STR intro

  4. (PR#2101) Fixing issue with SCR on main branch

  5. (PR#2119) Adding basic documentation for axial expansion

  6. (PR#2131) Update docstring for Settings class to reflect mutability

  7. (PR#2137) Improving description of rateProdNet parameter

  8. (PR#2143) Improving the docs-build instructions

  9. (PR#2148) Adding tooling to help people build the docs locally

  10. (PR#2150) Clarifying setting disableBlockTypeExclusionInXsGeneration

  11. (PR#2151) Adding SQA for the SFP and cycles setting

  12. (PR#2174) Remove traces of black

  13. (PR#2213) Ensuring non-main branch PRs do not yield SCRs

  14. (PR#2214) Fixing error in recent doc change

  15. (PR#2217) Improving documentation of axial expansion

  16. (PR#2222) Make a duplicated test tag unique

  17. (PR#2238) Trying to speed up docs build

  18. (PR#2249) Improving docs on entry points creation

  19. (PR#2264) Update the description of the mcnpLibraryVersion case setting

  20. (PR#2270) Fixing sphinx warnings in the doc build

  21. (PR#2274) Adding user documentation of core symmetry

  22. (PR#2279) Fixing the SCR table in the docs

  23. (PR#2286) Improving Docs for 0.6.0 Release