Namespaces | |
| namespace | threading | 
Classes | |
| struct | add_vec | 
| struct | add_vec< cmplx< T > > | 
| class | arr | 
| class | arr_info | 
| class | cfftp | 
| struct | cmplx | 
| class | cndarr | 
| struct | ExecC2C | 
| struct | ExecDcst | 
| struct | ExecHartley | 
| struct | ExecR2R | 
| class | fftblue | 
| class | multi_iter | 
| class | ndarr | 
| class | pocketfft_c | 
| class | pocketfft_r | 
| class | rev_iter | 
| class | rfftp | 
| class | simple_iter | 
| class | sincos_2pibyn | 
| class | T_dcst23 | 
| class | T_dcst4 | 
| class | T_dct1 | 
| class | T_dst1 | 
| struct | util | 
| struct | VLEN | 
| struct | VTYPE | 
Typedefs | |
| using | shape_t = std::vector<size_t> | 
| using | stride_t = std::vector<ptrdiff_t> | 
| template<typename T> | |
| using | vtype_t = typename VTYPE<T>::type | 
| template<typename T> | |
| using | add_vec_t = typename add_vec<T>::type | 
Functions | |
| template<typename T> | |
| T | cos (T)=delete | 
| template<typename T> | |
| T | sin (T)=delete | 
| template<typename T> | |
| T | sqrt (T)=delete | 
| void * | aligned_alloc (size_t align, size_t size) | 
| void | aligned_dealloc (void *ptr) | 
| template<typename T> | |
| void | PM (T &a, T &b, T c, T d) | 
| template<typename T> | |
| void | PMINPLACE (T &a, T &b) | 
| template<typename T> | |
| void | MPINPLACE (T &a, T &b) | 
| template<typename T> | |
| cmplx< T > | conj (const cmplx< T > &a) | 
| template<bool fwd, typename T, typename T2> | |
| void | special_mul (const cmplx< T > &v1, const cmplx< T2 > &v2, cmplx< T > &res) | 
| template<typename T> | |
| void | ROT90 (cmplx< T > &a) | 
| template<bool fwd, typename T> | |
| void | ROTX90 (cmplx< T > &a) | 
| template<typename T> | |
| std::shared_ptr< T > | get_plan (size_t length) | 
| template<typename T> | |
| arr< char > | alloc_tmp (const shape_t &shape, size_t axsize, size_t elemsize) | 
| template<typename T> | |
| arr< char > | alloc_tmp (const shape_t &shape, const shape_t &axes, size_t elemsize) | 
| template<typename T, size_t vlen> | |
| void | copy_input (const multi_iter< vlen > &it, const cndarr< cmplx< T > > &src, cmplx< vtype_t< T > > *dst) | 
| template<typename T, size_t vlen> | |
| void | copy_input (const multi_iter< vlen > &it, const cndarr< T > &src, vtype_t< T > *dst) | 
| template<typename T, size_t vlen> | |
| void | copy_input (const multi_iter< vlen > &it, const cndarr< T > &src, T *dst) | 
| template<typename T, size_t vlen> | |
| void | copy_output (const multi_iter< vlen > &it, const cmplx< vtype_t< T > > *src, ndarr< cmplx< T > > &dst) | 
| template<typename T, size_t vlen> | |
| void | copy_output (const multi_iter< vlen > &it, const vtype_t< T > *src, ndarr< T > &dst) | 
| template<typename T, size_t vlen> | |
| void | copy_output (const multi_iter< vlen > &it, const T *src, ndarr< T > &dst) | 
| template<typename Tplan, typename T, typename T0, typename Exec> | |
| void | general_nd (const cndarr< T > &in, ndarr< T > &out, const shape_t &axes, T0 fct, size_t nthreads, const Exec &exec, const bool allow_inplace=true) | 
| template<typename T, size_t vlen> | |
| void | copy_hartley (const multi_iter< vlen > &it, const vtype_t< T > *src, ndarr< T > &dst) | 
| template<typename T, size_t vlen> | |
| void | copy_hartley (const multi_iter< vlen > &it, const T *src, ndarr< T > &dst) | 
| template<typename T> | |
| void | general_r2c (const cndarr< T > &in, ndarr< cmplx< T > > &out, size_t axis, bool forward, T fct, size_t nthreads) | 
| template<typename T> | |
| void | general_c2r (const cndarr< cmplx< T > > &in, ndarr< T > &out, size_t axis, bool forward, T fct, size_t nthreads) | 
| template<typename T> | |
| void | c2c (const shape_t &shape, const stride_t &stride_in, const stride_t &stride_out, const shape_t &axes, bool forward, const std::complex< T > *data_in, std::complex< T > *data_out, T fct, size_t nthreads=1) | 
| template<typename T> | |
| void | dct (const shape_t &shape, const stride_t &stride_in, const stride_t &stride_out, const shape_t &axes, int type, const T *data_in, T *data_out, T fct, bool ortho, size_t nthreads=1) | 
| template<typename T> | |
| void | dst (const shape_t &shape, const stride_t &stride_in, const stride_t &stride_out, const shape_t &axes, int type, const T *data_in, T *data_out, T fct, bool ortho, size_t nthreads=1) | 
| template<typename T> | |
| void | r2c (const shape_t &shape_in, const stride_t &stride_in, const stride_t &stride_out, size_t axis, bool forward, const T *data_in, std::complex< T > *data_out, T fct, size_t nthreads=1) | 
| template<typename T> | |
| void | r2c (const shape_t &shape_in, const stride_t &stride_in, const stride_t &stride_out, const shape_t &axes, bool forward, const T *data_in, std::complex< T > *data_out, T fct, size_t nthreads=1) | 
| template<typename T> | |
| void | c2r (const shape_t &shape_out, const stride_t &stride_in, const stride_t &stride_out, size_t axis, bool forward, const std::complex< T > *data_in, T *data_out, T fct, size_t nthreads=1) | 
| template<typename T> | |
| void | c2r (const shape_t &shape_out, const stride_t &stride_in, const stride_t &stride_out, const shape_t &axes, bool forward, const std::complex< T > *data_in, T *data_out, T fct, size_t nthreads=1) | 
| template<typename T> | |
| void | r2r_fftpack (const shape_t &shape, const stride_t &stride_in, const stride_t &stride_out, const shape_t &axes, bool real2hermitian, bool forward, const T *data_in, T *data_out, T fct, size_t nthreads=1) | 
| template<typename T> | |
| void | r2r_separable_hartley (const shape_t &shape, const stride_t &stride_in, const stride_t &stride_out, const shape_t &axes, const T *data_in, T *data_out, T fct, size_t nthreads=1) | 
| template<typename T> | |
| void | r2r_genuine_hartley (const shape_t &shape, const stride_t &stride_in, const stride_t &stride_out, const shape_t &axes, const T *data_in, T *data_out, T fct, size_t nthreads=1) | 
Variables | |
| constexpr bool | FORWARD = true | 
| constexpr bool | BACKWARD = false | 
| using pocketfft::detail::add_vec_t = typename add_vec<T>::type | 
| using pocketfft::detail::shape_t = std::vector<size_t> | 
| using pocketfft::detail::stride_t = std::vector<ptrdiff_t> | 
| using pocketfft::detail::vtype_t = typename VTYPE<T>::type | 
      
  | 
  inline | 
      
  | 
  inline | 
| arr< char > pocketfft::detail::alloc_tmp | ( | const shape_t & | shape, | 
| const shape_t & | axes, | ||
| size_t | elemsize ) | 
| arr< char > pocketfft::detail::alloc_tmp | ( | const shape_t & | shape, | 
| size_t | axsize, | ||
| size_t | elemsize ) | 
| void pocketfft::detail::c2c | ( | const shape_t & | shape, | 
| const stride_t & | stride_in, | ||
| const stride_t & | stride_out, | ||
| const shape_t & | axes, | ||
| bool | forward, | ||
| const std::complex< T > * | data_in, | ||
| std::complex< T > * | data_out, | ||
| T | fct, | ||
| size_t | nthreads = 1 ) | 
| void pocketfft::detail::c2r | ( | const shape_t & | shape_out, | 
| const stride_t & | stride_in, | ||
| const stride_t & | stride_out, | ||
| const shape_t & | axes, | ||
| bool | forward, | ||
| const std::complex< T > * | data_in, | ||
| T * | data_out, | ||
| T | fct, | ||
| size_t | nthreads = 1 ) | 
| void pocketfft::detail::c2r | ( | const shape_t & | shape_out, | 
| const stride_t & | stride_in, | ||
| const stride_t & | stride_out, | ||
| size_t | axis, | ||
| bool | forward, | ||
| const std::complex< T > * | data_in, | ||
| T * | data_out, | ||
| T | fct, | ||
| size_t | nthreads = 1 ) | 
| void pocketfft::detail::copy_hartley | ( | const multi_iter< vlen > & | it, | 
| const T * | src, | ||
| ndarr< T > & | dst ) | 
| void pocketfft::detail::copy_hartley | ( | const multi_iter< vlen > & | it, | 
| const vtype_t< T > * | src, | ||
| ndarr< T > & | dst ) | 
| void pocketfft::detail::copy_input | ( | const multi_iter< vlen > & | it, | 
| const cndarr< cmplx< T > > & | src, | ||
| cmplx< vtype_t< T > > * | dst ) | 
| void pocketfft::detail::copy_input | ( | const multi_iter< vlen > & | it, | 
| const cndarr< T > & | src, | ||
| T * | dst ) | 
| void pocketfft::detail::copy_input | ( | const multi_iter< vlen > & | it, | 
| const cndarr< T > & | src, | ||
| vtype_t< T > * | dst ) | 
| void pocketfft::detail::copy_output | ( | const multi_iter< vlen > & | it, | 
| const cmplx< vtype_t< T > > * | src, | ||
| ndarr< cmplx< T > > & | dst ) | 
| void pocketfft::detail::copy_output | ( | const multi_iter< vlen > & | it, | 
| const T * | src, | ||
| ndarr< T > & | dst ) | 
| void pocketfft::detail::copy_output | ( | const multi_iter< vlen > & | it, | 
| const vtype_t< T > * | src, | ||
| ndarr< T > & | dst ) | 
      
  | 
  delete | 
| void pocketfft::detail::dct | ( | const shape_t & | shape, | 
| const stride_t & | stride_in, | ||
| const stride_t & | stride_out, | ||
| const shape_t & | axes, | ||
| int | type, | ||
| const T * | data_in, | ||
| T * | data_out, | ||
| T | fct, | ||
| bool | ortho, | ||
| size_t | nthreads = 1 ) | 
| void pocketfft::detail::dst | ( | const shape_t & | shape, | 
| const stride_t & | stride_in, | ||
| const stride_t & | stride_out, | ||
| const shape_t & | axes, | ||
| int | type, | ||
| const T * | data_in, | ||
| T * | data_out, | ||
| T | fct, | ||
| bool | ortho, | ||
| size_t | nthreads = 1 ) | 
| void pocketfft::detail::general_c2r | ( | const cndarr< cmplx< T > > & | in, | 
| ndarr< T > & | out, | ||
| size_t | axis, | ||
| bool | forward, | ||
| T | fct, | ||
| size_t | nthreads ) | 
| void pocketfft::detail::general_nd | ( | const cndarr< T > & | in, | 
| ndarr< T > & | out, | ||
| const shape_t & | axes, | ||
| T0 | fct, | ||
| size_t | nthreads, | ||
| const Exec & | exec, | ||
| const bool | allow_inplace = true ) | 
| void pocketfft::detail::general_r2c | ( | const cndarr< T > & | in, | 
| ndarr< cmplx< T > > & | out, | ||
| size_t | axis, | ||
| bool | forward, | ||
| T | fct, | ||
| size_t | nthreads ) | 
| std::shared_ptr< T > pocketfft::detail::get_plan | ( | size_t | length | ) | 
      
  | 
  inline | 
      
  | 
  inline | 
      
  | 
  inline | 
| void pocketfft::detail::r2c | ( | const shape_t & | shape_in, | 
| const stride_t & | stride_in, | ||
| const stride_t & | stride_out, | ||
| const shape_t & | axes, | ||
| bool | forward, | ||
| const T * | data_in, | ||
| std::complex< T > * | data_out, | ||
| T | fct, | ||
| size_t | nthreads = 1 ) | 
| void pocketfft::detail::r2c | ( | const shape_t & | shape_in, | 
| const stride_t & | stride_in, | ||
| const stride_t & | stride_out, | ||
| size_t | axis, | ||
| bool | forward, | ||
| const T * | data_in, | ||
| std::complex< T > * | data_out, | ||
| T | fct, | ||
| size_t | nthreads = 1 ) | 
| void pocketfft::detail::r2r_fftpack | ( | const shape_t & | shape, | 
| const stride_t & | stride_in, | ||
| const stride_t & | stride_out, | ||
| const shape_t & | axes, | ||
| bool | real2hermitian, | ||
| bool | forward, | ||
| const T * | data_in, | ||
| T * | data_out, | ||
| T | fct, | ||
| size_t | nthreads = 1 ) | 
| void pocketfft::detail::r2r_genuine_hartley | ( | const shape_t & | shape, | 
| const stride_t & | stride_in, | ||
| const stride_t & | stride_out, | ||
| const shape_t & | axes, | ||
| const T * | data_in, | ||
| T * | data_out, | ||
| T | fct, | ||
| size_t | nthreads = 1 ) | 
| void pocketfft::detail::r2r_separable_hartley | ( | const shape_t & | shape, | 
| const stride_t & | stride_in, | ||
| const stride_t & | stride_out, | ||
| const shape_t & | axes, | ||
| const T * | data_in, | ||
| T * | data_out, | ||
| T | fct, | ||
| size_t | nthreads = 1 ) | 
| void pocketfft::detail::ROT90 | ( | cmplx< T > & | a | ) | 
| void pocketfft::detail::ROTX90 | ( | cmplx< T > & | a | ) | 
      
  | 
  delete | 
| void pocketfft::detail::special_mul | ( | const cmplx< T > & | v1, | 
| const cmplx< T2 > & | v2, | ||
| cmplx< T > & | res ) | 
      
  | 
  delete | 
| bool pocketfft::detail::BACKWARD = false | 
      
  | 
  constexpr |