21 #ifndef GEOS_PHYSICSSOLVERS_MULTIPHYSICS_PHASEFIELDFRACTURESOLVER_HPP_ 
   22 #define GEOS_PHYSICSSOLVERS_MULTIPHYSICS_PHASEFIELDFRACTURESOLVER_HPP_ 
   43                             Group * 
const parent );
 
   53     return "PhaseFieldFracture";
 
   77     return std::get< toUnderlying( SolverType::SolidMechanics ) >( 
m_solvers );
 
   86     return std::get< toUnderlying( SolverType::Damage ) >( 
m_solvers );
 
   98 template< 
typename FE_TYPE >
 
  102     m_numElems( subRegion.
size() )
 
  111       constexpr 
localIndex numNodesPerElement = FE_TYPE::numNodes;
 
  112       constexpr 
localIndex n_q_points = FE_TYPE::numQuadraturePoints;
 
  116         real64 N[ numNodesPerElement ];
 
  117         FE_TYPE::calcN( q, N );
 
  119         damageFieldOnMaterial( k, q ) = 0;
 
  120         for( 
localIndex a = 0; a < numNodesPerElement; ++a )
 
  122           damageFieldOnMaterial( k, q ) += N[a] * nodalDamage[elemToNodes( k, a )];
 
#define GEOS_HOST_DEVICE
Marks a host-device function.
 
std::tuple< SOLVERS *... > m_solvers
Pointers of the single-physics solvers.
 
Partition of the decomposed physical domain. It also manages the connexion information to its neighbo...
 
SolidMechanicsLagrangianFEM * solidMechanicsSolver() const
accessor for the pointer to the solid mechanics solver
 
static string coupledSolverAttributePrefix()
String used to form the solverName used to register solvers in CoupledSolver.
 
virtual void postInputInitialization() override final
 
PhaseFieldDamageFEM * damageSolver() const
accessor for the pointer to the flow solver
 
virtual void initializePostInitialConditionsPreSubGroups() override final
Called by InitializePostInitialConditions() prior to initializing sub-Groups.
 
virtual void mapSolutionBetweenSolvers(DomainPartition &Domain, integer const idx) override final
Maps the solution obtained from one solver to the fields used by the other solver(s)
 
string getCatalogName() const override
 
static string catalogName()
name of the node manager in the object catalog
 
CRSMatrix< real64, globalIndex > m_localMatrix
Local system matrix and rhs.
 
DofManager m_dofManager
Data structure to handle degrees of freedom.
 
ParallelVector m_solution
System solution vector.
 
ParallelVector m_rhs
System right-hand side vector.
 
localIndex size() const
Get the "size" of the group, which determines the number of elements in resizable wrappers.
 
ArrayView< T, 1 > arrayView1d
Alias for 1D array view.
 
double real64
64-bit floating point type.
 
GEOS_LOCALINDEX_TYPE localIndex
Local index type (for indexing objects within an MPI partition).
 
ArrayView< T, 2, USD > arrayView2d
Alias for 2D array view.
 
int integer
Signed integer type.