1 #ifndef AMREX_EB2_IF_DIFFERENCE_H_
2 #define AMREX_EB2_IF_DIFFERENCE_H_
3 #include <AMReX_Config.H>
16 template <
class F,
class G>
22 :
m_f(std::move(a_f)),
33 template <
class U=
F,
class V=G,
34 std::enable_if_t<IsGPUable<U>::value &&
50 template <
class F,
class G>
55 template <
class F,
class G>
62 (std::forward<F>(
f), std::forward<G>(g));
#define AMREX_GPU_HOST_DEVICE
Definition: AMReX_GpuQualifiers.H:20
#define AMREX_D_DECL(a, b, c)
Definition: AMReX_SPACE.H:104
Definition: AMReX_EB2_IF_Difference.H:18
DifferenceIF(F a_f, G a_g)
Definition: AMReX_EB2_IF_Difference.H:21
Real operator()(const RealArray &p) const noexcept
Definition: AMReX_EB2_IF_Difference.H:26
G m_g
Definition: AMReX_EB2_IF_Difference.H:47
F m_f
Definition: AMReX_EB2_IF_Difference.H:46
Definition: AMReX_FabArrayBase.H:32
constexpr DifferenceIF< std::decay_t< F >, std::decay_t< G > > makeDifference(F &&f, G &&g)
Definition: AMReX_EB2_IF_Difference.H:58
static int f(amrex::Real t, N_Vector y_data, N_Vector y_rhs, void *user_data)
Definition: AMReX_SundialsIntegrator.H:44
AMREX_GPU_HOST_DEVICE constexpr AMREX_FORCE_INLINE const T & min(const T &a, const T &b) noexcept
Definition: AMReX_Algorithm.H:21
Array< Real, AMREX_SPACEDIM > RealArray
Definition: AMReX_Array.H:26
Definition: AMReX_EB2_IF_Base.H:15