Hipace
FFTPoissonSolverPeriodic.H
Go to the documentation of this file.
1 /* Copyright 2020
2  *
3  * This file is part of HiPACE++.
4  *
5  * Authors: Axel Huebl, MaxThevenet, Remi Lehe, WeiqunZhang
6  *
7  * License: BSD-3-Clause-LBNL
8  */
9 #ifndef FFT_POISSON_SOLVER_PERIODIC_H_
10 #define FFT_POISSON_SOLVER_PERIODIC_H_
11 
13 #include "FFTPoissonSolver.H"
14 
15 #include <AMReX_MultiFab.H>
16 #include <AMReX_GpuComplex.H>
17 
20 
31 {
32 public:
34  FFTPoissonSolverPeriodic ( amrex::BoxArray const& realspace_ba,
36  amrex::Geometry const& gm);
37 
39  virtual ~FFTPoissonSolverPeriodic () override final {}
40 
50  virtual void define ( amrex::BoxArray const& realspace_ba,
52  amrex::Geometry const& gm) override final;
53 
59  virtual void SolvePoissonEquation (amrex::MultiFab& lhs_mf) override final;
60 
61 private:
68 };
69 
70 #endif
This class handles functions and data to perform transverse Fourier-based Poisson solves.
Definition: FFTPoissonSolver.H:27
This class handles functions and data to perform transverse Fourier-based Poisson solves.
Definition: FFTPoissonSolverPeriodic.H:31
virtual void define(amrex::BoxArray const &realspace_ba, amrex::DistributionMapping const &dm, amrex::Geometry const &gm) override final
Define real space and spectral space boxes and multifabs, multiplier coefficients inv_k2 to solve Poi...
Definition: FFTPoissonSolverPeriodic.cpp:25
SpectralField m_tmpSpectralField
Definition: FFTPoissonSolverPeriodic.H:63
AnyFFT::FFTplans m_backward_plan
Definition: FFTPoissonSolverPeriodic.H:67
FFTPoissonSolverPeriodic(amrex::BoxArray const &realspace_ba, amrex::DistributionMapping const &dm, amrex::Geometry const &gm)
Definition: FFTPoissonSolverPeriodic.cpp:16
virtual ~FFTPoissonSolverPeriodic() override final
Definition: FFTPoissonSolverPeriodic.H:39
virtual void SolvePoissonEquation(amrex::MultiFab &lhs_mf) override final
Definition: FFTPoissonSolverPeriodic.cpp:119
amrex::MultiFab m_inv_k2
Definition: FFTPoissonSolverPeriodic.H:65
AnyFFT::FFTplans m_forward_plan
Definition: FFTPoissonSolverPeriodic.H:67