www.mooseframework.org
ContactApp.C
Go to the documentation of this file.
1 /****************************************************************/
2 /* MOOSE - Multiphysics Object Oriented Simulation Environment */
3 /* */
4 /* All contents are licensed under LGPL V2.1 */
5 /* See LICENSE for full restrictions */
6 /****************************************************************/
7 #include "ContactApp.h"
8 #include "Moose.h"
9 #include "AppFactory.h"
10 #include "MooseSyntax.h"
11 
12 #include "ContactAction.h"
13 #include "ContactMaster.h"
16 #include "ContactPressureAux.h"
19 #include "NodalAreaAction.h"
20 #include "SlaveConstraint.h"
21 #include "OneDContactConstraint.h"
23 #include "GluedContactConstraint.h"
28 #include "NodalArea.h"
29 #include "NodalAreaAction.h"
30 #include "NodalAreaVarAction.h"
31 #include "ContactSlipDamper.h"
32 #include "ContactSplit.h"
33 
34 template <>
35 InputParameters
37 {
38  InputParameters params = validParams<MooseApp>();
39  return params;
40 }
41 
42 ContactApp::ContactApp(const InputParameters & parameters) : MooseApp(parameters)
43 {
44  Moose::registerObjects(_factory);
46 
47  Moose::associateSyntax(_syntax, _action_factory);
48  ContactApp::associateSyntax(_syntax, _action_factory);
49 }
50 
52 
53 // External entry point for dynamic application loading
54 extern "C" void
56 {
58 }
59 void
61 {
62  registerApp(ContactApp);
63 }
64 
65 // External entry point for dynamic object registration
66 extern "C" void
67 ContactApp__registerObjects(Factory & factory)
68 {
70 }
71 void
72 ContactApp::registerObjects(Factory & factory)
73 {
74  registerDiracKernel(ContactMaster);
75  registerDiracKernel(SlaveConstraint);
76  registerConstraint(OneDContactConstraint);
77  registerConstraint(MultiDContactConstraint);
78  registerConstraint(GluedContactConstraint);
79  registerConstraint(MechanicalContactConstraint);
80  registerConstraint(SparsityBasedContactConstraint);
81  registerProblem(AugmentedLagrangianContactProblem);
82  registerProblem(ReferenceResidualProblem);
83  registerUserObject(NodalArea);
84  registerAux(ContactPressureAux);
85  registerDamper(ContactSlipDamper);
86  registerSplit(ContactSplit);
87 }
88 
89 // External entry point for dynamic syntax association
90 extern "C" void
91 ContactApp__associateSyntax(Syntax & syntax, ActionFactory & action_factory)
92 {
93  ContactApp::associateSyntax(syntax, action_factory);
94 }
95 void
96 ContactApp::associateSyntax(Syntax & syntax, ActionFactory & action_factory)
97 {
98  registerSyntax("ContactAction", "Contact/*");
99 
100  registerSyntax("ContactPenetrationAuxAction", "Contact/*");
101  registerSyntax("ContactPenetrationVarAction", "Contact/*");
102 
103  registerSyntax("ContactPressureAuxAction", "Contact/*");
104  registerSyntax("ContactPressureVarAction", "Contact/*");
105 
106  registerSyntax("NodalAreaAction", "Contact/*");
107  registerSyntax("NodalAreaVarAction", "Contact/*");
108 
109  registerAction(ContactAction, "add_aux_kernel");
110  registerAction(ContactAction, "add_aux_variable");
111  registerAction(ContactAction, "add_dirac_kernel");
112 
113  registerTask("output_penetration_info_vars", false);
114  registerAction(ContactAction, "output_penetration_info_vars");
115  syntax.addDependency("output_penetration_info_vars", "add_output");
116 
117  registerAction(ContactPenetrationAuxAction, "add_aux_kernel");
118  registerAction(ContactPenetrationVarAction, "add_aux_variable");
119 
120  registerAction(ContactPressureAuxAction, "add_aux_kernel");
121  registerAction(ContactPressureVarAction, "add_aux_variable");
122 
123  registerAction(NodalAreaAction, "add_user_object");
124  registerAction(NodalAreaVarAction, "add_aux_variable");
125 }
void ContactApp__registerApps()
Definition: ContactApp.C:55
A MechanicalContactConstraint forces the value of a variable to be the same on both sides of an inter...
Class to manage nested solution for augmented Lagrange contact.
Simple constant damper.
static void registerObjects(Factory &factory)
Definition: ContactApp.C:72
static void associateSyntax(Syntax &syntax, ActionFactory &action_factory)
Definition: ContactApp.C:96
InputParameters validParams< ContactApp >()
Definition: ContactApp.C:36
A MultiDContactConstraint forces the value of a variable to be the same on both sides of an interface...
A GluedContactConstraint forces the value of a variable to be the same on both sides of an interface...
virtual ~ContactApp()
Definition: ContactApp.C:51
A OneDContactConstraint forces the value of a variable to be the same on both sides of an interface...
FEProblemBase derived class to enable convergence checking relative to a user-specified postprocessor...
void ContactApp__registerObjects(Factory &factory)
Definition: ContactApp.C:67
static void registerApps()
Definition: ContactApp.C:60
ContactApp(const InputParameters &parameters)
Definition: ContactApp.C:42
void ContactApp__associateSyntax(Syntax &syntax, ActionFactory &action_factory)
Definition: ContactApp.C:91
Split-based preconditioner for contact problems.
Definition: ContactSplit.h:24