Go to the documentation of this file.
27 #ifndef UNDERLING_FFTW_H
28 #define UNDERLING_FFTW_H
69 #define UNDERLING_FFTW_PACKED_LONG_N2 (1U << 6)
90 #define UNDERLING_FFTW_PACKED_LONG_N0 (1U << 7)
93 #define UNDERLING_FFTW_PACKED_ALL \
94 (UNDERLING_FFTW_PACKED_LONG_N2 | UNDERLING_FFTW_PACKED_LONG_N0)
105 #define UNDERLING_FFTW_PACKED_NONE (1U << 8)
148 unsigned fftw_rigor_flags,
149 unsigned packed_flags) UNDERLING_API;
162 unsigned fftw_rigor_flags,
163 unsigned packed_flags) UNDERLING_API;
176 unsigned fftw_rigor_flags,
177 unsigned packed_flags) UNDERLING_API;
190 unsigned fftw_rigor_flags,
191 unsigned packed_flags) UNDERLING_API;
226 unsigned fftw_rigor_flags) UNDERLING_API;
267 FILE *output_file) UNDERLING_API;
354 FILE *output_file) UNDERLING_API;
417 int *order) UNDERLING_API;
448 int *order) UNDERLING_API;
456 #endif // UNDERLING_FFTW_H
int underling_fftw_local_input(const underling_fftw_plan plan, int *start, int *size, int *stride, int *order)
Obtain the processor-local sizes, storage details, and global starting offsets for the given plan's i...
int stride[5]
The stride between adjacent elements in directions n{0,1,2}.
Definition: underling_fftw.h:314
int underling_fftw_local_output(const underling_fftw_plan plan, int *start, int *size, int *stride, int *order)
Obtain the processor-local sizes, storage details, and global starting offsets for the given plan's o...
underling_fftw_plan underling_fftw_plan_create_inverse(const underling_fftw_plan plan_to_invert, underling_real *in, underling_real *out, unsigned fftw_rigor_flags)
Create a plan to invert another underling_fftw_plan.
int order[5]
The storage order from the fastest index to the slowest.
Definition: underling_fftw.h:323
void underling_fftw_fprint_plan(const underling_fftw_plan plan, FILE *output_file)
Dump an instance's internals in a debugging-friendly format.
const underling_fftw_extents UNDERLING_FFTW_EXTENTS_INVALID
A static instance used to communicate wholly invalid extents.
int size[5]
The amount of global data stored locally in directions n{0,1,2}.
Definition: underling_fftw.h:307
underling_fftw_plan underling_fftw_plan_create_c2c_backward(const underling_problem problem, int long_ni, underling_real *in, underling_real *out, unsigned fftw_rigor_flags, unsigned packed_flags)
Create a plan to perform a backward complex-to-complex FFT on the given data when long in the long_ni...
void underling_fftw_plan_destroy(underling_fftw_plan plan)
Destroy all resources associated with the given plan.
underling_fftw_plan underling_fftw_plan_create_c2r_backward(const underling_problem problem, int long_ni, underling_real *in, underling_real *out, unsigned fftw_rigor_flags, unsigned packed_flags)
Create a plan to perform a backward complex-to-real FFT on the given data when long in the long_nith ...
underling_fftw_extents underling_fftw_local_extents_input(const underling_fftw_plan plan)
Obtain local size, stride, and storage information for the input data to a given plan.
underling_fftw_plan underling_fftw_plan_create_r2c_forward(const underling_problem problem, int long_ni, underling_real *in, underling_real *out, unsigned fftw_rigor_flags, unsigned packed_flags)
Create a plan to perform a forward real-to-complex FFT on the given data when long in the long_nith d...
underling_fftw_plan underling_fftw_plan_create_c2c_forward(const underling_problem problem, int long_ni, underling_real *in, underling_real *out, unsigned fftw_rigor_flags, unsigned packed_flags)
Create a plan to perform a forward complex-to-complex FFT on the given data when long in the long_nit...
A transparent type storing the local sizes, strides, and storage when the data is long in a particula...
Definition: underling_fftw.h:291
int start[5]
The inclusive global data starting offset in directions n{0,1,2}.
Definition: underling_fftw.h:297
int underling_fftw_extents_cmp(const underling_fftw_extents *const e1, const underling_fftw_extents *const e2)
Compare two underling_fftw_extents instances using lexicographic ordering.
underling_fftw_extents underling_fftw_local_extents_output(const underling_fftw_plan plan)
Obtain local size, stride, and storage information for the input data to a given plan.
double underling_real
The real-valued scalar type used throughout the library.
Definition: underling.h:63
struct underling_fftw_plan_s * underling_fftw_plan
A type encapsulating FFTW-like planning information.
Definition: underling_fftw.h:48
struct underling_problem_s * underling_problem
A type encapsulating all parallel decomposition information, including required local storage and str...
Definition: underling.h:352
void underling_fftw_fprint_extents(const underling_fftw_extents *extents, FILE *output_file)
Dump an instance's internals in a debugging-friendly format.
underling_extents extents
Definition: underling.hpp:44
int underling_fftw_plan_execute(const underling_fftw_plan plan, underling_real *in, underling_real *out)
Perform a previously planned FFT.
Generated on Wed Jul 1 2026 13:22:57 for underling
by
doxygen
1.8.17