ARMI v0.2 Release Notes¶
ARMI v0.2.6¶
Release Date: 2023-02-09
What’s new in ARMI¶
The
Material
class no longer subclassesComposite
(PR#1062)Froze the NumPy version to <= 1.23.5 (PR#1035) to continue to support NumPy jagged arrays in the DatabaseInterface.
Split 3 classes in
database3.py
into 3 files (PR#955)Split algorithms specific to hex assemblies out of
FuelHandler
. (PR#962)Added 4614 nuclides to decouple the loading of RIPL-3 data from the standard framework run. (PR#998)
Overhaul of the tight coupling routine in ARMI, and removal of
looseCoupling
setting. (PR #1033)Added
savePhysicsFiles
setting to copy physics kernel I/O to directories organized by cycle and time step (e.g., c2n1). (PR#952)Add
pinQuantities
parameter category for block params that have spatial distribution.Use
r.core.p.axialMesh
instead ofr.core.refAssem.getAxialMesh()
for the uniform mesh converter. (PR#959)Add group structures for 21- and 94-groups used in photon transport.
Add block parameter,
fuelCladLocked
, to track whether or not the fuel and clad are locked. (PR#1038)An explicit fission product modeling option was added. (PR#1022)
Axially expand from cold to hot before deepcopy of assemblies into reactor; improving speed. (PR#1047)
Add a how-to on restart calculations in the docs.
General improvements to efficiency in uniform mesh conversion. (PR#1042)
Allow MCNP material card number to be defined after the card is written. (PR#1086)
Refine logic for
Block.getNumPins()
to only count components that are actually pins. (PR#1098)Improve handling of peak/max parameters by the
UniformMeshConverter
parameter mapper. (PR#1108)Calculate block kgHM and kgFis on core loading and after shuffling. (`PR#1136 https://github.com/terrapower/armi/pull/1136`_)
Calculate block
PuFrac
on core loading and after shuffling. (PR#1165)
Bug fixes¶
Fixed
referenceBlockAxialMesh
andaxialMesh
during process loading. (PR#980)Fixed deadelines in MPI cases due to barriers in temp directory changers.
Fixed the material namespace order for
test_axialExpansionChanger.py
persisting after tests. (PR#1046)Fixed the gaseous fission products not being removed from the core directly, but instead the fission yields within the lumped fission products were being adjusted. (PR#1022)
Fixed non-fuel depletable components not being initialized with all nuclides with the
explicitFissionProducts
model (PR#1067)Fixed consistency between cross section group manager and lattice physics interface for tight coupling. (PR#1118)
Fixed numerical diffusion in uniform mesh converter that affects number densities and cumulative parameters like DPA. (PR#992)
Fix the formula to calculate
b.p.puFrac
. (PR#1168)Fixed
Material.densityTimesHeatCapacity()
, moving from pseudo-density to physical density. (PR#1129)Fixed
TD_frac
modification on UraniumOxide and MOX was not being applied correctly.Fixed Magnessium density curve. (PR#1126)
Fixed Potassium density curve. (PR#1128)
Fixed Concrete density curve. (PR#1131)
Fixed Copper density curve. (PR#1150)
Fixed Component.density. (PR#1149)
ARMI v0.2.5¶
Release Date: 2022-10-24
What’s new in ARMI¶
Cleanup of stale
coveragerc
file (PR#923)Added medium writer style option to
SettingsWriter
. Added it as arg to modify CLI (PR#924), and to clone CLI (PR#932).Update the EntryPoint class to provide user feedback on required positional arguments (PR#922)
Overhaul
reactor.zones
tooling and remove application-specific zoning logic (PR#943)
ARMI v0.2.4¶
Release Date: 2022-10-03
What’s new in ARMI¶
Added new
UserPlugin
functionality.Introduced
axial expansion changer
.Greatly improved the
UniformMeshGeometryConverter
.Made the min/max temperatures of
Material
curves discoverable.Removed the
PyYaml
dependency.Changed the default Git branch name to
main
.Moved math utilities into their own module.
Moved
newReports
into their final location inarmi/bookkeeping/report/
.Removed
_swapFluxParam
method (PR#665)Removed the last usage of
settingsRules
; now only usesettingsValidation
.Removed separate blueprints in snapshot runs, they must come from the database (PR#872 https://github.com/terrapower/armi/pull/872)
Added reporting of neutron and gamma energy groups in the XS library
__repr__
.Updated NHFLUX reader to store VARIANT data that was being discarded.
Store thermally expanded block heights at BOL in
armi/reactor/reactors.py::Core::processLoading
.Added neutronics settings:
inners
andouters
for downstream support.Removed unused Thermal Hydraulics settings.
Replaced setting
stationaryBlocks
withstationaryBlockFlags
setting (PR#665)Changed the default value of the
trackAssems
setting toFalse
.Add setting
inputHeightsConsideredHot
to enable thermal expansion of assemblies at BOL.
Bug fixes¶
Fixed issues finding
ISOXX
files cross-platform.Fixed issues in
growToFullCore
.Fixed issue in the ARMI memory profiler.
Fixed issue in linear expansion in
Alloy200
.Fixed issue in
armi/reactor/components/complexShapes.py::Helix::getCircleInnerDiameter
Fixed issue with axial expansion changer in
armi/reactor/reactors.py::Core::processLoading
.Fixed issue in how number densities are initialized for components.
Fixed issue in
armi/cases/case.py::copyInterfaceInputs
Fixed issue in
armi/reactor/components/component.py::getReac
Fixed issue in
armi/reactor/converters/uniformMesh.py
was clearing out unchanged param data.Fixed issue where components were different if initialized through blueprints vs init.
Fixed issue where component mass was conserved in axial expansion instead of density (PR#846)
Fixed issue in
HexBlock::rotatePins
failed to modifypinLocation
param. (#855)Fixed issue in
Core::_applyThermalExpansion
failed to callblock.completeInitiaLoading
. (#885)Fixed issue where a validator would complain both simple and detailed cycles settings were used.
Fixed issue where
getReactionRates()
was not accounting for burnup-dependent cross-sections.
ARMI v0.2.2¶
Release Date: 2022-01-19
What’s new in ARMI v0.2.2¶
Improved type hinting
Flushed out the ability to build the docs as PDF
Material modifications can now be made per-component
The
loadOperator
method now has the optionalallowMissing
argument
ARMI v0.2.1¶
Release Date: 2022-01-13
ARMI v0.2.0¶
Release Date: 2021-11-19
The API has started to solidify, and the number of external-facing changes have started to slow down. This release is a stake in the ground on a stable API.
What’s new in ARMI v0.2.0¶
Made user settings immutable to avoid confusing runtime behavior
Removed the concept of ‘facemaps’ (now replaced with more general grids)
Added ability to use module-level logging for more precise debugging
Added ability to write full tips-up hex asciimaps
Fixed ability to serialize grid blueprints
Improved code coverage and linting
Added a latin hypercube suite builder for parameter sweeps
Added several clarifications, fixes, and updates to documentation
Updated units labels on several parameters
Added protections against deleting directories
Updated spontaneous fission data
Removed confusing Charge Fuel Pool from core
Sped up YAML reading
Removed localization module
Added ANL116 energy group structure
Added setting to control auto-creation of within-block grids
Added new plot/summarizing capabilities
Added ability for GUI to save map as image
Added C5G7 compositions and dimensions to LWR tutorial
Added 1d/2d mesh reading/writing to GEODST
Backwards incompatible changes¶
There may be some new errors based on updated input checking.
Bug fixes¶
Fixed centering of full-symmetry Cartesian lattice maps
Fixed issues with grids that had multii-index locations
Removed test files from coverage check
Fixed order of operations issue in rotatePins
Fixed incorrect multiplicity for non-grid block components
Many additional bugfixes and cleanups (see PR list)