4.3. Release Notes for ARMI 0.5
These are the release notes for past versions of ARMI, created before our SCR process. They are preserved here for historical record.
4.3.1. ARMI v0.5.1
Release Date: 2025-03-14
This release was all about QA documentation. We open-sourced our QA documentation, even our software requirements. There were also several bug fixes.
4.3.1.1. New Features
Move instead of copy files from
TemporaryDirectoryChanger. (PR#2022)Creating the
armi.testingmodule, to share ARMI testing tools. (PR#2028)Using inner diameter for sorting components when outer diameter is identical. (PR#1882)
Invoking
component.material.density()does not log an expensive stack tracefor fluids. (PR#2075)ARMI will now try to use the
/tmp/directory for its temp files, on Linux and MacOS. (PR#2092)
4.3.1.2. API Changes
Removing
Database3from the API, useDatabase. (PR#2052)
4.3.1.3. Bug Fixes
Fixing check for jagged arrays during
_writeParams. (PR#2051)Fixing BP-section ignoring tool in
PassiveDBLoadPlugin. (PR#2055)Making sure SFPs have spatial grids. (PR#2082)
Fixing number densities when custom isotopics are combined with Fluid components. (PR#2071)
Fixing scaling of volume-integrated parameters on edge assemblies. (PR#2060)
Fixing strictness of
HexGridrough equality check. (PR#2058)Fixing treatment of symmetry factors when calculating component flux and reaction rates. (PR#2068)
4.3.1.4. Quality Work
4.3.2. ARMI v0.5.0
Release Date: 2024-12-14
4.3.2.1. New Features
Supporting Python 3.12. (PR#1813)
Supporting Python 3.13. (PR#1996)
Adding data models for ex-core structures in ARMI. (PR#1891)
Opening some DBs without the
Appthat created them. (PR#1917)Adding support for ENDF/B-VII.1-based MC2-3 libraries. (PR#1982)
Adding setting
mcnpLibraryVersionto chosen ENDF library for MCNP. (PR#1989)Removing the
tabulatedependency by ingesting it toarmi.utils.tabulate. (PR#1811)HexBlock.rotateupdates the spatial locator for children of that block. (PR#1943)Provide
Block.getInputHeightfor determining the height of a block from blueprints. (PR#1927)Provide
Parameter.hasCategoryfor quickly checking if a parameter is defined with a given category. (PR#1899)Provide
ParameterCollection.wherefor efficient iteration over parameters who’s definition matches a given condition. (PR#1899)Flags can now be defined with letters and numbers. (PR#1966)
Provide utilities for determining location of a rotated object in a hexagonal lattice (
getIndexOfRotatedCell). (PR#1846)Allow merging a component with zero area into another component. (PR#1858)
New plugin hook
getAxialExpansionChangerto customize axial expansion. (PR#1870)New plugin hook
beforeReactorConstructionto process settings before reactor init. (PR#1945)Improving performance in the lattice physics interface by not updating cross sections at
everyNodeduring coupled calculations. (PR#1963)Allow merging a component with zero area into another component. (PR#1858)
Updating
copyOrWarnandgetFileSHA1Hashto support directories. (PR#1984)Improve efficiency of reaction rate calculations. (PR#1887)
Adding new options for simplifying 1D cross section modeling. (PR#1949)
Adding
--skip-inspectionflag toCompareCasesCLI. (PR#1842)Exposing skip inspection options for
armi.initanddb.loadOperator. (PR#2005)Exposing
detailedNDensto components. (PR#1954)Adding a method
getPinMgFluxesto get pin-wise multigroup fluxes from a Block. (PR#1990)
4.3.2.2. API Changes
nuclideBases.byMcc3IDandgetMcc3Id()return IDs consistent with ENDF/B-VII.1. (PR#1982)Moving
settingsValidationfromoperatorstosettings. (PR#1895)Allowing for unknown Flags when opening a DB. (PR#1844)
Renaming
Reactor.moveListtoReactor.moves. (PR#1881)Transposing
pinMgFluxesparameters so that leading dimension is pin index. (PR#1937)Block.getPinCoordinatesreturns an(N, 3)array, rather than a list of arrays. (PR#1943)Alphabetizing
Flags.toString()results. (PR#1912)copyInterfaceInputsno longer requires a valid setting object. (PR#1934)Changing
synDbAfterWritedefault toTrue. (PR#1968)Removing
Assembly.rotatePinsandBlock.rotatePins. PreferAssembly.rotateandBlock.rotate. (PR#1846)Removing broken plot
buVsTime. (PR#1994)Removing class
AssemblyListandassemblyLists.py. (PR#1891)Removing class
globalFluxInterface.DoseResultsMapper. (PR#1952)Removing class
SmartList. (PR#1992)Removing flags
COREandREACTOR. (PR#1835)Removing method
Assembly.doubleResolution(). (PR#1951)Removing method
buildEqRingSchedule. (PR#1928)Removing method
prepSearch. (PR#1845)Removing method
SkippingXsGen_BuChangedLessThanTolerance. (PR#1845)Removing setting
autoGenerateBlockGrids. (PR#1947)Removing setting
mpiTasksPerNodeand renamingnumProcessorstonTasks. (PR#1958)History Tracker: “detail assemblies” are now fuel and control assemblies. (PR#1990)
Removing
Block.breakFuelComponentsIntoIndividuals(). (PR#1990)Moving
getPuMolesfrom blocks.py up to composites.py. (PR#1990)Requiring
buReducingAssemblyRotationandgetOptimalAssemblyOrientationto have pin-level burnup. (PR#2019)
4.3.2.3. Bug Fixes
Fixed spatial grids of pins in Blocks on flats-up grids. (PR#1947)
Fixed
DerivedShape.getAreaforcold=True. (PR#1831)Fixed error parsing command line integers in
ReportsEntryPoint. (PR#1824)Fixed
PermissionErrorwhen usingsyncDbAfterWrite. (PR#1857)Fixed
MpiDirectoryChanger. (PR#1853)Changed data type of
thKernelsetting frombooltostrinThermalHydraulicsPlugin. (PR#1855)Update height of fluid components after axial expansion. (PR#1828)
Rotate hexagonal assembly patches correctly on facemap plots. (PR#1883)
Material theoretical density is serialized to and read from database. (PR#1852)
Removed broken and unused column in
summarizeMaterialData. (PR#1925)Fixed hex block rotation in
plotBlockDiagram. (PR#1926)Fixed edge case in
assemblyBlueprint._checkParamConsistency(). (PR#1928)Fixed wetted perimeter for hex inner ducts. (PR#1985)
Fixing number densities when custom isotopics and material properties are combined. (PR#1822)