- displacementsThe string of displacements suitable for the problem statement
C++ Type:std::vector<VariableName>
Unit:(no unit assumed)
Controllable:No
Description:The string of displacements suitable for the problem statement
- pressureCoupled variable containing the pressure
C++ Type:std::vector<VariableName>
Unit:(no unit assumed)
Controllable:No
Description:Coupled variable containing the pressure
Coupled Pressure Action System
Set up pressure boundary condition using the CoupledPressureBC object.
Description
The Coupled Pressure Action, given in the input file as simply CoupledPressureBC
, is designed to simplify the input file when several variables have the same pressure boundary condition magnitude applied in the normal component. Transfer of pressure variable from an multi-app is a good example of a use case for the Coupled Pressure Action.
Constructed MooseObjects
The Coupled Pressure Action is used to construct only the Coupled Pressure boundary condition.
Table 1: Correspondence Among Action Functionality and MooseObjects
Functionality | Replaced Classes | Associated Parameters |
---|---|---|
A pressure traction force given by a variable | Coupled Pressure BC | displacements : a string of the displacement variables to which the Coupled Pressure BC should be applied |
pressure : a variable prescribing the pressure to be applied |
The Pressure Action only applies the pressure traction in the same component direction as the displacements
variables are listed. That is, for the argument displacements = 'disp_x disp_y disp_z'
, the Pressure Action will create three separate Pressure BCs:
For the variable
disp_x
, the parameter settingcomponent = 0
is usedFor the variable
disp_y
, the parameter settingcomponent = 1
is usedFor the variable
disp_z
, the parameter settingcomponent = 2
is used
Note that the location of each of the variables in the displacements
string determines the value of the corresponding component.
Example Input Syntax
[./CoupledPressure]
[./Side1]
boundary = '1'
pressure = pressure_1
displacements = 'disp_x disp_y disp_z'
[../]
[./Side2]
boundary = '2'
pressure = pressure_2
displacements = 'disp_x disp_y disp_z'
[../]
[../]
(moose/modules/solid_mechanics/test/tests/coupled_pressure/coupled_pressure_test.i)Input Parameters
- active__all__ If specified only the blocks named will be visited and made active
Default:__all__
C++ Type:std::vector<std::string>
Controllable:No
Description:If specified only the blocks named will be visited and made active
- boundaryThe list of boundaries (ids or names) from the mesh where this object applies
C++ Type:std::vector<BoundaryName>
Controllable:No
Description:The list of boundaries (ids or names) from the mesh where this object applies
- enableTrueSet the enabled status of the BCs created by the Pressure action (defaults to true).
Default:True
C++ Type:bool
Controllable:Yes
Description:Set the enabled status of the BCs created by the Pressure action (defaults to true).
- inactiveIf specified blocks matching these identifiers will be skipped.
C++ Type:std::vector<std::string>
Controllable:No
Description:If specified blocks matching these identifiers will be skipped.
- use_automatic_differentiationFalseFlag to use automatic differentiation (AD) objects when possible
Default:False
C++ Type:bool
Controllable:No
Description:Flag to use automatic differentiation (AD) objects when possible
- 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. For small strain formulations pressure should be applied to the undisplaced mesh to obtain agreement with analytical benchmark solutions.
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. For small strain formulations pressure should be applied to the undisplaced mesh to obtain agreement with analytical benchmark solutions.
Optional Parameters
- absolute_value_vector_tagsThe tags for the vectors this residual object should fill with the absolute value of the residual contribution
C++ Type:std::vector<TagName>
Controllable:No
Description:The tags for the vectors this residual object should fill with the absolute value of the residual contribution
- extra_vector_tagsThe extra tags for the vectors this Kernel should fill
C++ Type:std::vector<TagName>
Controllable:No
Description:The extra tags for the vectors this Kernel should fill
- save_in_disp_xThe save_in variables for x displacement
C++ Type:std::vector<AuxVariableName>
Unit:(no unit assumed)
Controllable:No
Description:The save_in variables for x displacement
- save_in_disp_yThe save_in variables for y displacement
C++ Type:std::vector<AuxVariableName>
Unit:(no unit assumed)
Controllable:No
Description:The save_in variables for y displacement
- save_in_disp_zThe save_in variables for z displacement
C++ Type:std::vector<AuxVariableName>
Unit:(no unit assumed)
Controllable:No
Description:The save_in variables for z displacement
Residual Output 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.
Advanced Parameters
Associated Actions
Available Actions
- Solid Mechanics App
- CoupledPressureActionSet up pressure boundary condition using the CoupledPressureBC object.