diff options
Diffstat (limited to 'Source/FieldSolver/SpectralSolver/SpectralSolverRZ.H')
-rw-r--r-- | Source/FieldSolver/SpectralSolver/SpectralSolverRZ.H | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/Source/FieldSolver/SpectralSolver/SpectralSolverRZ.H b/Source/FieldSolver/SpectralSolver/SpectralSolverRZ.H index b0894df91..5762e1436 100644 --- a/Source/FieldSolver/SpectralSolver/SpectralSolverRZ.H +++ b/Source/FieldSolver/SpectralSolver/SpectralSolverRZ.H @@ -89,6 +89,21 @@ class SpectralSolverRZ algorithm->ComputeSpectralDivE( field_data, Efield, divE ); }; + /** + * \brief Public interface to call the virtual function \c CurrentCorrection, + * defined in the base class SpectralBaseAlgorithmRZ and possibly overridden + * by its derived classes (e.g. PsatdAlgorithmRZ), from + * objects of class SpectralSolverRZ through the private unique pointer \c algorithm + * + * \param[in,out] current two-dimensional array of unique pointers to MultiFab + * storing the three components of the current density + * \param[in] rho unique pointer to MultiFab storing the charge density + */ + void CurrentCorrection ( std::array<std::unique_ptr<amrex::MultiFab>,3>& current, + const std::unique_ptr<amrex::MultiFab>& rho ) { + algorithm->CurrentCorrection( field_data, current, rho ); + }; + private: SpectralFieldDataRZ field_data; // Store field in spectral space |