Motivation

  • None of the generally available visualization packages currently display higher-order solutions (quadratic, cubic, etc.) natively.
  • To work around this limitation, MOOSE can "oversample" a higher-order solution by projecting it onto a finer mesh of linear elements.
  • Note: This is not mesh adaptivity, nor does it improve the solution's accuracy in general.
  • The following slide shows a sequence of solutions oversampled from a base solution on second-order Lagrange elements.

Input File Syntax

  • Oversampling is handled via the 'refinements' input parameter, which by default is set to zero.
  • To enable oversampling set this to a positive integer
  • The following input file snippet creates an [Exodus II][1] file with two oversample refinements. It also includes a positional offset for the oversampled mesh.
[Outputs]
  console = true
  exodus = true
  [./exodus_oversample]
     type = Exodus
     refinements = 2
     file_base = oversample
     position = '1 2 0'
  [../]
[]

Oversample Example

oversample_0.png
refinements = 0

oversample_1.png
refinements = 1

oversample_2.png
refinements = 2

oversample_3.png
refinements = 3

oversample_4.png
refinements = 4

oversample_5.png
refinements = 5

  • It is important to note that oversampling will not improve the solution!
  • The solution on the left is solved on a "coarse" grid.
  • The solution in the center is the same as on the left, but has been oversampled for visualization purposes.
  • The solution on the right is for the same problem, but solved on a finer mesh (and is therefore closer to the true solution).

oversample_0.png
refinements = 0

oversample_5.png
refinements = 5

oversample_fine_grid.png
"Fine" grid