Skip to content

Releases: terrapower/armi

Release of ARMI 0.6.2

18 Dec 22:49
95d94a4

Choose a tag to compare

Release Date: 2025-12-17

This was a minor release. There was a refactoring cleanup done to NulcideBases. And there were some very minor API-breaking changes to the HistoryTrackerInterface and Interface.function was renamed to Interface.purpose. The coolest new feature is the improvements made to loadTestReactor, which can now cache a variety of test reactors to improve your test performance.

Code Changes, Features

  • PR#2335 Moving to use Reactor.nuclideBases, where possible
  • PR#2374 Changing MPI_COMM to the Pickle Protocol 5

Code Changes, Bugs and Fixes

  • PR#2364 Fixing HoledHexagon.holeRadFromCenter type

Code Changes, Maintenance, or Trivial

  • PR#2177 Changing Interface.function to Interface.purpose
  • PR#2334 Refactoring loadTestReactor to pickle multiple test reactors
  • PR#2358 Adding code coverage
  • PR#2359 Cleaning up DB version logic
  • PR#2360 Cleaning out broken tryPickleOnAllContents3
  • PR#2366 Raising instead of returning errors
  • PR#2369 Moving three test reactors to the testing module
  • PR#2371 Moving more ARMI testing tools to the testing module
  • PR#2375 Cleaning unused parts of HistoryTrackerInterface
  • PR#2387 Removing Five Unused Settings
  • PR#2389 Improving HexBlock.hasPinPitch

Documentation-Only Changes

  • PR#2351 Updating PR form to use the word Rationale
  • PR#2363 Starting 0.6.2 release cycle
  • PR#2365 Improving and correcting the ARMI version semantics
  • PR#2367 Formatting code in docstrings
  • PR#2372 Documenting database cycle and node values
  • PR#2373 Fixing docs deploying across GitHub repos
  • PR#2383 Clarifying parameter doc headers
  • PR#2388 Updating SCR to use the term Rationale

Release of ARMI 0.6.1

12 Nov 16:34
cfeae12

Choose a tag to compare

Release Date: 2025-11-05

This was a minor release. While a lot of technical debt was address, no major feature work was done. There were some minor bugs fixed, but again nothing worth a release. This is being tagged as a release because the API is stable and this commit was tested heavily downstream and is trustworthy.

Code Changes, Features

  • PR#2303 Encapsulating global nuclide data in classes
  • PR#2317 Simplify thermal scattering
  • PR#2320 Providing interface method interactRestart for managing restarts
  • PR#2321 Adding Core.hasLib to check if there is a XS library
  • PR#2323 Enabling user-specified distribution of MPI actions across nodes
  • PR#2324 Adding orientationBOL to full core modifier
  • PR#2325 Creating a new setting to specify memory requirement for cross section calculation
  • PR#2344 Changing default for guideTubeTopElevation to zero

Code Changes, Bugs and Fixes

  • PR#2328 Ensuring that users define isotopics for custom materials
  • PR#2331 Resolve TEST_ROOT path
  • PR#2336 Checking number of jobs against available ranks in runBatchedActions
  • PR#2347 Fixing missing f-string in component blueprints
  • PR#2350 Fixing compareLines for a multiple numbers edge case

Code Changes, Maintenance, or Trivial

  • PR#2306 Removing volume from getMgFlux()
  • PR#2309 Moving plotting functions into utils module
  • PR#2310 Removing unnecessary code from Assembly.getBlocksBetweenElevations
  • PR#2315 Moving some testing utils to testing module
  • PR#2327 Adding a unit test to HexGrid.generateSortedHexLocationList
  • PR#2348 Make singleMixedAssembly more flexible for downstream testing

Documentation-Only Changes

  • PR#2250 Logging redundant material modifications
  • PR#2280 Improving the new shuffling docs
  • PR#2311 Starting the ARMI 0.6.1 release cycle
  • PR#2312 Updating XS group manager requirements
  • PR#2314 Documenting ARMI’s testing tools for devs
  • PR#2332 Adding settings header to the settings YAML
  • PR#2337 Fixing docs build
  • PR#2339 Adding contributor to SCR doc automation script
  • PR#2342 Documenting how to use the zonesFile Setting
  • PR#2343 Improving documentation for zoneDefinions Setting
  • PR#2354 Clarifying that ARMI materials are of testing quality

Release of ARMI 0.6.0

30 Sep 18:56
7486ca0

Choose a tag to compare

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.

Code Changes, Features

  • PR#1995 Improving HexBlock.getFlowArea
  • PR#2031 Providing better composite iteration methods
  • PR#2045 Adding a check on the grid/component consistency in the BPs
  • PR#2092 Allowing ARMI to use tmp dir on Mac/Linux
  • PR#2105 Removing support for XML geom files
  • PR#2106 Add Core.iterBlocks and Assembly.iterBlocks
  • PR#2107 Handing empty string defaults better in copyInterfaceInputs
  • PR#2109 Store number densities in numpy arrays instead of dictionary
  • PR#2114 Allowing component area to be queried at arbitrary temp
  • PR#2118 Adding a FilletedHexagon shape
  • PR#2121 Supporting growing DBto full core on db load
  • PR#2135 Retooling single-warnings report as all warnings report
  • PR#2138 Allowing the BOL orientations to be set in the blueprints
  • PR#2162 Make axial linking aware of block grids for axial expansion
  • PR#2173 Improving Core.libs to look for the current cycle and node
  • PR#2175 Blocking duplicate flags from being added
  • PR#2198 Updating Axial Expansion Changer for improved mass redistribution
  • PR#2199 Add 3 nuclides to getDefaultNuclideFlags
  • PR#2202 Provide Component.pinIndices for helping understand where pins are
  • PR#2208 Making ParamMapper symmetry-aware
  • PR#2209 Block collection nuclides
  • PR#2218 Adding a method to get cycle/node combinations for a time interval
  • PR#2219 Refactoring Shuffle Logic Inputs to YAML
  • PR#2221 Update logic for number density arrays and other cleanup
  • PR#2223 Move the zonesFile setting to the framework and add building of zones to the interface stack
  • PR#2225 Advancing r.p.time in the Operator
  • PR#2227 Symmetry testing
  • PR#2233 Remove axialPowerProfile* parameters
  • PR#2235 Adding two geometry parameters
  • PR#2243 Updating wetted perimeter calculation
  • PR#2251 Comparing special formatting parameters in DBs
  • PR#2255 Add b10NumFrac attribute to B4C class to allow for flexible setDefaultMassFracs
  • PR#2266 Allow assembly parameters to be symmetry aware during core transformations and move operations
  • PR#2269 Track assemblies if discharged to SFP
  • PR#2272 Adding new Component param enrichmentBOL
  • PR#2275 Cleaning internal state out of some materials
  • PR#2277 Enhance fuel handler logic to support module imports
  • PR#2278 Adding support for moving assemblies from SFP to Core in YAML shuffle input
  • PR#2292 Support mixed Blocks for smear density calculation
  • PR#2305 Raising error if no driverBlock is found by latticePhysicsWriter

Code Changes, Bugs and Fixes

  • PR#1654 Use clearer input syntax for hexagonal lattice pitch
  • PR#1998 Fixing a couple of plots to use initial block height
  • PR#2098 Removing the HTML reports feature
  • PR#2102 Fixing issue in copyInterfaceInputs with one file
  • PR#2111 fix side effects from tests
  • PR#2115 Adding Reactor construction hook to Database.load()
  • PR#2120 Cylindrical Cross Section model updates
  • PR#2129 OperatorMPI doesn’t need to bcast quits if there no other workers
  • PR#2153 Hiding duplicate warning messages
  • PR#2160 Fixing bad Return in safeCopy
  • PR#2163 Using gamma groups instead of neutron groups in gamiso.addDummyNuclidesToLibrary
  • PR#2176 Using np.int32 when reading GEODST files
  • PR#2180 Remove assert statements from FilletedHexagon instantiation
  • PR#2186 Ensuring full core BPs aren’t converted like 1/3 core
  • PR#2187 Fixing bug in Uranium.pseudoDensity
  • PR#2189 Fixing bug in finding ISOTXS libraries to merge
  • PR#2191 Fixing issue with full core BP geometry conversion
  • PR#2195 Fixing round trip of hex lattice maps
  • PR#2226 Fix equality of MultiIndexLocator and CoordinateLocation
  • PR#2228 Fixing bug in Air.pseudoDensity when given Celsius T
  • PR#2229 Change initialization of modArea for database load
  • PR#2231 Fixing issue initial time node in previous PR
  • PR#2236 Handle pinIndices for blocks that don’t have fuel
  • PR#2245 Fixing invalid any() signature
  • PR#2248 Fixing issue loading from snapshots database
  • PR#2253 Making a unit test thread safe
  • PR#2259 Re-assigning pin indices when sorting a Block
  • PR#2260 Fixing compareLines so that it doesn’t trip on zeros
  • PR#2268 Fixing Uranium enrichment calculations
  • PR#2276 Fixing Composite.extend to correctly set the parent
  • PR#2282 Fixing incorrect variable name in Pitch class
  • PR#2291 Conserve molesHmBOL / massHmBOL when performing axial expansion
  • PR#2294 Ensuring settings file can be found when writing one DB from another
  • PR#2298 Preserve loading of CoordinateLocation in db load
  • PR#2302 Handle pin indices for fuel + non fuel on the same grid
  • PR#2307 Clearing out Component.p.pinIndices prior to assignment

Code Changes, Maintenance, or Trivial

  • PR#1386 Improve “smallRun” settings names
  • PR#2085 Dropping black formatter for ruff
  • PR#2093 Speed up axial expansion unit tests
  • PR#2096 Fixing spelling errors
  • PR#2103 Fixing spelling in docs and docstrings
  • PR#2104 Removing defunct references to Cinder
  • PR#2110 Combining three .gitignore files into one
  • PR#2116 Cleaning up the codeTiming reports
  • PR#2117 Reducing the warnings from Block.autoCreateSpatialGrids
  • PR#2123 Removing permanently skipped tests
  • PR#2126 Removing old TODO comments from the codebase
  • PR#2127 Removing 3 unused Settings
  • PR#2128 Created a fast flux ene...
Read more

Release of ARMI 0.5.1

14 Mar 20:08
e263c26

Choose a tag to compare

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.

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

API Changes

  • Removing Database3 from the API, use Database. PR#2052

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

Quality Work

  • Open-Sourcing the ARMI requirements. PR#2076
  • Significant revamp of the ARMI requirements. PR#2074
  • Adding PDF versions of the ARMI docs. PR#2072
  • Update docs build to occur with python 3.13 and updated docs dependencies. PR#2050
  • Removing silent overwrite of shutil.copy. PR#2081

Release of ARMI 0.5.0

17 Dec 23:03
c078cde

Choose a tag to compare

Release Date: 2024-12-14

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 to armi.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 and getFileSHA1Hash 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 to CompareCases CLI. PR#1842
  • Exposing skip inspection options for armi.init and db.loadOperator. PR#2005
  • Exposing detailedNDens to components. PR#1954
  • Adding a method getPinMgFluxes to get pin-wise multigroup fluxes from a Block. PR#1990

API Changes

  • nuclideBases.byMcc3ID and getMcc3Id() return IDs consistent with ENDF/B-VII.1. PR#1982
  • Moving settingsValidation from operators to settings. PR#1895
  • Allowing for unknown Flags when opening a DB. PR#1844
  • Renaming Reactor.moveList to Reactor.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 to True. PR#1968
  • Removing Assembly.rotatePins and Block.rotatePins. Prefer Assembly.rotate and Block.rotate. PR#1846
  • Removing broken plot buVsTime. PR#1994
  • Removing class AssemblyList and assemblyLists.py. PR#1891
  • Removing class globalFluxInterface.DoseResultsMapper. PR#1952
  • Removing class SmartList. PR#1992
  • Removing flags CORE and REACTOR. 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 renaming numProcessors to nTasks. 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 and getOptimalAssemblyOrientation to have pin-level burnup. PR#2019

Bug Fixes

  • Fixed spatial grids of pins in Blocks on flats-up grids. PR#1947
  • Fixed DerivedShape.getArea for cold=True. PR#1831
  • Fixed error parsing command line integers in ReportsEntryPoint. PR#1824
  • Fixed PermissionError when using syncDbAfterWrite. PR#1857
  • Fixed MpiDirectoryChanger. PR#1853
  • Changed data type of thKernel setting from bool to str in ThermalHydraulicsPlugin. 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

Quality Work

  • Removing deprecated code axialUnitGrid. PR#1809
  • Refactoring axialExpansionChanger. PR#1861
  • Raising a ValueError when Database.load() fails. PR#1940
  • Making axial expansion-related classes more extensible. PR#1920

Release version 0.4.0

26 Aug 21:55
bd0b43a

Choose a tag to compare

ARMI v0.4.0

Release Date: 2024-08-14

What's new in ARMI

  • Conserve mass by component in assembly.setBlockMesh(). PR#1665
  • Removal of the Block.reactor property. PR#1425
  • System information is now also logged on Linux. PR#1689
  • Reset Reactor data on worker processors after every interaction to free memory from state distribution.
    [PR#1729](https://github.com/terrapower/armi/pull/1729>`_ and `PR#1750](#1750)
  • Density can be specified for components via custom isotopics in the blueprints. PR#1745
  • Implement a new JaggedArray class that handles HDF5 interface for jagged data. PR#1726

API Changes

  • Replacing the concrete material with a better reference. PR#1717
  • Adding more detailed time information to logging. PR#1796
  • Renaming structuredgrid.py to camelCase. PR#1650
  • Removing unused argument from Block.coords(). PR#1651
  • Removing unused method HexGrid.allPositionsInThird(). PR#1655
  • Removed unused methods: Reactor.getAllNuclidesIn(), plotTriangleFlux(). PR#1656
  • Removed armi.utils.dochelpers; not relevant to nuclear modeling. PR#1662
  • Removing old tools created to help people convert to the current database format: armi.bookkeeping.db.convertDatabase() and ConvertDB. PR#1658
  • Removing the unused method Case.buildCommand(). PR#1773
  • Removed the variable armi.physics.neutronics.isotopicDepletion.ORDER. PR#1671
  • Removing extraneous ArmiOjbect methods. PR#1667
    • Moving ArmiObject.getBoronMassEnrich() to Block.
    • Moving ArmiObject.getPuMoles() to Block.
    • Moving ArmiObject.getUraniumMassEnrich() to Block.
    • Removing ArmiObject.getMaxUraniumMassEnrich.().
    • Removing ArmiObject.getMaxVolume() & Block.getMaxVolume().
    • Removing ArmiObject.getPuFrac().
    • Removing ArmiObject.getPuMass().
    • Removing ArmiObject.getPuN().
    • Removing ArmiObject.getZrFrac().
    • Removing ArmiObject.printDensities().
    • Moving Composite.isOnWhichSymmetryLine() to Assembly.
    • Removing Block.isOnWhichSymmetryLine().
  • Removing the Block.reactor property. PR#1425
  • Moving several ArmiObject methods. PR#1425
    • Moving ArmiObject.getNeutronEnergyDepositionConstants to Block.
    • Moving ArmiObject.getGammaEnergyDepositionConstants to Block.
    • Moving ArmiObject.getTotalEnergyGenerationConstants to Block.
    • Moving ArmiObject.getFissionEnergyGenerationConstants to Block.
    • Moving ArmiObject.getCaptureEnergyGenerationConstants to Block.
  • Removing the parameter rdIterNum. PR#1704
  • Removing the parameters outsideFuelRing and outsideFuelRingFluxFr. PR#1700
  • Removing the setting doOrificedTH. PR#1706
  • Changing the Doppler constant params to VOLUME_INTEGRATED. PR#1659
  • Change Operator._expandCycleAndTimeNodeArgs to be a non-static method. PR#1766
  • Database now writes state at the last time node of a cycle rather than during the DatabaseInterface.interactEOC interaction. PR#1090

Bug fixes

  • Fixed four bugs with "corners up" hex grids. PR#1649
  • Fixed safeCopy to work on both Windows and Linux with strict permissions PR#1691
  • When creating a new XS group, inherit settings from initial group. [PR#1653](https://github.com/terrapower/armi/pull/1653>`_, `PR#1751](#1751)
  • Fixed a bug with Core.getReactionRates. PR#1771
  • Fixed a bug with interactive versus batch mode checking on windows versus linux. PR#1786

Quality Work

  • Creating a single-block test reactor, to speed up unit tests. PR#1737
  • Supporting MacOS in CI. PR#1713
  • We now enforce a maximum line length of 120 characters, using ruff. PR#1646
  • Updating ruff to version 0.5.1. PR#1770
  • Move .coveragerc file information into pyproject.toml. PR#1692

Changes that Affect Requirements

  • Very minor change to Block.coords(), removing unused argument. PR#1651
  • Touched HexGrid by adding a "cornersUp" property and fixing two bugs. PR#1649
  • Very slightly modified the implementation of Assembly.add(). PR#1670

Release version 0.3.0

06 Feb 17:30
0668e8c

Choose a tag to compare

ARMI v0.3.0

Release Date: 2024-02-02

What's new in ARMI

  • The _copyInputsHelper() gives relative path and not absolute after copy. PR#1416
  • Attempt to set representative block number densities by component if possible. PR#1412
  • Use functools to preserve function attributes when wrapping with codeTiming.timed PR#1466
  • Remove a number of deprecated block, assembly, and core parameters related to a defunct internal plugin.

Bug fixes

  • StructuredGrid.getNeighboringCellIndices() was incorrectly implemented for the second neighbor. PR#1614

Quality Work

  • ARMI now mandates ruff linting. PR#1419
  • Many new references to requirement tests and implementations were added to docstrings.
  • Removed all old ARMI requirements, to start the work fresh. PR#1438
  • Downgrading Draft PRs as policy. PR#1444

Release version 0.2.9

28 Sep 20:53
2326990

Choose a tag to compare

ARMI v0.2.9

Release Date: 2023-09-27

What's new in ARMI

  • Moved the Reactor assembly number from the global scope to a Parameter. PR#1383
  • Removed the global CaseSettings object, getMasterCs(), and setMasterCs(). PR#1399
  • Moved the Spent Fuel Pool (sfp) from the Core to the Reactor. PR#1336
  • Made the sfp a child of the Reactor so it is stored in the database. PR#1349
  • Broad cleanup of Parameters: filled in all empty units and descriptions, removed unused params. PR#1345
  • Updated some parameter definitions and defaults. PR#1355
  • Removed redundant Material.name variable. PR#1335
  • Added powerDensity as a high-level alternative to power to configure a Reactor. PR#1395
  • Added SHA1 hashes of XS control files to the welcome text. PR#1334

Build changes

  • Moved from setup.py to pyproject.toml. PR#1409
  • Added Python 3.11 to ARMI's CI on GH actions. PR#1341
  • Updated black to version 22.6. PR#1396

Bug fixes

  • Fixed _processIncludes() to handle StringIO input. PR#1333
  • Fixed logic for computing thermal expansion factors for axial expansion. PR#1342

Release version 0.2.8

22 Jun 16:26
6cf9558

Choose a tag to compare

ARMI v0.2.8

Release Date: 2023-06-21

What's new in ARMI

  • Added Composite.sort() to allow the user to recursively sort any part of the Reactor. PR#1280
  • Switching from pylint to the ruff linter. PR#1296
  • Move cross section group manager Interface stack position to be just before lattice physics. PR#1288
  • Add interactCoupled method for SnapshotInterface. PR#1294
  • Calculate weighted-average percent burnup of BlockCollections. PR#1265
  • Add method sortAssemsByRing to sort Reactor assemblies by spatial location (interior first) PR#1320

Bug fixes

  • Changed units.FLOAT_DIMENSION_DECIMALS from 10 to 8. PR#1183
  • Improved HexBlock.getWettedPerimeter() to include wire. PR#1299
  • Fixed a bug in the ISOTXS file name used for snapshots. PR#1277
  • Fix a bug in uniform mesh decusping when assemblies of same type have drastically different height. PR#1282
  • Sort Components on representativeBlock for consistency check. PR#1275

Release version 0.2.7

24 May 21:41
328458c

Choose a tag to compare

ARMI v0.2.7

What's new in ARMI

  • The method Material.density3 is now called density, and the old density is now called pseudoDensity. PR#1163
  • Removed metadata setting section, and created versions. PR#1274
  • Remove unused HCFcoretype setting. PR#1179
  • Use minimumNuclideDensity setting when generating macroscopic XS. PR#1248
  • Introduce new LatticePhysicsFrequency setting to control lattice physics calculation. PR#1239
  • Added new setting assemFlagsToSkipAxialExpansion to enable users to list flags of assemblies to skip axial expansion. PR#1235
  • Added documentation for the thermal expansion approach used in ARMI. PR#1204
  • Use TemporaryDirectoryChanger for executer.run() so dirs are cleaned up during run. PR#1219
  • New option copyOutput for globalFluxInterface to not copy output back to working directory. PR#1218, PR#1227
  • Executer class has a dcType attribute to define the type of DirectoryChanger it will use. PR#1228
  • Enabling one-way (upwards) axial expansion of control assemblies. PR#1226
  • Implement control rod decusping option for uniform mesh converter. PR#1229
  • createRepresentativeBlocksFromExistingBlocks now returns the mapping of original to new XS IDs. PR#1217
  • Added a capability to prioritize MpiAction execution and exclusivity. PR#1237
  • Improve support for single component axial expansion and general cleanup of axial expansion unit tests. PR#1230
  • New cross section group representative block type for 1D cylindrical models. PR#1238
  • Store the axial expansion target component name as a block parameter. PR#1256
  • When using non-uniform mesh, detailed fission/activation products have cross sections generated to avoid blocks without xs data. PR#1257
  • Made sure all material classes could be resolved via name. PR#1270
  • Read flux directly from output into Gamma uniform mesh instead of mapping it in from block params. PR#1213
  • Forced GAMISO/PMATRX file path extensions to be lower case for linux support. PR#1216

Bug fixes

  • Fixed a bug in database comparison. PR#1258
  • Fixed an invalid assumption on the lattice physics and cross section manager interfaces when using tight coupling for snapshot runs. PR#1206
  • Fixed a bug where the precision used to determine the axial submesh was too small. PR#1225