XDMFTensorOutput

Output a tensor in XDMF format.

This TensorOutput object writes tensors to an XDMF data file set. The parameter "enable_hdf5" enables writing of the raw tensor data to an HDF5 file. The resulting data items will be bamed /var.n, where var is the name of the exported tensor and n is the simulation step. Output as cell or node centered data is supported and can be selected using the "output_mode" parameter. Cell centered output results in a value per simulation grid cell (e.g. N[0] * N[1] * N[2] entries), while for node centered output the cell edge nodes are periodically replicated, resulting in (N[0]+1) * (N[1]+1) * (N[2]+1) exported entries.

commentnote:Parallel limitation

When running with more than one MPI rank, this output currently supports only CELL mode. Each rank writes its local data to rank-suffixed files and rank 0 emits the global XDMF collection that references those blocks.

commentnote:Asynchronous output

Output is written in a separate thread while the simulation continues. When "enable_hdf5" is set and the HDF5 library is not thread-safe, the output is written synchronously instead, as its HDF5 calls would otherwise race with other HDF5 users in the process (such as the Exodus output through netCDF).

Overview

Writes one or more buffers selected by "buffer" to an XDMF/HDF5 pair suitable for Paraview or Visit. Enable HDF5 with "enable_hdf5" and select cell or node data with "output_mode".

Example Input File Syntax

[TensorOutputs<<<{"href": "../../syntax/TensorOutputs/index.html"}>>>]
  [xdmf2]
    type = XDMFTensorOutput<<<{"description": "Output a tensor in XDMF format.", "href": "XDMFTensorOutput.html"}>>>
    buffer<<<{"description": "The buffers to output"}>>> = 'rho u speed binary_media'
    output_mode<<<{"description": "Output as cell or node data"}>>> = 'Cell Cell Cell Cell'
    enable_hdf5<<<{"description": "Use HDF5 for binary data storage."}>>> = true
  []
[]
(examples/lbm/Karman-vortex/cylinder.i)

Input Parameters

  • bufferThe buffers to output

    C++ Type:std::vector<std::string>

    Controllable:No

    Description:The buffers to output

Required Parameters

  • enable_hdf5FalseUse HDF5 for binary data storage.

    Default:False

    C++ Type:bool

    Controllable:No

    Description:Use HDF5 for binary data storage.

  • execute_onINITIAL TIMESTEP_ENDThe list of flag(s) indicating when this object should be executed. For a description of each flag, see https://mooseframework.inl.gov/source/interfaces/SetupInterface.html.

    Default:INITIAL TIMESTEP_END

    C++ Type:ExecFlagEnum

    Options:INITIAL, TIMESTEP_END

    Controllable:No

    Description:The list of flag(s) indicating when this object should be executed. For a description of each flag, see https://mooseframework.inl.gov/source/interfaces/SetupInterface.html.

  • file_baseThe desired solution output name without an extension. If not provided, MOOSE sets it with Outputs/file_base when available. Otherwise, MOOSE uses input file name and this object name for a master input or uses master file_base, the subapp name and this object name for a subapp input to set it.

    C++ Type:std::string

    Controllable:No

    Description:The desired solution output name without an extension. If not provided, MOOSE sets it with Outputs/file_base when available. Otherwise, MOOSE uses input file name and this object name for a master input or uses master file_base, the subapp name and this object name for a subapp input to set it.

  • hdf5_compressionTrueEnable DEFLATE compression for HDF5 datasets.

    Default:True

    C++ Type:bool

    Controllable:No

    Description:Enable DEFLATE compression for HDF5 datasets.

  • output_modeOutput as cell or node data

    C++ Type:MultiMooseEnum

    Options:CELL, NODE, OVERSIZED_NODAL

    Controllable:No

    Description:Output as cell or node data

  • transposeTrueThe Paraview XDMF reader swaps x-y (x-z in 3d), so we transpose the tensors before we output to make the data look right in Paraview.

    Default:True

    C++ Type:bool

    Controllable:No

    Description:The Paraview XDMF reader swaps x-y (x-z in 3d), so we transpose the tensors before we output to make the data look right in Paraview.

Optional Parameters

  • control_tagsAdds user-defined labels for accessing object parameters via control logic.

    C++ Type:std::vector<std::string>

    Controllable:No

    Description:Adds user-defined labels for accessing object parameters via control logic.

  • enableTrueSet the enabled status of the MooseObject.

    Default:True

    C++ Type:bool

    Controllable:No

    Description:Set the enabled status of the MooseObject.

Advanced Parameters

Input Files