|
WarpX
|
Functor to compute divB into mf_out. More...
#include <DivBFunctor.H>
Public Member Functions | |
| DivBFunctor (ablastr::fields::VectorField const &arr_mf_src, int lev, amrex::IntVect crse_ratio, bool convertRZmodes2cartesian=true, int ncomp=1) | |
| void | operator() (amrex::MultiFab &mf_dst, int dcomp, int) const override |
| Compute DivB directly into mf_dst. | |
Public Member Functions inherited from ComputeDiagFunctor | |
| ComputeDiagFunctor (int ncomp, amrex::IntVect crse_ratio) | |
| virtual | ~ComputeDiagFunctor ()=default |
| ComputeDiagFunctor (const ComputeDiagFunctor &)=default | |
| ComputeDiagFunctor & | operator= (const ComputeDiagFunctor &)=default |
| ComputeDiagFunctor (ComputeDiagFunctor &&)=default | |
| ComputeDiagFunctor & | operator= (ComputeDiagFunctor &&)=default |
| int | nComp () const |
| virtual void | PrepareFunctorData (int i_buffer, bool z_slice_in_domain, amrex::Real current_z_boost, amrex::Box buffer_box, const int k_index_zlab, const int snapshot_full) |
| Prepare data required to process fields in the operator() Note that this function has parameters that are specific to back-transformed diagnostics, that are unused for regular diagnostics. | |
| virtual void | InitData () |
| void | InterpolateMFForDiag (amrex::MultiFab &mf_dst, const amrex::MultiFab &mf_src, int dcomp, const amrex::DistributionMapping &dm, bool convertRZmodes2cartesian) const |
Private Attributes | |
| ablastr::fields::VectorField | m_arr_mf_src |
| int | m_lev |
| bool | m_convertRZmodes2cartesian |
Additional Inherited Members | |
Protected Attributes inherited from ComputeDiagFunctor | |
| amrex::IntVect | m_crse_ratio |
Functor to compute divB into mf_out.
| DivBFunctor::DivBFunctor | ( | ablastr::fields::VectorField const & | arr_mf_src, |
| int | lev, | ||
| amrex::IntVect | crse_ratio, | ||
| bool | convertRZmodes2cartesian = true, | ||
| int | ncomp = 1 ) |
Constructor.
| [in] | arr_mf_src | source multifabs (3 elements for x y z). |
| [in] | lev | level of multifab. |
| [in] | crse_ratio | for interpolating field values from simulation MultiFabs to the output diagnostic MultiFab, mf_dst. |
| [in] | convertRZmodes2cartesian | whether to generate the result in Cartesian coordinates (summing over modes) |
| [in] | ncomp | Number of component of mf_src to cell-center in dst multifab. |
|
overridevirtual |
Compute DivB directly into mf_dst.
| [out] | mf_dst | output MultiFab where the result is written |
| [in] | dcomp | first component of mf_dst in which cell-centered data is stored |
Implements ComputeDiagFunctor.
|
private |
Vector of pointer to source multifab Bx, By, Bz
|
private |
|
private |
level on which mf_src is defined (used in cylindrical) (for cylindrical) whether to average all modes into 1 comp