WarpX
Interpolate.H
Go to the documentation of this file.
1 /* Copyright 2019-2022 Axel Huebl, Remi Lehe
2  *
3  * This file is part of WarpX.
4  *
5  * License: BSD-3-Clause-LBNL
6  */
7 #ifndef ABLASTR_INTERPOLATE_H
8 #define ABLASTR_INTERPOLATE_H
9 
10 #include <AMReX_Array4.H>
11 #include <AMReX_IntVect.H>
12 #include <AMReX_MFInterp_C.H>
13 
15 
16 #include <array>
17 #include <optional>
18 
19 
21 
33  {
35  amrex::Array4<amrex::Real> const phi_fp_arr,
36  amrex::Array4<amrex::Real const> const phi_cp_arr,
37  amrex::IntVect const refratio)
38  : m_phi_fp_arr(phi_fp_arr), m_phi_cp_arr(phi_cp_arr), m_refratio(refratio)
39  {}
40 
42  void
43  operator() (int i, int j, int k) const noexcept
44  {
46  0, m_refratio);
47  }
48 
52  };
53 } // namespace ablastr::fields::details
54 
55 #endif // ABLASTR_INTERPOLATE_H
#define AMREX_FORCE_INLINE
#define AMREX_GPU_DEVICE
Definition: Interpolate.H:20
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mf_nodebilin_interp(int i, int, int, int n, Array4< Real > const &fine, int fcomp, Array4< Real const > const &crse, int ccomp, IntVect const &ratio) noexcept
i
Definition: check_interp_points_and_weights.py:174
PoissonInterpCPtoFP(amrex::Array4< amrex::Real > const phi_fp_arr, amrex::Array4< amrex::Real const > const phi_cp_arr, amrex::IntVect const refratio)
Definition: Interpolate.H:34
amrex::Array4< amrex::Real > const m_phi_fp_arr
Definition: Interpolate.H:49
amrex::Array4< amrex::Real const > const m_phi_cp_arr
Definition: Interpolate.H:50
amrex::IntVect const m_refratio
Definition: Interpolate.H:51
AMREX_GPU_DEVICE AMREX_FORCE_INLINE void operator()(int i, int j, int k) const noexcept
Definition: Interpolate.H:43