armi.bookkeeping package

The bookkeeping package handles data persistence, reporting, and some debugging.

class armi.bookkeeping.BookkeepingPlugin[source]

Bases: armi.plugins.ArmiPlugin

static exposeInterfaces(cs)[source]

Function for exposing interface(s) to other code.

Returns

Tuples containing:

  • The insertion order to use when building an interface stack,

  • an implementation of the Interface class

  • a dictionary of kwargs to pass to an Operator when adding an instance of the interface class

If no Interfaces should be active given the passed case settings, this should return an empty list.

Return type

list

static defineEntryPoints()[source]

Return new entry points for the ARMI CLI

This hook allows plugins to provide their own ARMI entry points, which each serve as a command in the command-line interface.

Returns

class objects which derive from the base EntryPoint class.

Return type

list

static defineCaseDependencies(case, suite)[source]

Function for defining case dependencies.

Some Cases depend on the results of other Cases in the same CaseSuite. Which dependencies exist, and how they are discovered depends entirely on the type of analysis and active interfaces, etc. This function allows a plugin to inspect settings and declare dependencies between the passed case and any other cases in the passed suite.

Parameters
  • case (Case) – The specific case for which we want to find dependencies.

  • suite (CaseSuite) – A CaseSuite object to which the Case and other potential dependencies belong.

Returns

dependencies – This should return a set containing Case objects that are considered dependencies of the passed case. They should be members of the passed suite.

Return type

set of Cases

static mpiActionRequiresReset(cmd) bool[source]

Prevent reactor resets after certain mpi actions.

  • Memory profiling is small enough that we don’t want to reset

  • distributing state would be undone by this so we don’t want that.

static getReportContents(r, cs, report, stage, blueprint)[source]

Generate general report content. Where diagrams/tables not specific to additional plugins comes together.

Currently only happening at End and Begin stage because no content gathered in these sections is used to create a graph across time.