https://mooseframework.inl.gov
Loading...
Searching...
No Matches
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
62
const
std::vector<SubdomainName> &
_blocks
;
63
64
private
:
68
void
addNodeFaceContact
();
72
void
addContactPressureAuxKernel
();
73
};
Action.h
ExplicitDynamicsContactModel
ExplicitDynamicsContactModel
Definition
ExplicitDynamicsContactAction.h:17
ExplicitDynamicsContactModel::FRICTIONLESS
@ FRICTIONLESS
ExplicitDynamicsContactModel::FRICTIONLESS_BALANCE
@ FRICTIONLESS_BALANCE
MooseEnum.h
MooseTypes.h
Action
ExplicitDynamicsContactAction
Action class for creating constraints, kernels, and user objects necessary for mechanical contact.
Definition
ExplicitDynamicsContactAction.h:28
ExplicitDynamicsContactAction::_boundary_pairs
std::vector< std::pair< BoundaryName, BoundaryName > > _boundary_pairs
Primary/Secondary boundary name pairs for mechanical contact.
Definition
ExplicitDynamicsContactAction.h:50
ExplicitDynamicsContactAction::addNodeFaceContact
void addNodeFaceContact()
Generate constraints for node to face contact.
Definition
ExplicitDynamicsContactAction.C:342
ExplicitDynamicsContactAction::_blocks
const std::vector< SubdomainName > & _blocks
Restrict contact MooseObjects to these subdomains.
Definition
ExplicitDynamicsContactAction.h:62
ExplicitDynamicsContactAction::CoupledName
std::vector< VariableName > CoupledName
Type that we use in Actions for declaring coupling.
Definition
ExplicitDynamicsContactAction.h:56
ExplicitDynamicsContactAction::_model
const ExplicitDynamicsContactModel _model
Contact model type enum.
Definition
ExplicitDynamicsContactAction.h:53
ExplicitDynamicsContactAction::addContactPressureAuxKernel
void addContactPressureAuxKernel()
Add single contact pressure auxiliary kernel for various contact action objects.
Definition
ExplicitDynamicsContactAction.C:297
ExplicitDynamicsContactAction::commonParameters
static InputParameters commonParameters()
Define parameters used by multiple contact objects.
Definition
ExplicitDynamicsContactAction.C:420
ExplicitDynamicsContactAction::act
virtual void act() override
Definition
ExplicitDynamicsContactAction.C:100
ExplicitDynamicsContactAction::_verbose
const bool _verbose
Verbose output, may increase runtime.
Definition
ExplicitDynamicsContactAction.h:59
ExplicitDynamicsContactAction::getModelEnum
static MooseEnum getModelEnum()
Get contact model.
Definition
ExplicitDynamicsContactAction.C:414
ExplicitDynamicsContactAction::validParams
static InputParameters validParams()
Definition
ExplicitDynamicsContactAction.C:41
MooseEnum
InputParameters
Generated on Fri Aug 21 2026 13:40:57 for https://mooseframework.inl.gov by
1.9.8