- postprocessorThe name of the postprocessor
C++ Type:PostprocessorName
Unit:(no unit assumed)
Controllable:No
Description:The name of the postprocessor
PostprocessorSpatialUserObject
The PostprocessorSpatialUserObject
stores a postprocessor value inside a user object such that it gains a spatial position and can be used via spatialValue()
API. This can be useful in a multi-app setup when we need to transfer postprocessor values from sub apps and have them live at a position where the sub-app exists.
Example of a Multi-App Setup
[Mesh<<<{"href": "../../syntax/Mesh/index.html"}>>>]
type = GeneratedMesh
dim = 2
nx = 4
ny = 4
[]
[Functions<<<{"href": "../../syntax/Functions/index.html"}>>>]
[./ic_fn]
type = ParsedFunction<<<{"description": "Function created by parsing a string", "href": "../functions/MooseParsedFunction.html"}>>>
expression<<<{"description": "The user defined function."}>>> = 'x * y'
[../]
[]
[Variables<<<{"href": "../../syntax/Variables/index.html"}>>>]
[./u]
family<<<{"description": "Specifies the family of FE shape functions to use for this variable"}>>> = LAGRANGE
order<<<{"description": "Specifies the order of the FE shape function to use for this variable (additional orders not listed are allowed)"}>>> = FIRST
[../]
[]
[ICs<<<{"href": "../../syntax/ICs/index.html"}>>>]
[./u_ic]
type = FunctionIC<<<{"description": "An initial condition that uses a normal function of x, y, z to produce values (and optionally gradients) for a field variable.", "href": "../ics/FunctionIC.html"}>>>
variable<<<{"description": "The variable this initial condition is supposed to provide values for."}>>> = u
function<<<{"description": "The initial condition function."}>>> = ic_fn
[../]
[./a_ic]
type = ConstantIC<<<{"description": "Sets a constant field value.", "href": "../ics/ConstantIC.html"}>>>
variable<<<{"description": "The variable this initial condition is supposed to provide values for."}>>> = a
value<<<{"description": "The value to be set in IC"}>>> = 1
[../]
[]
[AuxVariables<<<{"href": "../../syntax/AuxVariables/index.html"}>>>]
[./a]
[../]
[]
[Kernels<<<{"href": "../../syntax/Kernels/index.html"}>>>]
[./td]
type = TimeDerivative<<<{"description": "The time derivative operator with the weak form of $(\\psi_i, \\frac{\\partial u_h}{\\partial t})$.", "href": "../kernels/TimeDerivative.html"}>>>
variable<<<{"description": "The name of the variable that this residual object operates on"}>>> = u
[../]
[./rhs]
type = BodyForce<<<{"description": "Demonstrates the multiple ways that scalar values can be introduced into kernels, e.g. (controllable) constants, functions, and postprocessors. Implements the weak form $(\\psi_i, -f)$.", "href": "../kernels/BodyForce.html"}>>>
variable<<<{"description": "The name of the variable that this residual object operates on"}>>> = u
function<<<{"description": "A function that describes the body force"}>>> = 1
[../]
[]
[MultiApps<<<{"href": "../../syntax/MultiApps/index.html"}>>>]
[./sub]
type = TransientMultiApp<<<{"description": "MultiApp for performing coupled simulations with the parent and sub-application both progressing in time.", "href": "../multiapps/TransientMultiApp.html"}>>>
app_type<<<{"description": "The type of application to build (applications not registered can be loaded with dynamic libraries. Parent application type will be used if not provided."}>>> = MooseTestApp
input_files<<<{"description": "The input file for each App. If this parameter only contains one input file it will be used for all of the Apps. When using 'positions_from_file' it is also admissable to provide one input_file per file."}>>> = 'sub.i'
positions<<<{"description": "The positions of the App locations. Each set of 3 values will represent a Point. This and 'positions_file' cannot be both supplied. If this and 'positions_file'/'_objects' are not supplied, a single position (0,0,0) will be used"}>>> = '
0.25 0.25 0
0.75 0.75 0'
execute_on<<<{"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."}>>> = 'initial timestep_end'
[../]
[]
[Transfers<<<{"href": "../../syntax/Transfers/index.html"}>>>]
[./master_to_sub]
type = MultiAppNearestNodeTransfer<<<{"description": "Transfer the value to the target domain from the nearest node in the source domain.", "href": "../transfers/MultiAppNearestNodeTransfer.html"}>>>
to_multi_app<<<{"description": "The name of the MultiApp to transfer the data to"}>>> = sub
source_variable<<<{"description": "The variable to transfer from."}>>> = u
variable<<<{"description": "The auxiliary variable to store the transferred values in."}>>> = a
[../]
[./sub_to_master]
type = MultiAppUserObjectTransfer<<<{"description": "Samples a variable's value in the Parent app domain at the point where the MultiApp is and copies that value into a post-processor in the MultiApp", "href": "../transfers/MultiAppUserObjectTransfer.html"}>>>
from_multi_app<<<{"description": "The name of the MultiApp to receive data from"}>>> = sub
user_object<<<{"description": "The UserObject you want to transfer values from. Note: This might be a UserObject from your MultiApp's input file!"}>>> = fn_uo
variable<<<{"description": "The auxiliary variable to store the transferred values in."}>>> = a
[../]
[]
[Executioner<<<{"href": "../../syntax/Executioner/index.html"}>>>]
type = Transient
dt = 0.1
num_steps = 10
[]
[Outputs<<<{"href": "../../syntax/Outputs/index.html"}>>>]
exodus<<<{"description": "Output the results using the default settings for Exodus output."}>>> = true
[]
(moose/test/tests/userobjects/postprocessor_spatial_user_object/parent.i)[Mesh<<<{"href": "../../syntax/Mesh/index.html"}>>>]
type = GeneratedMesh
dim = 1
xmin = -0.01
xmax = 0.01
[]
[Functions<<<{"href": "../../syntax/Functions/index.html"}>>>]
[./fn]
type = ParsedFunction<<<{"description": "Function created by parsing a string", "href": "../functions/MooseParsedFunction.html"}>>>
expression<<<{"description": "The user defined function."}>>> = 'if(a < 0.8625, 1, 0)'
symbol_names<<<{"description": "Symbols (excluding t,x,y,z) that are bound to the values provided by the corresponding items in the vals vector."}>>> = 'a'
symbol_values<<<{"description": "Constant numeric values, postprocessor names, function names, and scalar variables corresponding to the symbols in symbol_names."}>>> = 'a_avg'
[../]
[]
[Variables<<<{"href": "../../syntax/Variables/index.html"}>>>]
[./u]
family<<<{"description": "Specifies the family of FE shape functions to use for this variable"}>>> = MONOMIAL
order<<<{"description": "Specifies the order of the FE shape function to use for this variable (additional orders not listed are allowed)"}>>> = CONSTANT
[../]
[]
[AuxVariables<<<{"href": "../../syntax/AuxVariables/index.html"}>>>]
[./a]
family<<<{"description": "Specifies the family of FE shape functions to use for this variable"}>>> = MONOMIAL
order<<<{"description": "Specifies the order of the FE shape function to use for this variable (additional orders not listed are allowed)"}>>> = CONSTANT
[../]
[]
[Kernels<<<{"href": "../../syntax/Kernels/index.html"}>>>]
[./td]
type = TimeDerivative<<<{"description": "The time derivative operator with the weak form of $(\\psi_i, \\frac{\\partial u_h}{\\partial t})$.", "href": "../kernels/TimeDerivative.html"}>>>
variable<<<{"description": "The name of the variable that this residual object operates on"}>>> = u
[../]
[./rhs]
type = BodyForce<<<{"description": "Demonstrates the multiple ways that scalar values can be introduced into kernels, e.g. (controllable) constants, functions, and postprocessors. Implements the weak form $(\\psi_i, -f)$.", "href": "../kernels/BodyForce.html"}>>>
variable<<<{"description": "The name of the variable that this residual object operates on"}>>> = u
function<<<{"description": "A function that describes the body force"}>>> = 1
[../]
[]
[Postprocessors<<<{"href": "../../syntax/Postprocessors/index.html"}>>>]
[./fn_pps]
type = FunctionValuePostprocessor<<<{"description": "Computes the value of a supplied function at a single point (scalable)", "href": "../postprocessors/FunctionValuePostprocessor.html"}>>>
function<<<{"description": "The function which supplies the postprocessor value."}>>> = fn
execute_on<<<{"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."}>>> = 'initial timestep_end'
[../]
[./a_avg]
type = ElementAverageValue<<<{"description": "Computes the volumetric average of a variable", "href": "../postprocessors/ElementAverageValue.html"}>>>
variable<<<{"description": "The name of the variable that this object operates on"}>>> = a
[../]
[]
[UserObjects<<<{"href": "../../syntax/UserObjects/index.html"}>>>]
[./fn_uo]
type = PostprocessorSpatialUserObject<<<{"description": "User object (spatial) that holds a postprocessor value.", "href": "PostprocessorSpatialUserObject.html"}>>>
postprocessor<<<{"description": "The name of the postprocessor"}>>> = fn_pps
[../]
[]
[Executioner<<<{"href": "../../syntax/Executioner/index.html"}>>>]
type = Transient
dt = 0.1
[]
(moose/test/tests/userobjects/postprocessor_spatial_user_object/sub.i)Input Parameters
- 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
Controllable:No
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).
- execute_onTIMESTEP_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:TIMESTEP_END
C++ Type:ExecFlagEnum
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.
- execution_order_group0Execution order groups are executed in increasing order (e.g., the lowest number is executed first). Note that negative group numbers may be used to execute groups before the default (0) group. Please refer to the user object documentation for ordering of user object execution within a group.
Default:0
C++ Type:int
Controllable:No
Description:Execution order groups are executed in increasing order (e.g., the lowest number is executed first). Note that negative group numbers may be used to execute groups before the default (0) group. Please refer to the user object documentation for ordering of user object execution within a group.
- force_postauxFalseForces the UserObject to be executed in POSTAUX
Default:False
C++ Type:bool
Controllable:No
Description:Forces the UserObject to be executed in POSTAUX
- force_preauxFalseForces the UserObject to be executed in PREAUX
Default:False
C++ Type:bool
Controllable:No
Description:Forces the UserObject to be executed in PREAUX
- force_preicFalseForces the UserObject to be executed in PREIC during initial setup
Default:False
C++ Type:bool
Controllable:No
Description:Forces the UserObject to be executed in PREIC during initial setup
Execution Scheduling 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:Yes
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
Controllable:No
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.
Advanced Parameters
- prop_getter_suffixAn optional suffix parameter that can be appended to any attempt to retrieve/get material properties. The suffix will be prepended with a '_' character.
C++ Type:MaterialPropertyName
Unit:(no unit assumed)
Controllable:No
Description:An optional suffix parameter that can be appended to any attempt to retrieve/get material properties. The suffix will be prepended with a '_' character.
- use_interpolated_stateFalseFor the old and older state use projected material properties interpolated at the quadrature points. To set up projection use the ProjectedStatefulMaterialStorageAction.
Default:False
C++ Type:bool
Controllable:No
Description:For the old and older state use projected material properties interpolated at the quadrature points. To set up projection use the ProjectedStatefulMaterialStorageAction.