Output Enhancement

The ability to control when output occurs has been enhanced and now is consistent with other objects in MOOSE that utilize the "execute_on" parameter (e.g., UserObject).

The existing method for controlling when output occurs utilized boolean flags such as "output_initial" and "output_final", this syntax will be removed in the near future.

The new syntax utilizes a single "output_on" parameter as follows that accepts a vector of output timing key words.

output_on = 'initial failed timestep_end'

The complete list of available options for the "output_on" parameter is included in the Output System documentation.

With this change the underlying class structure has also changed and two output base classes now exist: BasicOutput and AdvancedOutput. If an output is "advanced", as is the case for Exodus output, additional control exists for the various types of outputs. For example, an Exodus output block could look as follows.

    type = Exodus
    output_on = 'initial timestep_end'
    output_postprocessors_on = 'initial timestep_end nonlinear'

This example utilizes the 'output_on' to control all components to output on the initial condition and at each timestep. It also enables postprocessors to output on every nonlinear iteration as well.

This type of control exists for all available output components, see the Output System documentation for further details.

Currently unrated


There are currently no comments

New Comment


required (not published)


R&D 100

Recent Blog Posts

Using our new clang-format Style

1 month, 2 weeks ago

Steady State Algorithm Change

10 months, 3 weeks ago

Making an App inherit from an App

11 months ago

Changing a published API (Deprecation)

11 months, 1 week ago

DiscreteMaterial Objects

1 year, 1 month ago

Recent Posts






RSS / Atom