#include <AMReX_Config.H>
#include <AMReX.H>
#include <AMReX_BLProfiler.H>
#include <AMReX_DataAllocator.H>
#include <AMReX_DistributionMapping.H>
#include <AMReX_Enum.H>
#include <AMReX_FabArray.H>
#include <AMReX_Gpu.H>
#include <AMReX_GpuComplex.H>
#include <AMReX_Math.H>
#include <AMReX_Periodicity.H>
#include <cufft.h>
#include <cuComplex.h>
#include <algorithm>
#include <complex>
#include <limits>
#include <memory>
#include <tuple>
#include <utility>
#include <variant>
Go to the source code of this file.
Classes | |
struct | amrex::FFT::Info |
struct | amrex::FFT::Plan< T > |
struct | amrex::FFT::Swap01 |
struct | amrex::FFT::Swap02 |
struct | amrex::FFT::RotateFwd |
struct | amrex::FFT::RotateBwd |
struct | amrex::FFT::detail::SubHelper |
Namespaces | |
amrex | |
amrex::FFT | |
amrex::FFT::detail | |
Typedefs | |
using | amrex::FFT::Key = std::tuple< IntVectND< 3 >, Direction, Kind > |
using | amrex::FFT::PlanD = typename Plan< double >::VendorPlan |
using | amrex::FFT::PlanF = typename Plan< float >::VendorPlan |
Enumerations | |
enum class | amrex::FFT::Direction { amrex::FFT::forward , amrex::FFT::backward , amrex::FFT::both , amrex::FFT::none } |
enum class | amrex::FFT::DomainStrategy { amrex::FFT::slab , amrex::FFT::pencil } |
enum class | amrex::FFT::Kind { amrex::FFT::none , amrex::FFT::r2c_f , amrex::FFT::r2c_b , amrex::FFT::c2c_f , amrex::FFT::c2c_b , amrex::FFT::r2r_ee_f , amrex::FFT::r2r_ee_b , amrex::FFT::r2r_oo_f , amrex::FFT::r2r_oo_b , amrex::FFT::r2r_eo , amrex::FFT::r2r_oe } |
Functions | |
amrex::FFT::AMREX_ENUM (Boundary, periodic, even, odd) | |
PlanD * | amrex::FFT::get_vendor_plan_d (Key const &key) |
PlanF * | amrex::FFT::get_vendor_plan_f (Key const &key) |
void | amrex::FFT::add_vendor_plan_d (Key const &key, PlanD plan) |
void | amrex::FFT::add_vendor_plan_f (Key const &key, PlanF plan) |
DistributionMapping | amrex::FFT::detail::make_iota_distromap (Long n) |
template<typename FA > | |
FA::FABType::value_type * | amrex::FFT::detail::get_fab (FA &fa) |
template<typename FA1 , typename FA2 > | |
std::unique_ptr< char, DataDeleter > | amrex::FFT::detail::make_mfs_share (FA1 &fa1, FA2 &fa2) |