ChangeOverTimePostprocessor

Description

This post-processor computes the change or relative change in a post-processor value over a time step or over the entire transient. The change is computed as (1) where is the relative change at time index , is the value of post-processor at time index , and is the reference value for the change (either the previous time value, , or the initial value, . Relative change is computed as (2) Optionally, the user may specify to return the absolute value of the change.

Example Syntax

The following example demonstrates how this post-processor is used:

# This test tests the ChangeOverTimePostprocessor, which computes the change
# in a postprocessor value with respect to the previous value or with respect to
# the initial value. This test creates a time-dependent function postprocessor
# and then computes its change over a timestep. The FE problem used here is a
# dummy problem and has no effect on the test.

[Mesh]
type = GeneratedMesh
dim = 1
nx = 5
[]

[Variables]
[./u]
[../]
[]

[Kernels]
[./time_derivative]
type = TimeDerivative
variable = u
[../]
[./diff]
type = Diffusion
variable = u
[../]
[]

[BCs]
[./left]
type = DirichletBC
variable = u
boundary = left
value = 0
[../]
[./right]
type = DirichletBC
variable = u
boundary = right
value = 1
[../]
[]

[Executioner]
type = Transient

start_time = 0.0
dt = 1.0
num_steps = 2
[]

[Functions]
[./my_function]
type = ParsedFunction
value = '1 + t * t'
[../]
[]

[Postprocessors]
[./my_postprocessor]
type = FunctionValuePostprocessor
function = my_function
execute_on = 'initial timestep_end'
[../]
[./change_over_time]
type = ChangeOverTimePostprocessor
postprocessor = my_postprocessor
change_with_respect_to_initial = false
execute_on = 'initial timestep_end'
[../]
[]

[Outputs]
file_base = 'change_over_time_previous'
csv = true
[]
(test/tests/postprocessors/change_over_time/change_over_time.i)

Input Parameters

• postprocessorThe name of the postprocessor

C++ Type:PostprocessorName

Options:

Description:The name of the postprocessor

Required Parameters

• execute_onTIMESTEP_ENDThe list of flag(s) indicating when this object should be executed, the available options include NONE, INITIAL, LINEAR, NONLINEAR, TIMESTEP_END, TIMESTEP_BEGIN, FINAL, CUSTOM.

Default:TIMESTEP_END

C++ Type:ExecFlagEnum

Options:NONE INITIAL LINEAR NONLINEAR TIMESTEP_END TIMESTEP_BEGIN FINAL CUSTOM

Description:The list of flag(s) indicating when this object should be executed, the available options include NONE, INITIAL, LINEAR, NONLINEAR, TIMESTEP_END, TIMESTEP_BEGIN, FINAL, CUSTOM.

• take_absolute_valueFalseOption to take absolute value of change

Default:False

C++ Type:bool

Options:

Description:Option to take absolute value of change

• compute_relative_changeFalseCompute magnitude of relative change instead of change

Default:False

C++ Type:bool

Options:

Description:Compute magnitude of relative change instead of change

• change_with_respect_to_initialFalseCompute change with respect to initial value instead of previous value

Default:False

C++ Type:bool

Options:

Description:Compute change with respect to initial value instead of previous value

Optional Parameters

• enableTrueSet the enabled status of the MooseObject.

Default:True

C++ Type:bool

Options:

Description:Set the enabled status of the MooseObject.

• use_displaced_meshFalseWhether or not this object should use the displaced mesh for computation. Note that in the case this is true but no displacements are provided in the Mesh block the undisplaced mesh will still be used.

Default:False

C++ Type:bool

Options:

Description:Whether or not this object should use the displaced mesh for computation. Note that in the case this is true but no displacements are provided in the Mesh block the undisplaced mesh will still be used.

• outputsVector of output names were you would like to restrict the output of variables(s) associated with this object

C++ Type:std::vector

Options:

Description:Vector of output names were you would like to restrict the output of variables(s) associated with this object

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

C++ Type:std::vector

Options:

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

• allow_duplicate_execution_on_initialFalseIn the case where this UserObject is depended upon by an initial condition, allow it to be executed twice during the initial setup (once before the IC and again after mesh adaptivity (if applicable).

Default:False

C++ Type:bool

Options:

Description:In the case where this UserObject is depended upon by an initial condition, allow it to be executed twice during the initial setup (once before the IC and again after mesh adaptivity (if applicable).

• force_preauxFalseForces the GeneralUserObject to be executed in PREAUX

Default:False

C++ Type:bool

Options:

Description:Forces the GeneralUserObject to be executed in PREAUX