https://mooseframework.inl.gov
contact
include
actions
ExplicitDynamicsContactAction.h
Go to the documentation of this file.
1
//* This file is part of the MOOSE framework
2
//* https://mooseframework.inl.gov
3
//*
4
//* All rights reserved, see COPYRIGHT for full restrictions
5
//* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6
//*
7
//* Licensed under LGPL 2.1, please see LICENSE for details
8
//* https://www.gnu.org/licenses/lgpl-2.1.html
9
10
#pragma once
11
12
#include "
Action.h
"
13
#include "
MooseTypes.h
"
14
#include "
MooseEnum.h
"
15
16
enum class
ExplicitDynamicsContactModel
17
{
18
FRICTIONLESS
,
19
FRICTIONLESS_BALANCE
20
};
21
26
class
ExplicitDynamicsContactAction
:
public
Action
27
28
{
29
public
:
30
static
InputParameters
validParams
();
31
32
ExplicitDynamicsContactAction
(
const
InputParameters
& params);
33
34
virtual
void
act
()
override
;
35
40
static
MooseEnum
getModelEnum
();
41
46
static
InputParameters
commonParameters
();
47
48
protected
:
50
std::vector<std::pair<BoundaryName, BoundaryName>>
_boundary_pairs
;
51
53
const
ExplicitDynamicsContactModel
_model
;
54
56
typedef
std::vector<VariableName>
CoupledName
;
57
59
const
bool
_verbose
;
60
61
private
:
65
void
addNodeFaceContact
();
69
void
addContactPressureAuxKernel
();
70
};
ExplicitDynamicsContactAction::addContactPressureAuxKernel
void addContactPressureAuxKernel()
Add single contact pressure auxiliary kernel for various contact action objects.
Definition:
ExplicitDynamicsContactAction.C:290
Action.h
ExplicitDynamicsContactAction::_model
const ExplicitDynamicsContactModel _model
Contact model type enum.
Definition:
ExplicitDynamicsContactAction.h:53
MooseEnum.h
ExplicitDynamicsContactAction::validParams
static InputParameters validParams()
Definition:
ExplicitDynamicsContactAction.C:41
ExplicitDynamicsContactAction::ExplicitDynamicsContactAction
ExplicitDynamicsContactAction(const InputParameters ¶ms)
Definition:
ExplicitDynamicsContactAction.C:78
ExplicitDynamicsContactAction::addNodeFaceContact
void addNodeFaceContact()
Generate constraints for node to face contact.
Definition:
ExplicitDynamicsContactAction.C:335
Action
ExplicitDynamicsContactAction::commonParameters
static InputParameters commonParameters()
Define parameters used by multiple contact objects.
Definition:
ExplicitDynamicsContactAction.C:413
InputParameters
MooseTypes.h
ContactModel::FRICTIONLESS
ExplicitDynamicsContactAction::act
virtual void act() override
Definition:
ExplicitDynamicsContactAction.C:94
MooseEnum
ExplicitDynamicsContactAction::_boundary_pairs
std::vector< std::pair< BoundaryName, BoundaryName > > _boundary_pairs
Primary/Secondary boundary name pairs for mechanical contact.
Definition:
ExplicitDynamicsContactAction.h:50
ExplicitDynamicsContactAction
Action class for creating constraints, kernels, and user objects necessary for mechanical contact...
Definition:
ExplicitDynamicsContactAction.h:26
ExplicitDynamicsContactAction::_verbose
const bool _verbose
Verbose output, may increase runtime.
Definition:
ExplicitDynamicsContactAction.h:59
ExplicitDynamicsContactModel
ExplicitDynamicsContactModel
Definition:
ExplicitDynamicsContactAction.h:16
ExplicitDynamicsContactAction::CoupledName
std::vector< VariableName > CoupledName
Type that we use in Actions for declaring coupling.
Definition:
ExplicitDynamicsContactAction.h:56
ExplicitDynamicsContactModel::FRICTIONLESS_BALANCE
ExplicitDynamicsContactAction::getModelEnum
static MooseEnum getModelEnum()
Get contact model.
Definition:
ExplicitDynamicsContactAction.C:407
Generated on Fri Jul 18 2025 11:55:58 for https://mooseframework.inl.gov by
1.8.14