https://mooseframework.inl.gov
Loading...
Searching...
No Matches
MortarContactForce.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#include <unordered_map>
15
18class MooseMesh;
19
24{
25public:
27
29
30 virtual void initialize() override;
31 virtual void execute() override;
32 virtual void finalize() override;
33 virtual PostprocessorValue getValue() const override;
34
35protected:
38
40 const unsigned int _component;
41
44
47
49 const std::unordered_map<dof_id_type, std::vector<const Elem *>> & _node_to_elems;
50
52 RealVectorValue _force;
53};
Real PostprocessorValue
const InputParameters & parameters() const
Normal contact force of one mortar contact pair, from its weighted gap user object.
virtual PostprocessorValue getValue() const override
const WeightedGapUserObject & _weighted_gap_uo
Weighted gap user object of the pair.
static InputParameters validParams()
virtual void finalize() override
virtual void initialize() override
const MooseMesh & _displaced_mesh
Displaced mesh, on which the pair's mortar interface lives.
const unsigned int _component
Component to report (0, 1, 2), or 3 for the magnitude.
const AutomaticMortarGeneration & _amg
Mortar interface of the pair, which holds the nodal normals.
RealVectorValue _force
Contact force.
const std::unordered_map< dof_id_type, std::vector< const Elem * > > & _node_to_elems
Map from a secondary node to its lower-dimensional secondary elements.
virtual void execute() override
Creates dof object to weighted gap map.