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