https://mooseframework.inl.gov
LMWeightedVelocitiesUserObject.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 
13 
14 template <typename>
15 class MooseVariableFE;
16 
21 {
22 public:
24 
26 
27  virtual const ADVariableValue & contactTangentialPressureDirOne() const override;
28  virtual const ADVariableValue & contactTangentialPressureDirTwo() const override;
29 
30  virtual const ADVariableValue & contactPressure() const override;
31 
32  virtual void reinit() override {}
33 
34 protected:
35  virtual const VariableTestValue & test() const override;
36  virtual bool constrainedByOwner() const override { return true; }
37 
42 
45 
47  const MooseVariable * const _aux_lm_var;
48 };
LMWeightedVelocitiesUserObject(const InputParameters &parameters)
const bool _use_petrov_galerkin
Whether to use Petrov-Galerkin approach.
Creates dof object to weighted tangential velocities map.
virtual const VariableTestValue & test() const override
virtual bool constrainedByOwner() const override
virtual const ADVariableValue & contactPressure() const override
const MooseVariable *const _aux_lm_var
The auxiliary Lagrange multiplier variable (used together whith the Petrov-Galerkin approach) ...
const MooseVariableFE< Real > *const _lm_normal_var
The Lagrange multiplier variables representing the contact pressure along various directions...
Nodal-based mortar contact user object for frictional problem.
OutputTools< Real >::VariableTestValue VariableTestValue
const MooseVariableFE< Real > *const _lm_variable_tangential_one
virtual const ADVariableValue & contactTangentialPressureDirOne() const override
const MooseVariableFE< Real > *const _lm_variable_tangential_two
const InputParameters & parameters() const
virtual const ADVariableValue & contactTangentialPressureDirTwo() const override