20 #ifndef GEOS_PHYSICSSOLVERS_FLUIDFLOW_SINGLEPHASE_REACTIVE_REACTIONUPDATEKERNEL_HPP
21 #define GEOS_PHYSICSSOLVERS_FLUIDFLOW_SINGLEPHASE_REACTIVE_REACTIONUPDATEKERNEL_HPP
24 #include "common/GEOS_RAJA_Interface.hpp"
26 #include "constitutive/fluid/reactivefluid/ReactiveFluidLayouts.hpp"
31 namespace singlePhaseReactiveBaseKernels
39 template<
typename REACTION_WRAPPER_TYPE >
40 static void helper( REACTION_WRAPPER_TYPE
const & reactionWrapper,
47 reactionWrapper.updateEquilibriumReaction( k, pres[k], temp[k], logPrimaryConc[k] );
51 template<
typename REACTIVE_FLUID >
52 static void launch( REACTIVE_FLUID
const & fluid,
57 std::visit( [&](
auto const & reactionWrapper )
59 helper( reactionWrapper, pres, temp, logPrimaryConc );
60 }, fluid.createReactionKernelWrapper());
69 template<
typename REACTION_WRAPPER_TYPE >
70 static void helper( REACTION_WRAPPER_TYPE
const & reactionWrapper,
78 reactionWrapper.updateMixedReactionSystem( k, pres[k], temp[k], logPrimaryConc[k], surfaceArea[k] );
82 template<
typename REACTIVE_FLUID >
83 static void launch( REACTIVE_FLUID
const & fluid,
89 std::visit( [&](
auto const & reactionWrapper )
91 helper( reactionWrapper, pres, temp, logPrimaryConc, surfaceArea );
92 }, fluid.createReactionKernelWrapper());
#define GEOS_HOST_DEVICE
Marks a host-device function.
ArrayView< T, 1 > arrayView1d
Alias for 1D array view.
GEOS_LOCALINDEX_TYPE localIndex
Local index type (for indexing objects within an MPI partition).
ArrayView< T, 2, USD > arrayView2d
Alias for 2D array view.