ORB5X 1.0.0
Performance-portable global electromagnetic gyrokinetic PIC code
 
Loading...
Searching...
No Matches
fftw3.hpp File Reference

Solver-local FFTW plans, buffers, and transform operations. More...

#include "../fft_wrapper.hpp"
#include <fftw3.h>
+ Include dependency graph for fftw3.hpp:

Namespaces

namespace  orb5x
 

Typedefs

using orb5x::fftw_complex_type = fftw_complex
 
using orb5x::fftw_plan_type = fftw_plan
 

Functions

void orb5x::bspl2fft_2d (const Kokkos::View< Real ** > &bspl_data, Kokkos::View< Complex ** > &fft_data, int nchi, int nphi)
 
void orb5x::bspl2fft_3d (const Kokkos::View< Real *** > &bspl_data, Kokkos::View< Complex ** > &fft_data, int ns, int nchi, int nphi, int neq_f, const Kokkos::View< int *** > *filter=nullptr, const Kokkos::View< Real * > *fftminv=nullptr, const Kokkos::View< int ** > *mmin_f=nullptr, const Kokkos::View< int ** > *mmax_f=nullptr)
 
void orb5x::destroy_plan (fftw_plan plan)
 
void orb5x::execute_backward (fftw_plan plan)
 
void orb5x::execute_forward (fftw_plan plan)
 
void orb5x::fft2bspl_2d (const Kokkos::View< Complex ** > &fft_data, Kokkos::View< Real ** > &bspl_data, int nchi, int nphi)
 
void orb5x::fft2bspl_3d (const Kokkos::View< Complex ** > &fft_data, Kokkos::View< Real *** > &bspl_data, int ns, int nchi, int nphi, int neq_f, const Kokkos::View< int ** > *mmin_f=nullptr, const Kokkos::View< int ** > *mmax_f=nullptr)
 
void orb5x::fftw_cleanup ()
 
void orb5x::init_1d_backward (int n, fftw_plan &plan_backward, fftw_complex *in, fftw_complex *out)
 
void orb5x::init_1d_forward (int n, fftw_plan &plan_forward, fftw_complex *in, fftw_complex *out)
 
void orb5x::init_2d_backward (int nchi, int nphi, fftw_plan &plan_backward, fftw_complex *in, fftw_complex *out)
 
void orb5x::init_2d_forward (int nchi, int nphi, fftw_plan &plan_forward, fftw_complex *in, fftw_complex *out)
 

Detailed Description

Solver-local FFTW plans, buffers, and transform operations.

FFTW calls are host-only; device-resident views require explicit staging.