- dump_pathSyntax path of the action of which to dump the generated syntax
C++ Type:std::string
Description:Syntax path of the action of which to dump the generated syntax
DumpObjectsProblem
Single purpose problem object that does not run the given input but allows deconstructing actions into their series of underlying Moose objects and variables.
Run any input file overriding the Problem/type
parameter to DumpObjectsAction
and setting the Problem/dump_path
parameter to the full _hit_ input file syntax path of an action to dump the individual Moose objects and variables created by the action.
After the parse and setup stage the DumpObjectsProblem
will not execute the input any further. Any objects created and parameters set by the selected action will be dumped to the screen and Moose will halt execution.
Example
The input file two_block_new.i
is a test for the TensorMechanics master action, an action that sets up (aux)variables, (aux)kernels, and materials for mechanics probems. Let's see if we can examine what exactly a particular action block ([./block2]
) in this file sets up.
Compile the tensor_mechanics module executable and run
./tensor_mechanics-opt -i test/tests/action/two_block_new.i Problem/type=DumpObjectsProblem Problem/dump_path=Modules/TensorMechanics/Master/block2
You should obtain the output
[AuxKernels]
[./stress_xx_block2]
type = RankTwoAux
block = 2
execute_on = TIMESTEP_END
index_i = 0
index_j = 0
rank_two_tensor = stress
variable = stress_xx
[../]
[./strain_yy_block2]
type = RankTwoAux
block = 2
execute_on = TIMESTEP_END
index_i = 1
index_j = 1
rank_two_tensor = total_strain
variable = strain_yy
[../]
[]
[AuxVariables]
[./stress_xx]
blocks = '1 2'
family = MONOMIAL
order = CONSTANT
[../]
[./strain_yy]
blocks = '1 2'
family = MONOMIAL
order = CONSTANT
[../]
[]
[Kernels]
[./TM_block20]
type = StressDivergenceTensors
block = 2
component = 0
displacements = 'disp_x disp_y'
use_displaced_mesh = true
variable = disp_x
[../]
[./TM_block21]
type = StressDivergenceTensors
block = 2
component = 1
displacements = 'disp_x disp_y'
use_displaced_mesh = true
variable = disp_y
[../]
[]
[Materials]
[./block2_strain]
type = ComputeFiniteStrain
block = 2
displacements = 'disp_x disp_y'
[../]
[]
[Variables]
[./disp_x]
blocks = '1 2'
[../]
[./disp_y]
blocks = '1 2'
[../]
[]
which is what the
[Modules/TensorMechanics/Master]
# parameters that apply to all subblocks are specified at this level. They
# can be overwritten in the subblocks.
add_variables = true
strain = FINITE
generate_output = 'stress_xx'
[./block1]
# the `block` parameter is only valid insde a subblock.
block = 1
[../]
[./block2]
block = 2
# the `additional_generate_output` parameter is also only valid inside a
# subblock. Values specified here are appended to the `generate_output`
# parameter values.
additional_generate_output = 'strain_yy'
[../]
[]
(../moose/modules/tensor_mechanics/test/tests/action/two_block_new.i)block in this input file creates.
The AuxVariables and AuxKernels are triggered by the generate_outputs
parameter, the Kernels are informed by the choice of coordinate system, as is the finite strain calculator material.
Note that this particular action creates Moose objects only for the selected blocks, while it sets up Moose variables for the set union of all blocks handled by the action.
Input Parameters
- skip_additional_restart_dataFalseTrue to skip additional data in equation system for restart. It is useful for starting a transient calculation with a steady-state solution
Default:False
C++ Type:bool
Description:True to skip additional data in equation system for restart. It is useful for starting a transient calculation with a steady-state solution
- use_nonlinearTrueDetermines whether to use a Nonlinear vs a Eigenvalue system (Automatically determined based on executioner)
Default:True
C++ Type:bool
Description:Determines whether to use a Nonlinear vs a Eigenvalue system (Automatically determined based on executioner)
- error_on_jacobian_nonzero_reallocationFalseThis causes PETSc to error if it had to reallocate memory in the Jacobian matrix due to not having enough nonzeros
Default:False
C++ Type:bool
Description:This causes PETSc to error if it had to reallocate memory in the Jacobian matrix due to not having enough nonzeros
- force_restartFalseEXPERIMENTAL: If true, a sub_app may use a restart file instead of using of using the master backup file
Default:False
C++ Type:bool
Description:EXPERIMENTAL: If true, a sub_app may use a restart file instead of using of using the master backup file
- ignore_zeros_in_jacobianFalseDo not explicitly store zero values in the Jacobian matrix if true
Default:False
C++ Type:bool
Description:Do not explicitly store zero values in the Jacobian matrix if true
- null_space_dimension0The dimension of the nullspace
Default:0
C++ Type:unsigned int
Description:The dimension of the nullspace
- solveTrueWhether or not to actually solve the Nonlinear system. This is handy in the case that all you want to do is execute AuxKernels, Transfers, etc. without actually solving anything
Default:True
C++ Type:bool
Description:Whether or not to actually solve the Nonlinear system. This is handy in the case that all you want to do is execute AuxKernels, Transfers, etc. without actually solving anything
- transpose_null_space_dimension0The dimension of the transpose nullspace
Default:0
C++ Type:unsigned int
Description:The dimension of the transpose nullspace
- near_null_space_dimension0The dimension of the near nullspace
Default:0
C++ Type:unsigned int
Description:The dimension of the near nullspace
Optional Parameters
- control_tagsAdds user-defined labels for accessing object parameters via control logic.
C++ Type:std::vector
Description:Adds user-defined labels for accessing object parameters via control logic.
- enableTrueSet the enabled status of the MooseObject.
Default:True
C++ Type:bool
Description:Set the enabled status of the MooseObject.