20 #ifndef GEOS_PHYSICSSOLVERS_MULTIPHYSICS_POROMECHANICSKERNELS_SINGLEPHASEPOROMECHANICSFRACTURES_HPP_
21 #define GEOS_PHYSICSSOLVERS_MULTIPHYSICS_POROMECHANICSKERNELS_SINGLEPHASEPOROMECHANICSFRACTURES_HPP_
26 namespace poromechanicsFracturesKernels
51 template<
typename POLICY,
typename POROUS_WRAPPER,
typename HYDRAULIC_APERTURE_WRAPPER >
54 POROUS_WRAPPER
const & porousMaterialWrapper,
55 HYDRAULIC_APERTURE_WRAPPER
const & contactWrapper,
70 aperture[k] = dispJump[k][0];
72 real64 dHydraulicAperture_dNormalJump = 0.0;
73 real64 dHydraulicAperture_dNormalTraction = 0.0;
74 hydraulicAperture[k] = contactWrapper.computeHydraulicAperture( aperture[k],
75 fractureTraction[k][0],
76 dHydraulicAperture_dNormalJump,
77 dHydraulicAperture_dNormalTraction );
79 deltaVolume[k] = hydraulicAperture[k] * area[k] - volume[k];
81 real64 const jump[3] = LVARRAY_TENSOROPS_INIT_LOCAL_3 ( dispJump[k] );
82 real64 const traction[3] = LVARRAY_TENSOROPS_INIT_LOCAL_3 ( fractureTraction[k] );
84 porousMaterialWrapper.updateStateFromPressureApertureJumpAndTraction( k, 0, pressure[k],
85 oldHydraulicAperture[k],
87 dHydraulicAperture_dNormalJump,
#define GEOS_HOST_DEVICE
Marks a host-device function.
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.
A struct to perform volume, aperture and fracture traction updates.
static void launch(localIndex const size, POROUS_WRAPPER const &porousMaterialWrapper, HYDRAULIC_APERTURE_WRAPPER const &contactWrapper, arrayView2d< real64 const > const &dispJump, arrayView1d< real64 const > const &pressure, arrayView1d< real64 const > const &area, arrayView1d< real64 const > const &volume, arrayView1d< real64 > const &deltaVolume, arrayView1d< real64 > const &aperture, arrayView1d< real64 const > const &oldHydraulicAperture, arrayView1d< real64 > const &hydraulicAperture, arrayView2d< real64 const > const &fractureTraction)
Launch the kernel function doing volume, aperture and fracture traction updates.