21 #ifndef GEOS_PHYSICSSOLVERS_CONTACT_SOLIDMECHANICSLAGRANGECONTACTBUBBLESTAB_HPP_
22 #define GEOS_PHYSICSSOLVERS_CONTACT_SOLIDMECHANICSLAGRANGECONTACTBUBBLESTAB_HPP_
24 #include "physicsSolvers/solidMechanics/contact/ContactSolverBase.hpp"
29 class NumericalMethodsManager;
36 Group *
const parent );
46 return "SolidMechanicsLagrangeContactBubbleStab";
70 bool const setSparsity =
true ) override final;
105 real64 const scalingFactor,
109 void assembleContact(
real64 const dt,
115 void assembleStabilization(
real64 const dt,
132 template< typename LAMBDA >
138 for(
const auto & [finiteElementName, faceElementList] : faceTypesToFaceElements )
144 lambda( finiteElementName, subRegionFE, faceElemList );
155 template<
typename LAMBDA >
158 bool const isStickState =
true;
160 std::map< string, array1d< localIndex > >
const &
161 faceTypesToFaceElements = m_faceTypesToFaceElementsStick.at( meshName );
163 for(
const auto & [finiteElementName, faceElementList] : faceTypesToFaceElements )
169 lambda( finiteElementName, subRegionFE, faceElemList, isStickState );
225 std::map< string, std::map< string, array1d< localIndex > > > m_faceTypesToFaceElements;
228 std::map< string, std::map< string, array1d< localIndex > > > m_faceTypesToFaceElementsStick;
231 std::map< string, std::map< string, array1d< localIndex > > > m_faceTypesToFaceElementsSlip;
234 std::map< string, std::unique_ptr< geos::finiteElement::FiniteElementBase > > m_faceTypeToFiniteElements;
238 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.
GEOS_GLOBALINDEX_TYPE globalIndex
Global index type (for indexing objects across MPI partitions).
LvArray::CRSMatrix< T, COL_INDEX, INDEX_TYPE, LvArray::ChaiBuffer > CRSMatrix
Alias for CRS Matrix class.
std::string string
String type.
LvArray::SparsityPatternView< COL_INDEX, INDEX_TYPE const, LvArray::ChaiBuffer > SparsityPatternView
Alias for Sparsity pattern View.
LvArray::SparsityPattern< COL_INDEX, INDEX_TYPE, LvArray::ChaiBuffer > SparsityPattern
Alias for Sparsity pattern class.
double real64
64-bit floating point type.
LvArray::CRSMatrixView< T, COL_INDEX, INDEX_TYPE const, LvArray::ChaiBuffer > CRSMatrixView
Alias for CRS Matrix View.
mapBase< TKEY, TVAL, std::integral_constant< bool, true > > map
Ordered map type.
int integer
Signed integer type.
Array< T, 1 > array1d
Alias for 1D array.
LAInterface::ParallelVector ParallelVector
Alias for ParallelVector.