1#ifndef AMREX_EB2_IF_DIFFERENCE_H_
2#define AMREX_EB2_IF_DIFFERENCE_H_
3#include <AMReX_Config.H>
16template <
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 &&
50template <
class F,
class G>
55template <
class F,
class G>
62 (std::forward<F>(f), std::forward<G>(g));
#define AMREX_GPU_HOST_DEVICE
Definition AMReX_GpuQualifiers.H:20
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
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE constexpr 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