4.2. 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.2.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.2.1.1. New Features
Move instead of copy files from
TemporaryDirectoryChanger
. (PR#2022)Creating the
armi.testing
module, 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.2.1.2. API Changes
Removing
Database3
from the API, useDatabase
. (PR#2052)
4.2.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
HexGrid
rough equality check. (PR#2058)Fixing treatment of symmetry factors when calculating component flux and reaction rates. (PR#2068)
4.2.1.4. Quality Work
4.2.2. ARMI v0.5.0
Release Date: 2024-12-14
4.2.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
App
that created them. (PR#1917)Adding support for ENDF/B-VII.1-based MC2-3 libraries. (PR#1982)
Adding setting
mcnpLibraryVersion
to chosen ENDF library for MCNP. (PR#1989)Removing the
tabulate
dependency by ingesting it toarmi.utils.tabulate
. (PR#1811)HexBlock.rotate
updates the spatial locator for children of that block. (PR#1943)Provide
Block.getInputHeight
for determining the height of a block from blueprints. (PR#1927)Provide
Parameter.hasCategory
for quickly checking if a parameter is defined with a given category. (PR#1899)Provide
ParameterCollection.where
for 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
getAxialExpansionChanger
to customize axial expansion. (PR#1870)New plugin hook
beforeReactorConstruction
to process settings before reactor init. (PR#1945)Improving performance in the lattice physics interface by not updating cross sections at
everyNode
during coupled calculations. (PR#1963)Allow merging a component with zero area into another component. (PR#1858)
Updating
copyOrWarn
andgetFileSHA1Hash
to 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-inspection
flag toCompareCases
CLI. (PR#1842)Exposing skip inspection options for
armi.init
anddb.loadOperator
. (PR#2005)Exposing
detailedNDens
to components. (PR#1954)Adding a method
getPinMgFluxes
to get pin-wise multigroup fluxes from a Block. (PR#1990)
4.2.2.2. API Changes
nuclideBases.byMcc3ID
andgetMcc3Id()
return IDs consistent with ENDF/B-VII.1. (PR#1982)Moving
settingsValidation
fromoperators
tosettings
. (PR#1895)Allowing for unknown Flags when opening a DB. (PR#1844)
Renaming
Reactor.moveList
toReactor.moves
. (PR#1881)Transposing
pinMgFluxes
parameters so that leading dimension is pin index. (PR#1937)Block.getPinCoordinates
returns an(N, 3)
array, rather than a list of arrays. (PR#1943)Alphabetizing
Flags.toString()
results. (PR#1912)copyInterfaceInputs
no longer requires a valid setting object. (PR#1934)Changing
synDbAfterWrite
default toTrue
. (PR#1968)Removing
Assembly.rotatePins
andBlock.rotatePins
. PreferAssembly.rotate
andBlock.rotate
. (PR#1846)Removing broken plot
buVsTime
. (PR#1994)Removing class
AssemblyList
andassemblyLists.py
. (PR#1891)Removing class
globalFluxInterface.DoseResultsMapper
. (PR#1952)Removing class
SmartList
. (PR#1992)Removing flags
CORE
andREACTOR
. (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
mpiTasksPerNode
and renamingnumProcessors
tonTasks
. (PR#1958)History Tracker: “detail assemblies” are now fuel and control assemblies. (PR#1990)
Removing
Block.breakFuelComponentsIntoIndividuals()
. (PR#1990)Moving
getPuMoles
from blocks.py up to composites.py. (PR#1990)Requiring
buReducingAssemblyRotation
andgetOptimalAssemblyOrientation
to have pin-level burnup. (PR#2019)
4.2.2.3. Bug Fixes
Fixed spatial grids of pins in Blocks on flats-up grids. (PR#1947)
Fixed
DerivedShape.getArea
forcold=True
. (PR#1831)Fixed error parsing command line integers in
ReportsEntryPoint
. (PR#1824)Fixed
PermissionError
when usingsyncDbAfterWrite
. (PR#1857)Fixed
MpiDirectoryChanger
. (PR#1853)Changed data type of
thKernel
setting frombool
tostr
inThermalHydraulicsPlugin
. (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)