WarpX
DivEFunctor.H
Go to the documentation of this file.
1 #ifndef WARPX_DIVEFUNCTOR_H_
2 #define WARPX_DIVEFUNCTOR_H_
3 
4 #include "ComputeDiagFunctor.H"
5 
6 #include <AMReX_BaseFwd.H>
7 
8 #include <array>
9 
13 class DivEFunctor final : public ComputeDiagFunctor
14 {
15 public:
24  DivEFunctor(std::array<const amrex::MultiFab* const, 3> arr_mf_src, int lev, amrex::IntVect crse_ratio,
25  bool convertRZmodes2cartesian=true, int ncomp=1);
26 
33  void operator()(amrex::MultiFab& mf_dst, int dcomp, int /*i_buffer=0*/) const override;
34 private:
36  std::array<const amrex::MultiFab * const, 3> m_arr_mf_src;
37  int const m_lev;
40 };
41 
42 #endif // WARPX_DIVEFUNCTOR_H_
Functor to compute a diagnostic and store the result in existing MultiFab.
Definition: ComputeDiagFunctor.H:17
Functor to compute divE into mf_out.
Definition: DivEFunctor.H:14
void operator()(amrex::MultiFab &mf_dst, int dcomp, int) const override
Compute DivE directly into mf_dst.
Definition: DivEFunctor.cpp:26
bool m_convertRZmodes2cartesian
Definition: DivEFunctor.H:39
int const m_lev
Definition: DivEFunctor.H:37
std::array< const amrex::MultiFab *const, 3 > m_arr_mf_src
Definition: DivEFunctor.H:36
DivEFunctor(std::array< const amrex::MultiFab *const, 3 > arr_mf_src, int lev, amrex::IntVect crse_ratio, bool convertRZmodes2cartesian=true, int ncomp=1)
Definition: DivEFunctor.cpp:16