21 #ifndef GEOS_PHYSICSSOLVERS_CONTACT_SOLIDMECHANICSLAGRANGECONTACTBUBBLESTAB_HPP_
22 #define GEOS_PHYSICSSOLVERS_CONTACT_SOLIDMECHANICSLAGRANGECONTACTBUBBLESTAB_HPP_
24 #include "physicsSolvers/contact/ContactSolverBase.hpp"
29 class NumericalMethodsManager;
36 Group *
const parent );
46 return "SolidMechanicsLagrangeContactBubbleStab";
70 bool const setSparsity =
true ) override final;
100 real64 const scalingFactor,
104 void assembleContact(
real64 const dt,
110 void assembleStabilization(
real64 const dt,
127 template< typename LAMBDA >
133 for(
const auto & [finiteElementName, faceElementList] : faceTypesToFaceElements )
139 lambda( finiteElementName, subRegionFE, faceElemList );
150 template<
typename LAMBDA >
153 bool const isStickState =
true;
155 std::map< string, array1d< localIndex > >
const &
156 faceTypesToFaceElements = m_faceTypesToFaceElementsStick.at( meshName );
158 for(
const auto & [finiteElementName, faceElementList] : faceTypesToFaceElements )
164 lambda( finiteElementName, subRegionFE, faceElemList, isStickState );
220 std::map< string, std::map< string, array1d< localIndex > > > m_faceTypesToFaceElements;
223 std::map< string, std::map< string, array1d< localIndex > > > m_faceTypesToFaceElementsStick;
226 std::map< string, std::map< string, array1d< localIndex > > > m_faceTypesToFaceElementsSlip;
229 std::map< string, std::unique_ptr< geos::finiteElement::FiniteElementBase > > m_faceTypeToFiniteElements;
233 constexpr
static char const * rotationMatrixString() {
return "rotationMatrix"; }
The DoFManager is responsible for allocating global dofs, constructing sparsity patterns,...
Partition of the decomposed physical domain. It also manages the connexion information to its neighbo...
Base class for FEM element implementations.
ArrayView< T, 1 > arrayView1d
Alias for 1D array view.
LvArray::CRSMatrixView< T, COL_INDEX, localIndex const, LvArray::ChaiBuffer > CRSMatrixView
Alias for CRS Matrix View.
GEOS_GLOBALINDEX_TYPE globalIndex
Global index type (for indexing objects across MPI partitions).
std::string string
String type.
LvArray::SparsityPatternView< COL_INDEX, INDEX_TYPE const, LvArray::ChaiBuffer > SparsityPatternView
Alias for Sparsity pattern View.
double real64
64-bit floating point type.
std::int32_t integer
Signed integer type.
LvArray::CRSMatrix< T, COL_INDEX, localIndex, LvArray::ChaiBuffer > CRSMatrix
Alias for CRS Matrix class.
mapBase< TKEY, TVAL, std::integral_constant< bool, true > > map
Ordered map type.
Array< T, 1 > array1d
Alias for 1D array.
LAInterface::ParallelVector ParallelVector
Alias for ParallelVector.