ARMI v0.5 Release Notes

ARMI v0.5.1

Release Date: TBD

New Features

  1. Move instead of copy files from TemporaryDirectoryChanger. (PR#2022)

API Changes

  1. TBD

Bug Fixes

  1. TBD

Quality Work

  1. TBD

ARMI v0.5.0

Release Date: 2024-12-14

New Features

  1. Supporting Python 3.12. (PR#1813)

  2. Supporting Python 3.13. (PR#1996)

  3. Adding data models for ex-core structures in ARMI. (PR#1891)

  4. Opening some DBs without the App that created them. (PR#1917)

  5. Adding support for ENDF/B-VII.1-based MC2-3 libraries. (PR#1982)

  6. Adding setting mcnpLibraryVersion to chosen ENDF library for MCNP. (PR#1989)

  7. Removing the tabulate dependency by ingesting it to armi.utils.tabulate. (PR#1811)

  8. HexBlock.rotate updates the spatial locator for children of that block. (PR#1943)

  9. Provide Block.getInputHeight for determining the height of a block from blueprints. (PR#1927)

  10. Provide Parameter.hasCategory for quickly checking if a parameter is defined with a given category. (PR#1899)

  11. Provide ParameterCollection.where for efficient iteration over parameters who’s definition matches a given condition. (PR#1899)

  12. Flags can now be defined with letters and numbers. (PR#1966)

  13. Provide utilities for determining location of a rotated object in a hexagonal lattice (getIndexOfRotatedCell). (PR#1846)

  14. Allow merging a component with zero area into another component. (PR#1858)

  15. New plugin hook getAxialExpansionChanger to customize axial expansion. (PR#1870)

  16. New plugin hook beforeReactorConstruction to process settings before reactor init. (PR#1945)

  17. Improving performance in the lattice physics interface by not updating cross sections at everyNode during coupled calculations. (PR#1963)

  18. Allow merging a component with zero area into another component. (PR#1858)

  19. Updating copyOrWarn and getFileSHA1Hash to support directories. (PR#1984)

  20. Improve efficiency of reaction rate calculations. (PR#1887)

  21. Adding new options for simplifying 1D cross section modeling. (PR#1949)

  22. Adding --skip-inspection flag to CompareCases CLI. (PR#1842)

  23. Exposing skip inspection options for armi.init and db.loadOperator. (PR#2005)

  24. Exposing detailedNDens to components. (PR#1954)

  25. Adding a method getPinMgFluxes to get pin-wise multigroup fluxes from a Block. (PR#1990)

API Changes

  1. nuclideBases.byMcc3ID and getMcc3Id() return IDs consistent with ENDF/B-VII.1. (PR#1982)

  2. Moving settingsValidation from operators to settings. (PR#1895)

  3. Allowing for unknown Flags when opening a DB. (PR#1844)

  4. Renaming Reactor.moveList to Reactor.moves. (PR#1881)

  5. Transposing pinMgFluxes parameters so that leading dimension is pin index. (PR#1937)

  6. Block.getPinCoordinates returns an (N, 3) array, rather than a list of arrays. (PR#1943)

  7. Alphabetizing Flags.toString() results. (PR#1912)

  8. copyInterfaceInputs no longer requires a valid setting object. (PR#1934)

  9. Changing synDbAfterWrite default to True. (PR#1968)

  10. Removing Assembly.rotatePins and Block.rotatePins. Prefer Assembly.rotate and Block.rotate. (PR#1846)

  11. Removing broken plot buVsTime. (PR#1994)

  12. Removing class AssemblyList and assemblyLists.py. (PR#1891)

  13. Removing class globalFluxInterface.DoseResultsMapper. (PR#1952)

  14. Removing class SmartList. (PR#1992)

  15. Removing flags CORE and REACTOR. (PR#1835)

  16. Removing method Assembly.doubleResolution(). (PR#1951)

  17. Removing method buildEqRingSchedule. (PR#1928)

  18. Removing method prepSearch. (PR#1845)

  19. Removing method SkippingXsGen_BuChangedLessThanTolerance. (PR#1845)

  20. Removing setting autoGenerateBlockGrids. (PR#1947)

  21. Removing setting mpiTasksPerNode and renaming numProcessors to nTasks. (PR#1958)

  22. History Tracker: “detail assemblies” are now fuel and control assemblies. (PR#1990)

  23. Removing Block.breakFuelComponentsIntoIndividuals(). (PR#1990)

  24. Moving getPuMoles from blocks.py up to composites.py. (PR#1990)

  25. Requiring buReducingAssemblyRotation and getOptimalAssemblyOrientation to have pin-level burnup. (PR#2019)

Bug Fixes

  1. Fixed spatial grids of pins in Blocks on flats-up grids. (PR#1947)

  2. Fixed DerivedShape.getArea for cold=True. (PR#1831)

  3. Fixed error parsing command line integers in ReportsEntryPoint. (PR#1824)

  4. Fixed PermissionError when using syncDbAfterWrite. (PR#1857)

  5. Fixed MpiDirectoryChanger. (PR#1853)

  6. Changed data type of thKernel setting from bool to str in ThermalHydraulicsPlugin. (PR#1855)

  7. Update height of fluid components after axial expansion. (PR#1828)

  8. Rotate hexagonal assembly patches correctly on facemap plots. (PR#1883)

  9. Material theoretical density is serialized to and read from database. (PR#1852)

  10. Removed broken and unused column in summarizeMaterialData. (PR#1925)

  11. Fixed hex block rotation in plotBlockDiagram. (PR#1926)

  12. Fixed edge case in assemblyBlueprint._checkParamConsistency(). (PR#1928)

  13. Fixed wetted perimeter for hex inner ducts. (PR#1985)

  14. Fixing number densities when custom isotopics and material properties are combined. (PR#1822)

Quality Work

  1. Removing deprecated code axialUnitGrid. (PR#1809)

  2. Refactoring axialExpansionChanger. (PR#1861)

  3. Raising a ValueError when Database.load() fails. (PR#1940)

  4. Making axial expansion-related classes more extensible. (PR#1920)