![]() |
Block-Structured AMR Software Framework
|
Convolution-based solver for open boundary conditions using Green's functions. More...
#include <AMReX_FFT_OpenBCSolver.H>
Public Types | |
| using | MF = typename R2C< T >::MF |
| using | cMF = typename R2C< T >::cMF |
Public Member Functions | |
| OpenBCSolver (Box const &domain, Info const &info=Info{}) | |
Build a solver over domain using the FFT Info settings in info. | |
| template<class F > | |
| void | setGreensFunction (F const &greens_function) |
| Populate the spectral Green's function used by subsequent solves. | |
| void | solve (MF &phi, MF const &rho) |
Solve for phi given right-hand side rho. | |
| Box const & | Domain () const |
| Access the physical domain this solver was built for. | |
Convolution-based solver for open boundary conditions using Green's functions.
The class wraps an internal R2C plan and multiplies spectral data by a user-provided Green's function to solve Laplace/Poisson problems on a rectangular domain.
| using amrex::FFT::OpenBCSolver< T >::cMF = typename R2C<T>::cMF |
| using amrex::FFT::OpenBCSolver< T >::MF = typename R2C<T>::MF |
|
explicit |
|
inline |
Access the physical domain this solver was built for.
| void amrex::FFT::OpenBCSolver< T >::setGreensFunction | ( | F const & | greens_function | ) |
Populate the spectral Green's function used by subsequent solves.
| F | Callable type satisfying T(int i, int j, int k). |
| greens_function | Functor that evaluates the physical-space Green's function. |
| void amrex::FFT::OpenBCSolver< T >::solve | ( | MF & | phi, |
| MF const & | rho | ||
| ) |