2024-10-15 23:12:17 +08:00
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
< html xmlns = "http://www.w3.org/1999/xhtml" lang = "en-US" >
< head >
< meta http-equiv = "Content-Type" content = "text/xhtml;charset=UTF-8" / >
< meta http-equiv = "X-UA-Compatible" content = "IE=11" / >
2025-02-07 04:16:29 +08:00
< meta name = "generator" content = "Doxygen 1.13.2" / >
2024-10-15 23:12:17 +08:00
< meta name = "viewport" content = "width=device-width, initial-scale=1" / >
< title > MLX: mlx/3rdparty/pocketfft.h File Reference< / title >
< link href = "tabs.css" rel = "stylesheet" type = "text/css" / >
< script type = "text/javascript" src = "jquery.js" > < / script >
< script type = "text/javascript" src = "dynsections.js" > < / script >
< script type = "text/javascript" src = "clipboard.js" > < / script >
< link href = "navtree.css" rel = "stylesheet" type = "text/css" / >
2025-01-10 05:56:20 +08:00
< script type = "text/javascript" src = "navtreedata.js" > < / script >
< script type = "text/javascript" src = "navtree.js" > < / script >
2024-10-15 23:12:17 +08:00
< script type = "text/javascript" src = "resize.js" > < / script >
< script type = "text/javascript" src = "cookie.js" > < / script >
< link href = "search/search.css" rel = "stylesheet" type = "text/css" / >
< script type = "text/javascript" src = "search/searchdata.js" > < / script >
< script type = "text/javascript" src = "search/search.js" > < / script >
2025-01-10 05:56:20 +08:00
< script type = "text/javascript" >
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699& dn=expat.txt MIT */
$(function() { init_search(); });
/* @license-end */
< / script >
2024-10-15 23:12:17 +08:00
< link href = "doxygen.css" rel = "stylesheet" type = "text/css" / >
< / head >
< body >
< div id = "top" > <!-- do not remove this div, it is closed by doxygen! -->
< div id = "titlearea" >
< table cellspacing = "0" cellpadding = "0" >
< tbody >
< tr id = "projectrow" >
< td id = "projectalign" >
< div id = "projectname" > MLX
< / div >
< / td >
2025-01-10 05:56:20 +08:00
< td > < div id = "MSearchBox" class = "MSearchBoxInactive" >
< span class = "left" >
< span id = "MSearchSelect" onmouseover = "return searchBox.OnSearchSelectShow()" onmouseout = "return searchBox.OnSearchSelectHide()" >   < / span >
< input type = "text" id = "MSearchField" value = "" placeholder = "Search" accesskey = "S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
< / span > < span class = "right" >
< a id = "MSearchClose" href = "javascript:searchBox.CloseResultsWindow()" > < img id = "MSearchCloseImg" border = "0" src = "search/close.svg" alt = "" / > < / a >
< / span >
< / div >
< / td >
2024-10-15 23:12:17 +08:00
< / tr >
< / tbody >
< / table >
< / div >
<!-- end header part -->
2025-02-07 04:16:29 +08:00
<!-- Generated by Doxygen 1.13.2 -->
2024-10-15 23:12:17 +08:00
< script type = "text/javascript" >
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699& dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
< / script >
< script type = "text/javascript" >
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699& dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
< / script >
2025-01-10 05:56:20 +08:00
< / div > <!-- top -->
< div id = "side-nav" class = "ui-resizable side-nav-resizable" >
< div id = "nav-tree" >
< div id = "nav-tree-contents" >
< div id = "nav-sync" class = "sync" > < / div >
< / div >
< / div >
< div id = "splitbar" style = "-moz-user-select:none;"
class="ui-resizable-handle">
< / div >
< / div >
2024-10-15 23:12:17 +08:00
< script type = "text/javascript" >
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699& dn=expat.txt MIT */
2025-01-10 05:56:20 +08:00
$(function(){initNavTree('pocketfft_8h.html',''); initResizable(true); });
2024-10-15 23:12:17 +08:00
/* @license-end */
< / script >
2025-01-10 05:56:20 +08:00
< div id = "doc-content" >
2024-10-15 23:12:17 +08:00
<!-- window showing the filter options -->
< div id = "MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
< / div >
<!-- iframe showing the search results (closed by default) -->
< div id = "MSearchResultsWindow" >
< div id = "MSearchResults" >
< div class = "SRPage" >
< div id = "SRIndex" >
< div id = "SRResults" > < / div >
< div class = "SRStatus" id = "Loading" > Loading...< / div >
< div class = "SRStatus" id = "Searching" > Searching...< / div >
< div class = "SRStatus" id = "NoMatches" > No Matches< / div >
< / div >
< / div >
< / div >
< / div >
< div class = "header" >
< div class = "summary" >
< a href = "#nested-classes" > Classes< / a > |
< a href = "#namespaces" > Namespaces< / a > |
< a href = "#define-members" > Macros< / a > |
< a href = "#typedef-members" > Typedefs< / a > |
< a href = "#func-members" > Functions< / a > |
< a href = "#var-members" > Variables< / a > < / div >
< div class = "headertitle" > < div class = "title" > pocketfft.h File Reference< / div > < / div >
< / div > <!-- header -->
< div class = "contents" >
< div class = "textblock" > < code > #include < cmath> < / code > < br / >
< code > #include < cstdlib> < / code > < br / >
< code > #include < stdexcept> < / code > < br / >
< code > #include < memory> < / code > < br / >
< code > #include < vector> < / code > < br / >
< code > #include < complex> < / code > < br / >
< code > #include < algorithm> < / code > < br / >
< code > #include < mutex> < / code > < br / >
< code > #include < condition_variable> < / code > < br / >
< code > #include < thread> < / code > < br / >
< code > #include < queue> < / code > < br / >
< code > #include < atomic> < / code > < br / >
< code > #include < functional> < / code > < br / >
< code > #include < new> < / code > < br / >
< / div >
< p > < a href = "pocketfft_8h_source.html" > Go to the source code of this file.< / a > < / p >
< table class = "memberdecls" >
< tr class = "heading" > < td colspan = "2" > < h2 class = "groupheader" > < a id = "nested-classes" name = "nested-classes" > < / a >
Classes< / h2 > < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structpocketfft_1_1detail_1_1_v_l_e_n.html" > pocketfft::detail::VLEN< T > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classpocketfft_1_1detail_1_1arr.html" > pocketfft::detail::arr< T > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structpocketfft_1_1detail_1_1cmplx.html" > pocketfft::detail::cmplx< T > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classpocketfft_1_1detail_1_1sincos__2pibyn.html" > pocketfft::detail::sincos_2pibyn< T > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structpocketfft_1_1detail_1_1util.html" > pocketfft::detail::util< / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classpocketfft_1_1detail_1_1threading_1_1latch.html" > pocketfft::detail::threading::latch< / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classpocketfft_1_1detail_1_1threading_1_1concurrent__queue.html" > pocketfft::detail::threading::concurrent_queue< T > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structpocketfft_1_1detail_1_1threading_1_1aligned__allocator.html" > pocketfft::detail::threading::aligned_allocator< T > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classpocketfft_1_1detail_1_1threading_1_1thread__pool.html" > pocketfft::detail::threading::thread_pool< / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classpocketfft_1_1detail_1_1cfftp.html" > pocketfft::detail::cfftp< T0 > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classpocketfft_1_1detail_1_1rfftp.html" > pocketfft::detail::rfftp< T0 > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classpocketfft_1_1detail_1_1fftblue.html" > pocketfft::detail::fftblue< T0 > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classpocketfft_1_1detail_1_1pocketfft__c.html" > pocketfft::detail::pocketfft_c< T0 > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classpocketfft_1_1detail_1_1pocketfft__r.html" > pocketfft::detail::pocketfft_r< T0 > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classpocketfft_1_1detail_1_1_t__dct1.html" > pocketfft::detail::T_dct1< T0 > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classpocketfft_1_1detail_1_1_t__dst1.html" > pocketfft::detail::T_dst1< T0 > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classpocketfft_1_1detail_1_1_t__dcst23.html" > pocketfft::detail::T_dcst23< T0 > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classpocketfft_1_1detail_1_1_t__dcst4.html" > pocketfft::detail::T_dcst4< T0 > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classpocketfft_1_1detail_1_1arr__info.html" > pocketfft::detail::arr_info< / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classpocketfft_1_1detail_1_1cndarr.html" > pocketfft::detail::cndarr< T > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classpocketfft_1_1detail_1_1ndarr.html" > pocketfft::detail::ndarr< T > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classpocketfft_1_1detail_1_1multi__iter.html" > pocketfft::detail::multi_iter< N > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classpocketfft_1_1detail_1_1simple__iter.html" > pocketfft::detail::simple_iter< / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classpocketfft_1_1detail_1_1rev__iter.html" > pocketfft::detail::rev_iter< / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structpocketfft_1_1detail_1_1_v_t_y_p_e.html" > pocketfft::detail::VTYPE< T > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structpocketfft_1_1detail_1_1add__vec.html" > pocketfft::detail::add_vec< T > < / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-02-07 04:16:29 +08:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structpocketfft_1_1detail_1_1add__vec_3_01cmplx_3_01_t_01_4_01_4.html" > pocketfft::detail::add_vec< cmplx< T > > < / a > < / td > < / tr >
2024-10-15 23:12:17 +08:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structpocketfft_1_1detail_1_1_exec_c2_c.html" > pocketfft::detail::ExecC2C< / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structpocketfft_1_1detail_1_1_exec_hartley.html" > pocketfft::detail::ExecHartley< / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structpocketfft_1_1detail_1_1_exec_dcst.html" > pocketfft::detail::ExecDcst< / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structpocketfft_1_1detail_1_1_exec_r2_r.html" > pocketfft::detail::ExecR2R< / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< / table > < table class = "memberdecls" >
< tr class = "heading" > < td colspan = "2" > < h2 class = "groupheader" > < a id = "namespaces" name = "namespaces" > < / a >
Namespaces< / h2 > < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > namespace   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft.html" > pocketfft< / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > namespace   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html" > pocketfft::detail< / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > namespace   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail_1_1threading.html" > pocketfft::detail::threading< / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< / table > < table class = "memberdecls" >
< tr class = "heading" > < td colspan = "2" > < h2 class = "groupheader" > < a id = "define-members" name = "define-members" > < / a >
Macros< / h2 > < / td > < / tr >
< tr class = "memitem:a9e604bcf20603d70b62b233d3f306714" id = "r_a9e604bcf20603d70b62b233d3f306714" > < td class = "memItemLeft" align = "right" valign = "top" > #define  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a9e604bcf20603d70b62b233d3f306714" > POCKETFFT_CACHE_SIZE< / a >       0< / td > < / tr >
< tr class = "separator:a9e604bcf20603d70b62b233d3f306714" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a7020984e0ca1d6e565629ca6e7c1a7e0" id = "r_a7020984e0ca1d6e565629ca6e7c1a7e0" > < td class = "memItemLeft" align = "right" valign = "top" > #define  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a7020984e0ca1d6e565629ca6e7c1a7e0" > POCKETFFT_NOINLINE< / a > < / td > < / tr >
< tr class = "separator:a7020984e0ca1d6e565629ca6e7c1a7e0" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:abbe177c4872821b32d76d5ce08d6ce82" id = "r_abbe177c4872821b32d76d5ce08d6ce82" > < td class = "memItemLeft" align = "right" valign = "top" > #define  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#abbe177c4872821b32d76d5ce08d6ce82" > POCKETFFT_RESTRICT< / a > < / td > < / tr >
< tr class = "separator:abbe177c4872821b32d76d5ce08d6ce82" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:aa9cdaed0819c48f97fcd19f05c289160" id = "r_aa9cdaed0819c48f97fcd19f05c289160" > < td class = "memItemLeft" align = "right" valign = "top" > #define  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#aa9cdaed0819c48f97fcd19f05c289160" > POCKETFFT_NO_VECTORS< / a > < / td > < / tr >
< tr class = "separator:aa9cdaed0819c48f97fcd19f05c289160" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ae2fd9d433c417f0768fe1b58145b2e59" id = "r_ae2fd9d433c417f0768fe1b58145b2e59" > < td class = "memItemLeft" align = "right" valign = "top" > #define  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#ae2fd9d433c417f0768fe1b58145b2e59" > POCKETFFT_PREP3< / a > (idx)< / td > < / tr >
< tr class = "separator:ae2fd9d433c417f0768fe1b58145b2e59" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ac112b26e5130636ac1d91c2f0af45e0b" id = "r_ac112b26e5130636ac1d91c2f0af45e0b" > < td class = "memItemLeft" align = "right" valign = "top" > #define  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#ac112b26e5130636ac1d91c2f0af45e0b" > POCKETFFT_PARTSTEP3a< / a > (u1, u2, twr, twi)< / td > < / tr >
< tr class = "separator:ac112b26e5130636ac1d91c2f0af45e0b" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a41e646e5535a3a1c6e0d0e67122382f5" id = "r_a41e646e5535a3a1c6e0d0e67122382f5" > < td class = "memItemLeft" align = "right" valign = "top" > #define  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a41e646e5535a3a1c6e0d0e67122382f5" > POCKETFFT_PARTSTEP3b< / a > (u1, u2, twr, twi)< / td > < / tr >
< tr class = "separator:a41e646e5535a3a1c6e0d0e67122382f5" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a73077c26d2a82754db2a9c48bc0e11a6" id = "r_a73077c26d2a82754db2a9c48bc0e11a6" > < td class = "memItemLeft" align = "right" valign = "top" > #define  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a73077c26d2a82754db2a9c48bc0e11a6" > POCKETFFT_PREP5< / a > (idx)< / td > < / tr >
< tr class = "separator:a73077c26d2a82754db2a9c48bc0e11a6" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a078bc2bd38ab0ffb15b981878c9de03c" id = "r_a078bc2bd38ab0ffb15b981878c9de03c" > < td class = "memItemLeft" align = "right" valign = "top" > #define  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a078bc2bd38ab0ffb15b981878c9de03c" > POCKETFFT_PARTSTEP5a< / a > (u1, u2, twar, twbr, twai, twbi)< / td > < / tr >
< tr class = "separator:a078bc2bd38ab0ffb15b981878c9de03c" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ab8a5da142555e059c5e9c618f75b46fa" id = "r_ab8a5da142555e059c5e9c618f75b46fa" > < td class = "memItemLeft" align = "right" valign = "top" > #define  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#ab8a5da142555e059c5e9c618f75b46fa" > POCKETFFT_PARTSTEP5b< / a > (u1, u2, twar, twbr, twai, twbi)< / td > < / tr >
< tr class = "separator:ab8a5da142555e059c5e9c618f75b46fa" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ae7c4d0cda5b3824f84eac54addabd6ec" id = "r_ae7c4d0cda5b3824f84eac54addabd6ec" > < td class = "memItemLeft" align = "right" valign = "top" > #define  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#ae7c4d0cda5b3824f84eac54addabd6ec" > POCKETFFT_PREP7< / a > (idx)< / td > < / tr >
< tr class = "separator:ae7c4d0cda5b3824f84eac54addabd6ec" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a9c2fc2de74a031c38e9d8a21249ae1cd" id = "r_a9c2fc2de74a031c38e9d8a21249ae1cd" > < td class = "memItemLeft" align = "right" valign = "top" > #define  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a9c2fc2de74a031c38e9d8a21249ae1cd" > POCKETFFT_PARTSTEP7a0< / a > (u1, u2, x1, x2, x3, y1, y2, y3, out1, out2)< / td > < / tr >
< tr class = "separator:a9c2fc2de74a031c38e9d8a21249ae1cd" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a2b27f6e1f0ee131765186870517255c6" id = "r_a2b27f6e1f0ee131765186870517255c6" > < td class = "memItemLeft" align = "right" valign = "top" > #define  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a2b27f6e1f0ee131765186870517255c6" > POCKETFFT_PARTSTEP7a< / a > (u1, u2, x1, x2, x3, y1, y2, y3)< / td > < / tr >
< tr class = "separator:a2b27f6e1f0ee131765186870517255c6" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:af7de1f82911a973d8446cf3f40ff3044" id = "r_af7de1f82911a973d8446cf3f40ff3044" > < td class = "memItemLeft" align = "right" valign = "top" > #define  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#af7de1f82911a973d8446cf3f40ff3044" > POCKETFFT_PARTSTEP7< / a > (u1, u2, x1, x2, x3, y1, y2, y3)< / td > < / tr >
< tr class = "separator:af7de1f82911a973d8446cf3f40ff3044" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a536d2ea61479d4b074bf52ce09fdbc3a" id = "r_a536d2ea61479d4b074bf52ce09fdbc3a" > < td class = "memItemLeft" align = "right" valign = "top" > #define  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a536d2ea61479d4b074bf52ce09fdbc3a" > POCKETFFT_PREP11< / a > (idx)< / td > < / tr >
< tr class = "separator:a536d2ea61479d4b074bf52ce09fdbc3a" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ab2df44457945ab625fb38a777a46af1b" id = "r_ab2df44457945ab625fb38a777a46af1b" > < td class = "memItemLeft" align = "right" valign = "top" > #define  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#ab2df44457945ab625fb38a777a46af1b" > POCKETFFT_PARTSTEP11a0< / a > (u1, u2, x1, x2, x3, x4, x5, y1, y2, y3, y4, y5, out1, out2)< / td > < / tr >
< tr class = "separator:ab2df44457945ab625fb38a777a46af1b" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ac35e1aa5ae84d655256b7a0afd9051c2" id = "r_ac35e1aa5ae84d655256b7a0afd9051c2" > < td class = "memItemLeft" align = "right" valign = "top" > #define  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#ac35e1aa5ae84d655256b7a0afd9051c2" > POCKETFFT_PARTSTEP11a< / a > (u1, u2, x1, x2, x3, x4, x5, y1, y2, y3, y4, y5)< / td > < / tr >
< tr class = "separator:ac35e1aa5ae84d655256b7a0afd9051c2" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a1793d0d00f2e13101eb5ad0719c40817" id = "r_a1793d0d00f2e13101eb5ad0719c40817" > < td class = "memItemLeft" align = "right" valign = "top" > #define  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a1793d0d00f2e13101eb5ad0719c40817" > POCKETFFT_PARTSTEP11< / a > (u1, u2, x1, x2, x3, x4, x5, y1, y2, y3, y4, y5)< / td > < / tr >
< tr class = "separator:a1793d0d00f2e13101eb5ad0719c40817" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:acffdf2e1ab84f36a7a097e1b8b87a9f9" id = "r_acffdf2e1ab84f36a7a097e1b8b87a9f9" > < td class = "memItemLeft" align = "right" valign = "top" > #define  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#acffdf2e1ab84f36a7a097e1b8b87a9f9" > POCKETFFT_REARRANGE< / a > (rx, ix, ry, iy)< / td > < / tr >
< tr class = "separator:acffdf2e1ab84f36a7a097e1b8b87a9f9" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< / table > < table class = "memberdecls" >
< tr class = "heading" > < td colspan = "2" > < h2 class = "groupheader" > < a id = "typedef-members" name = "typedef-members" > < / a >
Typedefs< / h2 > < / td > < / tr >
< tr class = "memitem:a885ee37fcf564a268a5c8ca9ea8603e1" id = "r_a885ee37fcf564a268a5c8ca9ea8603e1" > < td class = "memItemLeft" align = "right" valign = "top" > using  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#a885ee37fcf564a268a5c8ca9ea8603e1" > pocketfft::detail::shape_t< / a > = std::vector< size_t> < / td > < / tr >
< tr class = "separator:a885ee37fcf564a268a5c8ca9ea8603e1" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:afb987c919e9424a996d0fc8b3c23cc84" id = "r_afb987c919e9424a996d0fc8b3c23cc84" > < td class = "memItemLeft" align = "right" valign = "top" > using  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#afb987c919e9424a996d0fc8b3c23cc84" > pocketfft::detail::stride_t< / a > = std::vector< ptrdiff_t> < / td > < / tr >
< tr class = "separator:afb987c919e9424a996d0fc8b3c23cc84" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-01-10 05:56:20 +08:00
< tr class = "memitem:a3edfb93aeed2f8258183d463ea291d62" id = "r_a3edfb93aeed2f8258183d463ea291d62" > < td class = "memTemplParams" colspan = "2" > template< typename T> < / td > < / tr >
2024-10-15 23:12:17 +08:00
< tr class = "memitem:a3edfb93aeed2f8258183d463ea291d62" > < td class = "memTemplItemLeft" align = "right" valign = "top" > using  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#a3edfb93aeed2f8258183d463ea291d62" > pocketfft::detail::vtype_t< / a > = typename < a class = "el" href = "structpocketfft_1_1detail_1_1_v_t_y_p_e.html" > VTYPE< / a > < T> ::type< / td > < / tr >
< tr class = "separator:a3edfb93aeed2f8258183d463ea291d62" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-01-10 05:56:20 +08:00
< tr class = "memitem:a421aa74fbee775a96463246f72b144d6" id = "r_a421aa74fbee775a96463246f72b144d6" > < td class = "memTemplParams" colspan = "2" > template< typename T> < / td > < / tr >
2024-10-15 23:12:17 +08:00
< tr class = "memitem:a421aa74fbee775a96463246f72b144d6" > < td class = "memTemplItemLeft" align = "right" valign = "top" > using  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#a421aa74fbee775a96463246f72b144d6" > pocketfft::detail::add_vec_t< / a > = typename < a class = "el" href = "structpocketfft_1_1detail_1_1add__vec.html" > add_vec< / a > < T> ::type< / td > < / tr >
< tr class = "separator:a421aa74fbee775a96463246f72b144d6" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-01-10 05:56:20 +08:00
< tr class = "memitem:a885ee37fcf564a268a5c8ca9ea8603e1" id = "r_a885ee37fcf564a268a5c8ca9ea8603e1" > < td class = "memItemLeft" align = "right" valign = "top" > using  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft.html#a885ee37fcf564a268a5c8ca9ea8603e1" > pocketfft::shape_t< / a > < / td > < / tr >
< tr class = "separator:a885ee37fcf564a268a5c8ca9ea8603e1" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:afb987c919e9424a996d0fc8b3c23cc84" id = "r_afb987c919e9424a996d0fc8b3c23cc84" > < td class = "memItemLeft" align = "right" valign = "top" > using  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft.html#afb987c919e9424a996d0fc8b3c23cc84" > pocketfft::stride_t< / a > < / td > < / tr >
< tr class = "separator:afb987c919e9424a996d0fc8b3c23cc84" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2024-10-15 23:12:17 +08:00
< / table > < table class = "memberdecls" >
< tr class = "heading" > < td colspan = "2" > < h2 class = "groupheader" > < a id = "func-members" name = "func-members" > < / a >
Functions< / h2 > < / td > < / tr >
2025-01-10 05:56:20 +08:00
< tr class = "memitem:a499c1e8b7d79a5272af024f46c63ff9d" id = "r_a499c1e8b7d79a5272af024f46c63ff9d" > < td class = "memTemplParams" colspan = "2" > template< typename T> < / td > < / tr >
2024-10-15 23:12:17 +08:00
< tr class = "memitem:a499c1e8b7d79a5272af024f46c63ff9d" > < td class = "memTemplItemLeft" align = "right" valign = "top" > T  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#a499c1e8b7d79a5272af024f46c63ff9d" > pocketfft::detail::cos< / a > (T)=delete< / td > < / tr >
< tr class = "separator:a499c1e8b7d79a5272af024f46c63ff9d" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-01-10 05:56:20 +08:00
< tr class = "memitem:a07745f4a069f811859308281b2982258" id = "r_a07745f4a069f811859308281b2982258" > < td class = "memTemplParams" colspan = "2" > template< typename T> < / td > < / tr >
2024-10-15 23:12:17 +08:00
< tr class = "memitem:a07745f4a069f811859308281b2982258" > < td class = "memTemplItemLeft" align = "right" valign = "top" > T  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#a07745f4a069f811859308281b2982258" > pocketfft::detail::sin< / a > (T)=delete< / td > < / tr >
< tr class = "separator:a07745f4a069f811859308281b2982258" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-01-10 05:56:20 +08:00
< tr class = "memitem:a774f8b73f28259d4276bd188b540a3e3" id = "r_a774f8b73f28259d4276bd188b540a3e3" > < td class = "memTemplParams" colspan = "2" > template< typename T> < / td > < / tr >
2024-10-15 23:12:17 +08:00
< tr class = "memitem:a774f8b73f28259d4276bd188b540a3e3" > < td class = "memTemplItemLeft" align = "right" valign = "top" > T  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#a774f8b73f28259d4276bd188b540a3e3" > pocketfft::detail::sqrt< / a > (T)=delete< / td > < / tr >
< tr class = "separator:a774f8b73f28259d4276bd188b540a3e3" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ae397445c61400f47a8fe3f8e1b6d0b76" id = "r_ae397445c61400f47a8fe3f8e1b6d0b76" > < td class = "memItemLeft" align = "right" valign = "top" > void *  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#ae397445c61400f47a8fe3f8e1b6d0b76" > pocketfft::detail::aligned_alloc< / a > (size_t align, size_t size)< / td > < / tr >
< tr class = "separator:ae397445c61400f47a8fe3f8e1b6d0b76" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:aec7820e36a33e0a8bb83aa03b04b81e8" id = "r_aec7820e36a33e0a8bb83aa03b04b81e8" > < td class = "memItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#aec7820e36a33e0a8bb83aa03b04b81e8" > pocketfft::detail::aligned_dealloc< / a > (void *ptr)< / td > < / tr >
< tr class = "separator:aec7820e36a33e0a8bb83aa03b04b81e8" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-01-10 05:56:20 +08:00
< tr class = "memitem:a8c6ec35091d5136d991577623133fcf2" id = "r_a8c6ec35091d5136d991577623133fcf2" > < td class = "memTemplParams" colspan = "2" > template< typename T> < / td > < / tr >
2024-10-15 23:12:17 +08:00
< tr class = "memitem:a8c6ec35091d5136d991577623133fcf2" > < td class = "memTemplItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#a8c6ec35091d5136d991577623133fcf2" > pocketfft::detail::PM< / a > (T & a, T & b, T c, T d)< / td > < / tr >
< tr class = "separator:a8c6ec35091d5136d991577623133fcf2" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-01-10 05:56:20 +08:00
< tr class = "memitem:aa3477781ef54788c9fa7755cb8ea75fd" id = "r_aa3477781ef54788c9fa7755cb8ea75fd" > < td class = "memTemplParams" colspan = "2" > template< typename T> < / td > < / tr >
2024-10-15 23:12:17 +08:00
< tr class = "memitem:aa3477781ef54788c9fa7755cb8ea75fd" > < td class = "memTemplItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#aa3477781ef54788c9fa7755cb8ea75fd" > pocketfft::detail::PMINPLACE< / a > (T & a, T & b)< / td > < / tr >
< tr class = "separator:aa3477781ef54788c9fa7755cb8ea75fd" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-01-10 05:56:20 +08:00
< tr class = "memitem:af5eedf3cdfc83c0a30807092c39a9ce2" id = "r_af5eedf3cdfc83c0a30807092c39a9ce2" > < td class = "memTemplParams" colspan = "2" > template< typename T> < / td > < / tr >
2024-10-15 23:12:17 +08:00
< tr class = "memitem:af5eedf3cdfc83c0a30807092c39a9ce2" > < td class = "memTemplItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#af5eedf3cdfc83c0a30807092c39a9ce2" > pocketfft::detail::MPINPLACE< / a > (T & a, T & b)< / td > < / tr >
< tr class = "separator:af5eedf3cdfc83c0a30807092c39a9ce2" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-01-10 05:56:20 +08:00
< tr class = "memitem:a66d79051d502046a9b9f103e744dbad3" id = "r_a66d79051d502046a9b9f103e744dbad3" > < td class = "memTemplParams" colspan = "2" > template< typename T> < / td > < / tr >
2024-10-15 23:12:17 +08:00
< tr class = "memitem:a66d79051d502046a9b9f103e744dbad3" > < td class = "memTemplItemLeft" align = "right" valign = "top" > < a class = "el" href = "structpocketfft_1_1detail_1_1cmplx.html" > cmplx< / a > < T >   < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#a66d79051d502046a9b9f103e744dbad3" > pocketfft::detail::conj< / a > (const < a class = "el" href = "structpocketfft_1_1detail_1_1cmplx.html" > cmplx< / a > < T > & a)< / td > < / tr >
< tr class = "separator:a66d79051d502046a9b9f103e744dbad3" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-01-10 05:56:20 +08:00
< tr class = "memitem:a8da1f3d4a0b712a0285529f24187fe76" id = "r_a8da1f3d4a0b712a0285529f24187fe76" > < td class = "memTemplParams" colspan = "2" > template< bool fwd, typename T, typename T2> < / td > < / tr >
2024-10-15 23:12:17 +08:00
< tr class = "memitem:a8da1f3d4a0b712a0285529f24187fe76" > < td class = "memTemplItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#a8da1f3d4a0b712a0285529f24187fe76" > pocketfft::detail::special_mul< / a > (const < a class = "el" href = "structpocketfft_1_1detail_1_1cmplx.html" > cmplx< / a > < T > & v1, const < a class = "el" href = "structpocketfft_1_1detail_1_1cmplx.html" > cmplx< / a > < T2 > & v2, < a class = "el" href = "structpocketfft_1_1detail_1_1cmplx.html" > cmplx< / a > < T > & res)< / td > < / tr >
< tr class = "separator:a8da1f3d4a0b712a0285529f24187fe76" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-01-10 05:56:20 +08:00
< tr class = "memitem:a928bad5278df636ee47402c0a75f64ef" id = "r_a928bad5278df636ee47402c0a75f64ef" > < td class = "memTemplParams" colspan = "2" > template< typename T> < / td > < / tr >
2024-10-15 23:12:17 +08:00
< tr class = "memitem:a928bad5278df636ee47402c0a75f64ef" > < td class = "memTemplItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#a928bad5278df636ee47402c0a75f64ef" > pocketfft::detail::ROT90< / a > (< a class = "el" href = "structpocketfft_1_1detail_1_1cmplx.html" > cmplx< / a > < T > & a)< / td > < / tr >
< tr class = "separator:a928bad5278df636ee47402c0a75f64ef" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-01-10 05:56:20 +08:00
< tr class = "memitem:ab6a43dc0cec4291e163e68a0875ac501" id = "r_ab6a43dc0cec4291e163e68a0875ac501" > < td class = "memTemplParams" colspan = "2" > template< bool fwd, typename T> < / td > < / tr >
2024-10-15 23:12:17 +08:00
< tr class = "memitem:ab6a43dc0cec4291e163e68a0875ac501" > < td class = "memTemplItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#ab6a43dc0cec4291e163e68a0875ac501" > pocketfft::detail::ROTX90< / a > (< a class = "el" href = "structpocketfft_1_1detail_1_1cmplx.html" > cmplx< / a > < T > & a)< / td > < / tr >
< tr class = "separator:ab6a43dc0cec4291e163e68a0875ac501" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:aebe85d6273d92c7d3728e2c621ccc82b" id = "r_aebe85d6273d92c7d3728e2c621ccc82b" > < td class = "memItemLeft" align = "right" valign = "top" > size_t &   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail_1_1threading.html#aebe85d6273d92c7d3728e2c621ccc82b" > pocketfft::detail::threading::thread_id< / a > ()< / td > < / tr >
< tr class = "separator:aebe85d6273d92c7d3728e2c621ccc82b" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:af5432c2e25aed679a73fe7b29534c833" id = "r_af5432c2e25aed679a73fe7b29534c833" > < td class = "memItemLeft" align = "right" valign = "top" > size_t &   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail_1_1threading.html#af5432c2e25aed679a73fe7b29534c833" > pocketfft::detail::threading::num_threads< / a > ()< / td > < / tr >
< tr class = "separator:af5432c2e25aed679a73fe7b29534c833" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a7ec2b3f99232bd0f15f7b022c59d139a" id = "r_a7ec2b3f99232bd0f15f7b022c59d139a" > < td class = "memItemLeft" align = "right" valign = "top" > < a class = "el" href = "classpocketfft_1_1detail_1_1threading_1_1thread__pool.html" > thread_pool< / a > &   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail_1_1threading.html#a7ec2b3f99232bd0f15f7b022c59d139a" > pocketfft::detail::threading::get_pool< / a > ()< / td > < / tr >
< tr class = "separator:a7ec2b3f99232bd0f15f7b022c59d139a" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-01-10 05:56:20 +08:00
< tr class = "memitem:a4fcf674db39f0e2c1c59d48491daed6e" id = "r_a4fcf674db39f0e2c1c59d48491daed6e" > < td class = "memTemplParams" colspan = "2" > template< typename Func> < / td > < / tr >
< tr class = "memitem:a4fcf674db39f0e2c1c59d48491daed6e" > < td class = "memTemplItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail_1_1threading.html#a4fcf674db39f0e2c1c59d48491daed6e" > pocketfft::detail::threading::thread_map< / a > (size_t nthreads, Func f)< / td > < / tr >
2024-10-15 23:12:17 +08:00
< tr class = "memdesc:a4fcf674db39f0e2c1c59d48491daed6e" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Map a function f over nthreads. < br / > < / td > < / tr >
< tr class = "separator:a4fcf674db39f0e2c1c59d48491daed6e" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-01-10 05:56:20 +08:00
< tr class = "memitem:ab24cdb6118901f4d3c8df06ef0f8390b" id = "r_ab24cdb6118901f4d3c8df06ef0f8390b" > < td class = "memTemplParams" colspan = "2" > template< typename T> < / td > < / tr >
2024-10-15 23:12:17 +08:00
< tr class = "memitem:ab24cdb6118901f4d3c8df06ef0f8390b" > < td class = "memTemplItemLeft" align = "right" valign = "top" > std::shared_ptr< T >   < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#ab24cdb6118901f4d3c8df06ef0f8390b" > pocketfft::detail::get_plan< / a > (size_t length)< / td > < / tr >
< tr class = "separator:ab24cdb6118901f4d3c8df06ef0f8390b" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-01-10 05:56:20 +08:00
< tr class = "memitem:a4db03cbcd9d43d9e0b0b9067713c80e9" id = "r_a4db03cbcd9d43d9e0b0b9067713c80e9" > < td class = "memTemplParams" colspan = "2" > template< typename T> < / td > < / tr >
2024-10-15 23:12:17 +08:00
< tr class = "memitem:a4db03cbcd9d43d9e0b0b9067713c80e9" > < td class = "memTemplItemLeft" align = "right" valign = "top" > < a class = "el" href = "classpocketfft_1_1detail_1_1arr.html" > arr< / a > < char >   < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#a4db03cbcd9d43d9e0b0b9067713c80e9" > pocketfft::detail::alloc_tmp< / a > (const < a class = "el" href = "namespacepocketfft_1_1detail.html#a885ee37fcf564a268a5c8ca9ea8603e1" > shape_t< / a > & shape, size_t axsize, size_t elemsize)< / td > < / tr >
< tr class = "separator:a4db03cbcd9d43d9e0b0b9067713c80e9" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-01-10 05:56:20 +08:00
< tr class = "memitem:a13832735696303b9559c4663631d5475" id = "r_a13832735696303b9559c4663631d5475" > < td class = "memTemplParams" colspan = "2" > template< typename T> < / td > < / tr >
2024-10-15 23:12:17 +08:00
< tr class = "memitem:a13832735696303b9559c4663631d5475" > < td class = "memTemplItemLeft" align = "right" valign = "top" > < a class = "el" href = "classpocketfft_1_1detail_1_1arr.html" > arr< / a > < char >   < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#a13832735696303b9559c4663631d5475" > pocketfft::detail::alloc_tmp< / a > (const < a class = "el" href = "namespacepocketfft_1_1detail.html#a885ee37fcf564a268a5c8ca9ea8603e1" > shape_t< / a > & shape, const < a class = "el" href = "namespacepocketfft_1_1detail.html#a885ee37fcf564a268a5c8ca9ea8603e1" > shape_t< / a > & axes, size_t elemsize)< / td > < / tr >
< tr class = "separator:a13832735696303b9559c4663631d5475" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-01-10 05:56:20 +08:00
< tr class = "memitem:aff05be3064743c1143b19318ab12ad4a" id = "r_aff05be3064743c1143b19318ab12ad4a" > < td class = "memTemplParams" colspan = "2" > template< typename T, size_t vlen> < / td > < / tr >
2024-10-15 23:12:17 +08:00
< tr class = "memitem:aff05be3064743c1143b19318ab12ad4a" > < td class = "memTemplItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#aff05be3064743c1143b19318ab12ad4a" > pocketfft::detail::copy_input< / a > (const < a class = "el" href = "classpocketfft_1_1detail_1_1multi__iter.html" > multi_iter< / a > < vlen > & it, const < a class = "el" href = "classpocketfft_1_1detail_1_1cndarr.html" > cndarr< / a > < < a class = "el" href = "structpocketfft_1_1detail_1_1cmplx.html" > cmplx< / a > < T > > & src, < a class = "el" href = "structpocketfft_1_1detail_1_1cmplx.html" > cmplx< / a > < < a class = "el" href = "namespacepocketfft_1_1detail.html#a3edfb93aeed2f8258183d463ea291d62" > vtype_t< / a > < T > > *< a class = "el" href = "namespacepocketfft_1_1detail.html#add0f231fc8a1ce01b90a90faeebcb4eb" > dst< / a > )< / td > < / tr >
< tr class = "separator:aff05be3064743c1143b19318ab12ad4a" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-01-10 05:56:20 +08:00
< tr class = "memitem:a30fc708f9d8f9cfa74194925c7863c0a" id = "r_a30fc708f9d8f9cfa74194925c7863c0a" > < td class = "memTemplParams" colspan = "2" > template< typename T, size_t vlen> < / td > < / tr >
2024-10-15 23:12:17 +08:00
< tr class = "memitem:a30fc708f9d8f9cfa74194925c7863c0a" > < td class = "memTemplItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#a30fc708f9d8f9cfa74194925c7863c0a" > pocketfft::detail::copy_input< / a > (const < a class = "el" href = "classpocketfft_1_1detail_1_1multi__iter.html" > multi_iter< / a > < vlen > & it, const < a class = "el" href = "classpocketfft_1_1detail_1_1cndarr.html" > cndarr< / a > < T > & src, < a class = "el" href = "namespacepocketfft_1_1detail.html#a3edfb93aeed2f8258183d463ea291d62" > vtype_t< / a > < T > *< a class = "el" href = "namespacepocketfft_1_1detail.html#add0f231fc8a1ce01b90a90faeebcb4eb" > dst< / a > )< / td > < / tr >
< tr class = "separator:a30fc708f9d8f9cfa74194925c7863c0a" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-01-10 05:56:20 +08:00
< tr class = "memitem:a3387bd35f237870e42b8461769e6aec4" id = "r_a3387bd35f237870e42b8461769e6aec4" > < td class = "memTemplParams" colspan = "2" > template< typename T, size_t vlen> < / td > < / tr >
2024-10-15 23:12:17 +08:00
< tr class = "memitem:a3387bd35f237870e42b8461769e6aec4" > < td class = "memTemplItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#a3387bd35f237870e42b8461769e6aec4" > pocketfft::detail::copy_input< / a > (const < a class = "el" href = "classpocketfft_1_1detail_1_1multi__iter.html" > multi_iter< / a > < vlen > & it, const < a class = "el" href = "classpocketfft_1_1detail_1_1cndarr.html" > cndarr< / a > < T > & src, T *< a class = "el" href = "namespacepocketfft_1_1detail.html#add0f231fc8a1ce01b90a90faeebcb4eb" > dst< / a > )< / td > < / tr >
< tr class = "separator:a3387bd35f237870e42b8461769e6aec4" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-01-10 05:56:20 +08:00
< tr class = "memitem:a1523a037300a8da05db210b802d9cb0e" id = "r_a1523a037300a8da05db210b802d9cb0e" > < td class = "memTemplParams" colspan = "2" > template< typename T, size_t vlen> < / td > < / tr >
2024-10-15 23:12:17 +08:00
< tr class = "memitem:a1523a037300a8da05db210b802d9cb0e" > < td class = "memTemplItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#a1523a037300a8da05db210b802d9cb0e" > pocketfft::detail::copy_output< / a > (const < a class = "el" href = "classpocketfft_1_1detail_1_1multi__iter.html" > multi_iter< / a > < vlen > & it, const < a class = "el" href = "structpocketfft_1_1detail_1_1cmplx.html" > cmplx< / a > < < a class = "el" href = "namespacepocketfft_1_1detail.html#a3edfb93aeed2f8258183d463ea291d62" > vtype_t< / a > < T > > *src, < a class = "el" href = "classpocketfft_1_1detail_1_1ndarr.html" > ndarr< / a > < < a class = "el" href = "structpocketfft_1_1detail_1_1cmplx.html" > cmplx< / a > < T > > & < a class = "el" href = "namespacepocketfft_1_1detail.html#add0f231fc8a1ce01b90a90faeebcb4eb" > dst< / a > )< / td > < / tr >
< tr class = "separator:a1523a037300a8da05db210b802d9cb0e" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-01-10 05:56:20 +08:00
< tr class = "memitem:a21980853aca4d92ed06e3dcffe7ef660" id = "r_a21980853aca4d92ed06e3dcffe7ef660" > < td class = "memTemplParams" colspan = "2" > template< typename T, size_t vlen> < / td > < / tr >
2024-10-15 23:12:17 +08:00
< tr class = "memitem:a21980853aca4d92ed06e3dcffe7ef660" > < td class = "memTemplItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#a21980853aca4d92ed06e3dcffe7ef660" > pocketfft::detail::copy_output< / a > (const < a class = "el" href = "classpocketfft_1_1detail_1_1multi__iter.html" > multi_iter< / a > < vlen > & it, const < a class = "el" href = "namespacepocketfft_1_1detail.html#a3edfb93aeed2f8258183d463ea291d62" > vtype_t< / a > < T > *src, < a class = "el" href = "classpocketfft_1_1detail_1_1ndarr.html" > ndarr< / a > < T > & < a class = "el" href = "namespacepocketfft_1_1detail.html#add0f231fc8a1ce01b90a90faeebcb4eb" > dst< / a > )< / td > < / tr >
< tr class = "separator:a21980853aca4d92ed06e3dcffe7ef660" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-01-10 05:56:20 +08:00
< tr class = "memitem:a310481c334e46674710ba794ad7403c0" id = "r_a310481c334e46674710ba794ad7403c0" > < td class = "memTemplParams" colspan = "2" > template< typename T, size_t vlen> < / td > < / tr >
2024-10-15 23:12:17 +08:00
< tr class = "memitem:a310481c334e46674710ba794ad7403c0" > < td class = "memTemplItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#a310481c334e46674710ba794ad7403c0" > pocketfft::detail::copy_output< / a > (const < a class = "el" href = "classpocketfft_1_1detail_1_1multi__iter.html" > multi_iter< / a > < vlen > & it, const T *src, < a class = "el" href = "classpocketfft_1_1detail_1_1ndarr.html" > ndarr< / a > < T > & < a class = "el" href = "namespacepocketfft_1_1detail.html#add0f231fc8a1ce01b90a90faeebcb4eb" > dst< / a > )< / td > < / tr >
< tr class = "separator:a310481c334e46674710ba794ad7403c0" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-01-10 05:56:20 +08:00
< tr class = "memitem:ab47f52551920af5eb9f57fbbded0f4f0" id = "r_ab47f52551920af5eb9f57fbbded0f4f0" > < td class = "memTemplParams" colspan = "2" > template< typename Tplan, typename T, typename T0, typename Exec> < / td > < / tr >
2024-10-15 23:12:17 +08:00
< tr class = "memitem:ab47f52551920af5eb9f57fbbded0f4f0" > < td class = "memTemplItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#ab47f52551920af5eb9f57fbbded0f4f0" > pocketfft::detail::general_nd< / a > (const < a class = "el" href = "classpocketfft_1_1detail_1_1cndarr.html" > cndarr< / a > < T > & in, < a class = "el" href = "classpocketfft_1_1detail_1_1ndarr.html" > ndarr< / a > < T > & out, const < a class = "el" href = "namespacepocketfft_1_1detail.html#a885ee37fcf564a268a5c8ca9ea8603e1" > shape_t< / a > & axes, T0 fct, size_t nthreads, const Exec & exec, const bool allow_inplace=true)< / td > < / tr >
< tr class = "separator:ab47f52551920af5eb9f57fbbded0f4f0" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-01-10 05:56:20 +08:00
< tr class = "memitem:abac3fcc8ce83800d228774f64c28d4c3" id = "r_abac3fcc8ce83800d228774f64c28d4c3" > < td class = "memTemplParams" colspan = "2" > template< typename T, size_t vlen> < / td > < / tr >
2024-10-15 23:12:17 +08:00
< tr class = "memitem:abac3fcc8ce83800d228774f64c28d4c3" > < td class = "memTemplItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#abac3fcc8ce83800d228774f64c28d4c3" > pocketfft::detail::copy_hartley< / a > (const < a class = "el" href = "classpocketfft_1_1detail_1_1multi__iter.html" > multi_iter< / a > < vlen > & it, const < a class = "el" href = "namespacepocketfft_1_1detail.html#a3edfb93aeed2f8258183d463ea291d62" > vtype_t< / a > < T > *src, < a class = "el" href = "classpocketfft_1_1detail_1_1ndarr.html" > ndarr< / a > < T > & < a class = "el" href = "namespacepocketfft_1_1detail.html#add0f231fc8a1ce01b90a90faeebcb4eb" > dst< / a > )< / td > < / tr >
< tr class = "separator:abac3fcc8ce83800d228774f64c28d4c3" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-01-10 05:56:20 +08:00
< tr class = "memitem:ae7b44d2773d9d06a9787aff01d66b3ed" id = "r_ae7b44d2773d9d06a9787aff01d66b3ed" > < td class = "memTemplParams" colspan = "2" > template< typename T, size_t vlen> < / td > < / tr >
2024-10-15 23:12:17 +08:00
< tr class = "memitem:ae7b44d2773d9d06a9787aff01d66b3ed" > < td class = "memTemplItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#ae7b44d2773d9d06a9787aff01d66b3ed" > pocketfft::detail::copy_hartley< / a > (const < a class = "el" href = "classpocketfft_1_1detail_1_1multi__iter.html" > multi_iter< / a > < vlen > & it, const T *src, < a class = "el" href = "classpocketfft_1_1detail_1_1ndarr.html" > ndarr< / a > < T > & < a class = "el" href = "namespacepocketfft_1_1detail.html#add0f231fc8a1ce01b90a90faeebcb4eb" > dst< / a > )< / td > < / tr >
< tr class = "separator:ae7b44d2773d9d06a9787aff01d66b3ed" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-01-10 05:56:20 +08:00
< tr class = "memitem:a055a39b0a337ca12217717196eb92fed" id = "r_a055a39b0a337ca12217717196eb92fed" > < td class = "memTemplParams" colspan = "2" > template< typename T> < / td > < / tr >
2024-10-15 23:12:17 +08:00
< tr class = "memitem:a055a39b0a337ca12217717196eb92fed" > < td class = "memTemplItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#a055a39b0a337ca12217717196eb92fed" > pocketfft::detail::general_r2c< / a > (const < a class = "el" href = "classpocketfft_1_1detail_1_1cndarr.html" > cndarr< / a > < T > & in, < a class = "el" href = "classpocketfft_1_1detail_1_1ndarr.html" > ndarr< / a > < < a class = "el" href = "structpocketfft_1_1detail_1_1cmplx.html" > cmplx< / a > < T > > & out, size_t axis, bool forward, T fct, size_t nthreads)< / td > < / tr >
< tr class = "separator:a055a39b0a337ca12217717196eb92fed" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-01-10 05:56:20 +08:00
< tr class = "memitem:ac8ee38e8d8bcda875c99eeaf567550fc" id = "r_ac8ee38e8d8bcda875c99eeaf567550fc" > < td class = "memTemplParams" colspan = "2" > template< typename T> < / td > < / tr >
2024-10-15 23:12:17 +08:00
< tr class = "memitem:ac8ee38e8d8bcda875c99eeaf567550fc" > < td class = "memTemplItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#ac8ee38e8d8bcda875c99eeaf567550fc" > pocketfft::detail::general_c2r< / a > (const < a class = "el" href = "classpocketfft_1_1detail_1_1cndarr.html" > cndarr< / a > < < a class = "el" href = "structpocketfft_1_1detail_1_1cmplx.html" > cmplx< / a > < T > > & in, < a class = "el" href = "classpocketfft_1_1detail_1_1ndarr.html" > ndarr< / a > < T > & out, size_t axis, bool forward, T fct, size_t nthreads)< / td > < / tr >
< tr class = "separator:ac8ee38e8d8bcda875c99eeaf567550fc" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-01-10 05:56:20 +08:00
< tr class = "memitem:ab585ac594ae1253d4659e7b9e1623c8a" id = "r_ab585ac594ae1253d4659e7b9e1623c8a" > < td class = "memTemplParams" colspan = "2" > template< typename T> < / td > < / tr >
2024-10-15 23:12:17 +08:00
< tr class = "memitem:ab585ac594ae1253d4659e7b9e1623c8a" > < td class = "memTemplItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#ab585ac594ae1253d4659e7b9e1623c8a" > pocketfft::detail::c2c< / a > (const < a class = "el" href = "namespacepocketfft_1_1detail.html#a885ee37fcf564a268a5c8ca9ea8603e1" > shape_t< / a > & shape, const < a class = "el" href = "namespacepocketfft_1_1detail.html#afb987c919e9424a996d0fc8b3c23cc84" > stride_t< / a > & stride_in, const < a class = "el" href = "namespacepocketfft_1_1detail.html#afb987c919e9424a996d0fc8b3c23cc84" > stride_t< / a > & stride_out, const < a class = "el" href = "namespacepocketfft_1_1detail.html#a885ee37fcf564a268a5c8ca9ea8603e1" > shape_t< / a > & axes, bool forward, const std::complex< T > *data_in, std::complex< T > *data_out, T fct, size_t nthreads=1)< / td > < / tr >
< tr class = "separator:ab585ac594ae1253d4659e7b9e1623c8a" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-01-10 05:56:20 +08:00
< tr class = "memitem:a60615f5b685314c658346c309d5ef2ba" id = "r_a60615f5b685314c658346c309d5ef2ba" > < td class = "memTemplParams" colspan = "2" > template< typename T> < / td > < / tr >
2024-10-15 23:12:17 +08:00
< tr class = "memitem:a60615f5b685314c658346c309d5ef2ba" > < td class = "memTemplItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#a60615f5b685314c658346c309d5ef2ba" > pocketfft::detail::dct< / a > (const < a class = "el" href = "namespacepocketfft_1_1detail.html#a885ee37fcf564a268a5c8ca9ea8603e1" > shape_t< / a > & shape, const < a class = "el" href = "namespacepocketfft_1_1detail.html#afb987c919e9424a996d0fc8b3c23cc84" > stride_t< / a > & stride_in, const < a class = "el" href = "namespacepocketfft_1_1detail.html#afb987c919e9424a996d0fc8b3c23cc84" > stride_t< / a > & stride_out, const < a class = "el" href = "namespacepocketfft_1_1detail.html#a885ee37fcf564a268a5c8ca9ea8603e1" > shape_t< / a > & axes, int type, const T *data_in, T *data_out, T fct, bool ortho, size_t nthreads=1)< / td > < / tr >
< tr class = "separator:a60615f5b685314c658346c309d5ef2ba" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-01-10 05:56:20 +08:00
< tr class = "memitem:add0f231fc8a1ce01b90a90faeebcb4eb" id = "r_add0f231fc8a1ce01b90a90faeebcb4eb" > < td class = "memTemplParams" colspan = "2" > template< typename T> < / td > < / tr >
2024-10-15 23:12:17 +08:00
< tr class = "memitem:add0f231fc8a1ce01b90a90faeebcb4eb" > < td class = "memTemplItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#add0f231fc8a1ce01b90a90faeebcb4eb" > pocketfft::detail::dst< / a > (const < a class = "el" href = "namespacepocketfft_1_1detail.html#a885ee37fcf564a268a5c8ca9ea8603e1" > shape_t< / a > & shape, const < a class = "el" href = "namespacepocketfft_1_1detail.html#afb987c919e9424a996d0fc8b3c23cc84" > stride_t< / a > & stride_in, const < a class = "el" href = "namespacepocketfft_1_1detail.html#afb987c919e9424a996d0fc8b3c23cc84" > stride_t< / a > & stride_out, const < a class = "el" href = "namespacepocketfft_1_1detail.html#a885ee37fcf564a268a5c8ca9ea8603e1" > shape_t< / a > & axes, int type, const T *data_in, T *data_out, T fct, bool ortho, size_t nthreads=1)< / td > < / tr >
< tr class = "separator:add0f231fc8a1ce01b90a90faeebcb4eb" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-01-10 05:56:20 +08:00
< tr class = "memitem:a4e46762466d399e35b79c324cfe21616" id = "r_a4e46762466d399e35b79c324cfe21616" > < td class = "memTemplParams" colspan = "2" > template< typename T> < / td > < / tr >
2024-10-15 23:12:17 +08:00
< tr class = "memitem:a4e46762466d399e35b79c324cfe21616" > < td class = "memTemplItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#a4e46762466d399e35b79c324cfe21616" > pocketfft::detail::r2c< / a > (const < a class = "el" href = "namespacepocketfft_1_1detail.html#a885ee37fcf564a268a5c8ca9ea8603e1" > shape_t< / a > & shape_in, const < a class = "el" href = "namespacepocketfft_1_1detail.html#afb987c919e9424a996d0fc8b3c23cc84" > stride_t< / a > & stride_in, const < a class = "el" href = "namespacepocketfft_1_1detail.html#afb987c919e9424a996d0fc8b3c23cc84" > stride_t< / a > & stride_out, size_t axis, bool forward, const T *data_in, std::complex< T > *data_out, T fct, size_t nthreads=1)< / td > < / tr >
< tr class = "separator:a4e46762466d399e35b79c324cfe21616" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-01-10 05:56:20 +08:00
< tr class = "memitem:a454179497c44714d4b7425f116468c17" id = "r_a454179497c44714d4b7425f116468c17" > < td class = "memTemplParams" colspan = "2" > template< typename T> < / td > < / tr >
2024-10-15 23:12:17 +08:00
< tr class = "memitem:a454179497c44714d4b7425f116468c17" > < td class = "memTemplItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#a454179497c44714d4b7425f116468c17" > pocketfft::detail::r2c< / a > (const < a class = "el" href = "namespacepocketfft_1_1detail.html#a885ee37fcf564a268a5c8ca9ea8603e1" > shape_t< / a > & shape_in, const < a class = "el" href = "namespacepocketfft_1_1detail.html#afb987c919e9424a996d0fc8b3c23cc84" > stride_t< / a > & stride_in, const < a class = "el" href = "namespacepocketfft_1_1detail.html#afb987c919e9424a996d0fc8b3c23cc84" > stride_t< / a > & stride_out, const < a class = "el" href = "namespacepocketfft_1_1detail.html#a885ee37fcf564a268a5c8ca9ea8603e1" > shape_t< / a > & axes, bool forward, const T *data_in, std::complex< T > *data_out, T fct, size_t nthreads=1)< / td > < / tr >
< tr class = "separator:a454179497c44714d4b7425f116468c17" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-01-10 05:56:20 +08:00
< tr class = "memitem:ab26cbfed16f487b987f50bf63bfc1ab9" id = "r_ab26cbfed16f487b987f50bf63bfc1ab9" > < td class = "memTemplParams" colspan = "2" > template< typename T> < / td > < / tr >
2024-10-15 23:12:17 +08:00
< tr class = "memitem:ab26cbfed16f487b987f50bf63bfc1ab9" > < td class = "memTemplItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#ab26cbfed16f487b987f50bf63bfc1ab9" > pocketfft::detail::c2r< / a > (const < a class = "el" href = "namespacepocketfft_1_1detail.html#a885ee37fcf564a268a5c8ca9ea8603e1" > shape_t< / a > & shape_out, const < a class = "el" href = "namespacepocketfft_1_1detail.html#afb987c919e9424a996d0fc8b3c23cc84" > stride_t< / a > & stride_in, const < a class = "el" href = "namespacepocketfft_1_1detail.html#afb987c919e9424a996d0fc8b3c23cc84" > stride_t< / a > & stride_out, size_t axis, bool forward, const std::complex< T > *data_in, T *data_out, T fct, size_t nthreads=1)< / td > < / tr >
< tr class = "separator:ab26cbfed16f487b987f50bf63bfc1ab9" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-01-10 05:56:20 +08:00
< tr class = "memitem:a788506fff59f8e13056247076cac51c1" id = "r_a788506fff59f8e13056247076cac51c1" > < td class = "memTemplParams" colspan = "2" > template< typename T> < / td > < / tr >
2024-10-15 23:12:17 +08:00
< tr class = "memitem:a788506fff59f8e13056247076cac51c1" > < td class = "memTemplItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#a788506fff59f8e13056247076cac51c1" > pocketfft::detail::c2r< / a > (const < a class = "el" href = "namespacepocketfft_1_1detail.html#a885ee37fcf564a268a5c8ca9ea8603e1" > shape_t< / a > & shape_out, const < a class = "el" href = "namespacepocketfft_1_1detail.html#afb987c919e9424a996d0fc8b3c23cc84" > stride_t< / a > & stride_in, const < a class = "el" href = "namespacepocketfft_1_1detail.html#afb987c919e9424a996d0fc8b3c23cc84" > stride_t< / a > & stride_out, const < a class = "el" href = "namespacepocketfft_1_1detail.html#a885ee37fcf564a268a5c8ca9ea8603e1" > shape_t< / a > & axes, bool forward, const std::complex< T > *data_in, T *data_out, T fct, size_t nthreads=1)< / td > < / tr >
< tr class = "separator:a788506fff59f8e13056247076cac51c1" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-01-10 05:56:20 +08:00
< tr class = "memitem:a1ccca4cbbc6150d65620e2f9cdff62ac" id = "r_a1ccca4cbbc6150d65620e2f9cdff62ac" > < td class = "memTemplParams" colspan = "2" > template< typename T> < / td > < / tr >
2024-10-15 23:12:17 +08:00
< tr class = "memitem:a1ccca4cbbc6150d65620e2f9cdff62ac" > < td class = "memTemplItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#a1ccca4cbbc6150d65620e2f9cdff62ac" > pocketfft::detail::r2r_fftpack< / a > (const < a class = "el" href = "namespacepocketfft_1_1detail.html#a885ee37fcf564a268a5c8ca9ea8603e1" > shape_t< / a > & shape, const < a class = "el" href = "namespacepocketfft_1_1detail.html#afb987c919e9424a996d0fc8b3c23cc84" > stride_t< / a > & stride_in, const < a class = "el" href = "namespacepocketfft_1_1detail.html#afb987c919e9424a996d0fc8b3c23cc84" > stride_t< / a > & stride_out, const < a class = "el" href = "namespacepocketfft_1_1detail.html#a885ee37fcf564a268a5c8ca9ea8603e1" > shape_t< / a > & axes, bool real2hermitian, bool forward, const T *data_in, T *data_out, T fct, size_t nthreads=1)< / td > < / tr >
< tr class = "separator:a1ccca4cbbc6150d65620e2f9cdff62ac" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-01-10 05:56:20 +08:00
< tr class = "memitem:a40b56ae882eea17e6960618415f8eb42" id = "r_a40b56ae882eea17e6960618415f8eb42" > < td class = "memTemplParams" colspan = "2" > template< typename T> < / td > < / tr >
2024-10-15 23:12:17 +08:00
< tr class = "memitem:a40b56ae882eea17e6960618415f8eb42" > < td class = "memTemplItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#a40b56ae882eea17e6960618415f8eb42" > pocketfft::detail::r2r_separable_hartley< / a > (const < a class = "el" href = "namespacepocketfft_1_1detail.html#a885ee37fcf564a268a5c8ca9ea8603e1" > shape_t< / a > & shape, const < a class = "el" href = "namespacepocketfft_1_1detail.html#afb987c919e9424a996d0fc8b3c23cc84" > stride_t< / a > & stride_in, const < a class = "el" href = "namespacepocketfft_1_1detail.html#afb987c919e9424a996d0fc8b3c23cc84" > stride_t< / a > & stride_out, const < a class = "el" href = "namespacepocketfft_1_1detail.html#a885ee37fcf564a268a5c8ca9ea8603e1" > shape_t< / a > & axes, const T *data_in, T *data_out, T fct, size_t nthreads=1)< / td > < / tr >
< tr class = "separator:a40b56ae882eea17e6960618415f8eb42" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-01-10 05:56:20 +08:00
< tr class = "memitem:a072a67f2c4b3b3ebd030604f3383e1ed" id = "r_a072a67f2c4b3b3ebd030604f3383e1ed" > < td class = "memTemplParams" colspan = "2" > template< typename T> < / td > < / tr >
2024-10-15 23:12:17 +08:00
< tr class = "memitem:a072a67f2c4b3b3ebd030604f3383e1ed" > < td class = "memTemplItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#a072a67f2c4b3b3ebd030604f3383e1ed" > pocketfft::detail::r2r_genuine_hartley< / a > (const < a class = "el" href = "namespacepocketfft_1_1detail.html#a885ee37fcf564a268a5c8ca9ea8603e1" > shape_t< / a > & shape, const < a class = "el" href = "namespacepocketfft_1_1detail.html#afb987c919e9424a996d0fc8b3c23cc84" > stride_t< / a > & stride_in, const < a class = "el" href = "namespacepocketfft_1_1detail.html#afb987c919e9424a996d0fc8b3c23cc84" > stride_t< / a > & stride_out, const < a class = "el" href = "namespacepocketfft_1_1detail.html#a885ee37fcf564a268a5c8ca9ea8603e1" > shape_t< / a > & axes, const T *data_in, T *data_out, T fct, size_t nthreads=1)< / td > < / tr >
< tr class = "separator:a072a67f2c4b3b3ebd030604f3383e1ed" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-01-10 05:56:20 +08:00
< tr class = "memitem:ab585ac594ae1253d4659e7b9e1623c8a" id = "r_ab585ac594ae1253d4659e7b9e1623c8a" > < td class = "memTemplParams" colspan = "2" > template< typename T> < / td > < / tr >
< tr class = "memitem:ab585ac594ae1253d4659e7b9e1623c8a" > < td class = "memTemplItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft.html#ab585ac594ae1253d4659e7b9e1623c8a" > pocketfft::c2c< / a > (const < a class = "el" href = "namespacepocketfft_1_1detail.html#a885ee37fcf564a268a5c8ca9ea8603e1" > shape_t< / a > & shape, const < a class = "el" href = "namespacepocketfft_1_1detail.html#afb987c919e9424a996d0fc8b3c23cc84" > stride_t< / a > & stride_in, const < a class = "el" href = "namespacepocketfft_1_1detail.html#afb987c919e9424a996d0fc8b3c23cc84" > stride_t< / a > & stride_out, const < a class = "el" href = "namespacepocketfft_1_1detail.html#a885ee37fcf564a268a5c8ca9ea8603e1" > shape_t< / a > & axes, bool forward, const std::complex< T > *data_in, std::complex< T > *data_out, T fct, size_t nthreads=1)< / td > < / tr >
< tr class = "separator:ab585ac594ae1253d4659e7b9e1623c8a" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ab26cbfed16f487b987f50bf63bfc1ab9" id = "r_ab26cbfed16f487b987f50bf63bfc1ab9" > < td class = "memTemplParams" colspan = "2" > template< typename T> < / td > < / tr >
< tr class = "memitem:ab26cbfed16f487b987f50bf63bfc1ab9" > < td class = "memTemplItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft.html#ab26cbfed16f487b987f50bf63bfc1ab9" > pocketfft::c2r< / a > (const < a class = "el" href = "namespacepocketfft_1_1detail.html#a885ee37fcf564a268a5c8ca9ea8603e1" > shape_t< / a > & shape_out, const < a class = "el" href = "namespacepocketfft_1_1detail.html#afb987c919e9424a996d0fc8b3c23cc84" > stride_t< / a > & stride_in, const < a class = "el" href = "namespacepocketfft_1_1detail.html#afb987c919e9424a996d0fc8b3c23cc84" > stride_t< / a > & stride_out, size_t axis, bool forward, const std::complex< T > *data_in, T *data_out, T fct, size_t nthreads=1)< / td > < / tr >
< tr class = "separator:ab26cbfed16f487b987f50bf63bfc1ab9" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a4e46762466d399e35b79c324cfe21616" id = "r_a4e46762466d399e35b79c324cfe21616" > < td class = "memTemplParams" colspan = "2" > template< typename T> < / td > < / tr >
< tr class = "memitem:a4e46762466d399e35b79c324cfe21616" > < td class = "memTemplItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft.html#a4e46762466d399e35b79c324cfe21616" > pocketfft::r2c< / a > (const < a class = "el" href = "namespacepocketfft_1_1detail.html#a885ee37fcf564a268a5c8ca9ea8603e1" > shape_t< / a > & shape_in, const < a class = "el" href = "namespacepocketfft_1_1detail.html#afb987c919e9424a996d0fc8b3c23cc84" > stride_t< / a > & stride_in, const < a class = "el" href = "namespacepocketfft_1_1detail.html#afb987c919e9424a996d0fc8b3c23cc84" > stride_t< / a > & stride_out, size_t axis, bool forward, const T *data_in, std::complex< T > *data_out, T fct, size_t nthreads=1)< / td > < / tr >
< tr class = "separator:a4e46762466d399e35b79c324cfe21616" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a1ccca4cbbc6150d65620e2f9cdff62ac" id = "r_a1ccca4cbbc6150d65620e2f9cdff62ac" > < td class = "memTemplParams" colspan = "2" > template< typename T> < / td > < / tr >
< tr class = "memitem:a1ccca4cbbc6150d65620e2f9cdff62ac" > < td class = "memTemplItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft.html#a1ccca4cbbc6150d65620e2f9cdff62ac" > pocketfft::r2r_fftpack< / a > (const < a class = "el" href = "namespacepocketfft_1_1detail.html#a885ee37fcf564a268a5c8ca9ea8603e1" > shape_t< / a > & shape, const < a class = "el" href = "namespacepocketfft_1_1detail.html#afb987c919e9424a996d0fc8b3c23cc84" > stride_t< / a > & stride_in, const < a class = "el" href = "namespacepocketfft_1_1detail.html#afb987c919e9424a996d0fc8b3c23cc84" > stride_t< / a > & stride_out, const < a class = "el" href = "namespacepocketfft_1_1detail.html#a885ee37fcf564a268a5c8ca9ea8603e1" > shape_t< / a > & axes, bool real2hermitian, bool forward, const T *data_in, T *data_out, T fct, size_t nthreads=1)< / td > < / tr >
< tr class = "separator:a1ccca4cbbc6150d65620e2f9cdff62ac" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a40b56ae882eea17e6960618415f8eb42" id = "r_a40b56ae882eea17e6960618415f8eb42" > < td class = "memTemplParams" colspan = "2" > template< typename T> < / td > < / tr >
< tr class = "memitem:a40b56ae882eea17e6960618415f8eb42" > < td class = "memTemplItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft.html#a40b56ae882eea17e6960618415f8eb42" > pocketfft::r2r_separable_hartley< / a > (const < a class = "el" href = "namespacepocketfft_1_1detail.html#a885ee37fcf564a268a5c8ca9ea8603e1" > shape_t< / a > & shape, const < a class = "el" href = "namespacepocketfft_1_1detail.html#afb987c919e9424a996d0fc8b3c23cc84" > stride_t< / a > & stride_in, const < a class = "el" href = "namespacepocketfft_1_1detail.html#afb987c919e9424a996d0fc8b3c23cc84" > stride_t< / a > & stride_out, const < a class = "el" href = "namespacepocketfft_1_1detail.html#a885ee37fcf564a268a5c8ca9ea8603e1" > shape_t< / a > & axes, const T *data_in, T *data_out, T fct, size_t nthreads=1)< / td > < / tr >
< tr class = "separator:a40b56ae882eea17e6960618415f8eb42" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a072a67f2c4b3b3ebd030604f3383e1ed" id = "r_a072a67f2c4b3b3ebd030604f3383e1ed" > < td class = "memTemplParams" colspan = "2" > template< typename T> < / td > < / tr >
< tr class = "memitem:a072a67f2c4b3b3ebd030604f3383e1ed" > < td class = "memTemplItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft.html#a072a67f2c4b3b3ebd030604f3383e1ed" > pocketfft::r2r_genuine_hartley< / a > (const < a class = "el" href = "namespacepocketfft_1_1detail.html#a885ee37fcf564a268a5c8ca9ea8603e1" > shape_t< / a > & shape, const < a class = "el" href = "namespacepocketfft_1_1detail.html#afb987c919e9424a996d0fc8b3c23cc84" > stride_t< / a > & stride_in, const < a class = "el" href = "namespacepocketfft_1_1detail.html#afb987c919e9424a996d0fc8b3c23cc84" > stride_t< / a > & stride_out, const < a class = "el" href = "namespacepocketfft_1_1detail.html#a885ee37fcf564a268a5c8ca9ea8603e1" > shape_t< / a > & axes, const T *data_in, T *data_out, T fct, size_t nthreads=1)< / td > < / tr >
< tr class = "separator:a072a67f2c4b3b3ebd030604f3383e1ed" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a60615f5b685314c658346c309d5ef2ba" id = "r_a60615f5b685314c658346c309d5ef2ba" > < td class = "memTemplParams" colspan = "2" > template< typename T> < / td > < / tr >
< tr class = "memitem:a60615f5b685314c658346c309d5ef2ba" > < td class = "memTemplItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft.html#a60615f5b685314c658346c309d5ef2ba" > pocketfft::dct< / a > (const < a class = "el" href = "namespacepocketfft_1_1detail.html#a885ee37fcf564a268a5c8ca9ea8603e1" > shape_t< / a > & shape, const < a class = "el" href = "namespacepocketfft_1_1detail.html#afb987c919e9424a996d0fc8b3c23cc84" > stride_t< / a > & stride_in, const < a class = "el" href = "namespacepocketfft_1_1detail.html#afb987c919e9424a996d0fc8b3c23cc84" > stride_t< / a > & stride_out, const < a class = "el" href = "namespacepocketfft_1_1detail.html#a885ee37fcf564a268a5c8ca9ea8603e1" > shape_t< / a > & axes, int type, const T *data_in, T *data_out, T fct, bool ortho, size_t nthreads=1)< / td > < / tr >
< tr class = "separator:a60615f5b685314c658346c309d5ef2ba" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:add0f231fc8a1ce01b90a90faeebcb4eb" id = "r_add0f231fc8a1ce01b90a90faeebcb4eb" > < td class = "memTemplParams" colspan = "2" > template< typename T> < / td > < / tr >
< tr class = "memitem:add0f231fc8a1ce01b90a90faeebcb4eb" > < td class = "memTemplItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft.html#add0f231fc8a1ce01b90a90faeebcb4eb" > pocketfft::dst< / a > (const < a class = "el" href = "namespacepocketfft_1_1detail.html#a885ee37fcf564a268a5c8ca9ea8603e1" > shape_t< / a > & shape, const < a class = "el" href = "namespacepocketfft_1_1detail.html#afb987c919e9424a996d0fc8b3c23cc84" > stride_t< / a > & stride_in, const < a class = "el" href = "namespacepocketfft_1_1detail.html#afb987c919e9424a996d0fc8b3c23cc84" > stride_t< / a > & stride_out, const < a class = "el" href = "namespacepocketfft_1_1detail.html#a885ee37fcf564a268a5c8ca9ea8603e1" > shape_t< / a > & axes, int type, const T *data_in, T *data_out, T fct, bool ortho, size_t nthreads=1)< / td > < / tr >
< tr class = "separator:add0f231fc8a1ce01b90a90faeebcb4eb" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2024-10-15 23:12:17 +08:00
< / table > < table class = "memberdecls" >
< tr class = "heading" > < td colspan = "2" > < h2 class = "groupheader" > < a id = "var-members" name = "var-members" > < / a >
Variables< / h2 > < / td > < / tr >
< tr class = "memitem:aecc5444a333360628be65a6f91ceb824" id = "r_aecc5444a333360628be65a6f91ceb824" > < td class = "memItemLeft" align = "right" valign = "top" > constexpr bool  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#aecc5444a333360628be65a6f91ceb824" > pocketfft::detail::FORWARD< / a > = true< / td > < / tr >
< tr class = "separator:aecc5444a333360628be65a6f91ceb824" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a9d1eaa7469c018c39e745733eab9a9c3" id = "r_a9d1eaa7469c018c39e745733eab9a9c3" > < td class = "memItemLeft" align = "right" valign = "top" > constexpr bool  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail.html#a9d1eaa7469c018c39e745733eab9a9c3" > pocketfft::detail::BACKWARD< / a > = false< / td > < / tr >
< tr class = "separator:a9d1eaa7469c018c39e745733eab9a9c3" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-01-10 05:56:20 +08:00
< tr class = "memitem:a2d5c0729f0b66cf061918baea4337d70" id = "r_a2d5c0729f0b66cf061918baea4337d70" > < td class = "memItemLeft" align = "right" valign = "top" > static const size_t  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft_1_1detail_1_1threading.html#a2d5c0729f0b66cf061918baea4337d70" > pocketfft::detail::threading::max_threads< / a > = std::max(1u, std::thread::hardware_concurrency())< / td > < / tr >
2024-10-15 23:12:17 +08:00
< tr class = "separator:a2d5c0729f0b66cf061918baea4337d70" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-01-10 05:56:20 +08:00
< tr class = "memitem:aecc5444a333360628be65a6f91ceb824" id = "r_aecc5444a333360628be65a6f91ceb824" > < td class = "memItemLeft" align = "right" valign = "top" > constexpr bool  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft.html#aecc5444a333360628be65a6f91ceb824" > pocketfft::FORWARD< / a > < / td > < / tr >
< tr class = "separator:aecc5444a333360628be65a6f91ceb824" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a9d1eaa7469c018c39e745733eab9a9c3" id = "r_a9d1eaa7469c018c39e745733eab9a9c3" > < td class = "memItemLeft" align = "right" valign = "top" > constexpr bool  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespacepocketfft.html#a9d1eaa7469c018c39e745733eab9a9c3" > pocketfft::BACKWARD< / a > < / td > < / tr >
< tr class = "separator:a9d1eaa7469c018c39e745733eab9a9c3" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2024-10-15 23:12:17 +08:00
< / table >
< h2 class = "groupheader" > Macro Definition Documentation< / h2 >
< a id = "a9e604bcf20603d70b62b233d3f306714" name = "a9e604bcf20603d70b62b233d3f306714" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a9e604bcf20603d70b62b233d3f306714" > ◆   < / a > < / span > POCKETFFT_CACHE_SIZE< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > #define POCKETFFT_CACHE_SIZE      0< / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< / div >
< / div >
< a id = "aa9cdaed0819c48f97fcd19f05c289160" name = "aa9cdaed0819c48f97fcd19f05c289160" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#aa9cdaed0819c48f97fcd19f05c289160" > ◆   < / a > < / span > POCKETFFT_NO_VECTORS< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > #define POCKETFFT_NO_VECTORS< / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< / div >
< / div >
< a id = "a7020984e0ca1d6e565629ca6e7c1a7e0" name = "a7020984e0ca1d6e565629ca6e7c1a7e0" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a7020984e0ca1d6e565629ca6e7c1a7e0" > ◆   < / a > < / span > POCKETFFT_NOINLINE< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > #define POCKETFFT_NOINLINE< / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< / div >
< / div >
< a id = "a1793d0d00f2e13101eb5ad0719c40817" name = "a1793d0d00f2e13101eb5ad0719c40817" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a1793d0d00f2e13101eb5ad0719c40817" > ◆   < / a > < / span > POCKETFFT_PARTSTEP11< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > #define POCKETFFT_PARTSTEP11< / td >
< td > (< / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > u1< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > u2< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > x1< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > x2< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > x3< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > x4< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > x5< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > y1< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > y2< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > y3< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > y4< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > y5< / em > < / span >   )< / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< b > Value:< / b > < div class = "fragment" > < div class = "line" > { \< / div >
< div class = "line" > T da,db; \< / div >
< div class = "line" > POCKETFFT_PARTSTEP11a0(u1,u2,x1,x2,x3,x4,x5,y1,y2,y3,y4,y5,da,db) \< / div >
< div class = "line" > special_mul< fwd> (da,WA(u1-1,i),CH(i,k,u1)); \< / div >
< div class = "line" > special_mul< fwd> (db,WA(u2-1,i),CH(i,k,u2)); \< / div >
< div class = "line" > }< / div >
< / div > <!-- fragment -->
< / div >
< / div >
< a id = "ac35e1aa5ae84d655256b7a0afd9051c2" name = "ac35e1aa5ae84d655256b7a0afd9051c2" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#ac35e1aa5ae84d655256b7a0afd9051c2" > ◆   < / a > < / span > POCKETFFT_PARTSTEP11a< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > #define POCKETFFT_PARTSTEP11a< / td >
< td > (< / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > u1< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > u2< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > x1< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > x2< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > x3< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > x4< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > x5< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > y1< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > y2< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > y3< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > y4< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > y5< / em > < / span >   )< / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< b > Value:< / b > < div class = "fragment" > < div class = "line" > < a class = "code hl_define" href = "#ab2df44457945ab625fb38a777a46af1b" > POCKETFFT_PARTSTEP11a0< / a > (u1,u2,x1,x2,x3,x4,x5,y1,y2,y3,y4,y5,CH(0,k,u1),CH(0,k,u2))< / div >
< div class = "ttc" id = "apocketfft_8h_html_ab2df44457945ab625fb38a777a46af1b" > < div class = "ttname" > < a href = "#ab2df44457945ab625fb38a777a46af1b" > POCKETFFT_PARTSTEP11a0< / a > < / div > < div class = "ttdeci" > #define POCKETFFT_PARTSTEP11a0(u1, u2, x1, x2, x3, x4, x5, y1, y2, y3, y4, y5, out1, out2)< / div > < div class = "ttdef" > < b > Definition< / b > pocketfft.h:1235< / div > < / div >
< / div > <!-- fragment -->
< / div >
< / div >
< a id = "ab2df44457945ab625fb38a777a46af1b" name = "ab2df44457945ab625fb38a777a46af1b" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#ab2df44457945ab625fb38a777a46af1b" > ◆   < / a > < / span > POCKETFFT_PARTSTEP11a0< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > #define POCKETFFT_PARTSTEP11a0< / td >
< td > (< / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > u1< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > u2< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > x1< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > x2< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > x3< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > x4< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > x5< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > y1< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > y2< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > y3< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > y4< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > y5< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > out1< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > out2< / em > < / span >   )< / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< b > Value:< / b > < div class = "fragment" > < div class = "line" > { \< / div >
< div class = "line" > T ca = t1 + t2*x1 + t3*x2 + t4*x3 + t5*x4 +t6*x5, \< / div >
< div class = "line" > cb; \< / div >
< div class = "line" > cb.i=y1*t11.r y2*t10.r y3*t9.r y4*t8.r y5*t7.r; \< / div >
< div class = "line" > cb.r=-(y1*t11.i y2*t10.i y3*t9.i y4*t8.i y5*t7.i ); \< / div >
< div class = "line" > PM(out1,out2,ca,cb); \< / div >
< div class = "line" > }< / div >
< / div > <!-- fragment -->
< / div >
< / div >
< a id = "ac112b26e5130636ac1d91c2f0af45e0b" name = "ac112b26e5130636ac1d91c2f0af45e0b" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#ac112b26e5130636ac1d91c2f0af45e0b" > ◆   < / a > < / span > POCKETFFT_PARTSTEP3a< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > #define POCKETFFT_PARTSTEP3a< / td >
< td > (< / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > u1< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > u2< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > twr< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > twi< / em > < / span >   )< / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< b > Value:< / b > < div class = "fragment" > < div class = "line" > { \< / div >
< div class = "line" > T ca=t0+t1*twr; \< / div >
< div class = "line" > T cb{-t2.i*twi, t2.r*twi}; \< / div >
< div class = "line" > PM(CH(0,k,u1),CH(0,k,u2),ca,cb) ;\< / div >
< div class = "line" > }< / div >
< / div > <!-- fragment -->
< / div >
< / div >
< a id = "a41e646e5535a3a1c6e0d0e67122382f5" name = "a41e646e5535a3a1c6e0d0e67122382f5" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a41e646e5535a3a1c6e0d0e67122382f5" > ◆   < / a > < / span > POCKETFFT_PARTSTEP3b< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > #define POCKETFFT_PARTSTEP3b< / td >
< td > (< / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > u1< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > u2< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > twr< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > twi< / em > < / span >   )< / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< b > Value:< / b > < div class = "fragment" > < div class = "line" > { \< / div >
< div class = "line" > T ca=t0+t1*twr; \< / div >
< div class = "line" > T cb{-t2.i*twi, t2.r*twi}; \< / div >
< div class = "line" > special_mul< fwd> (ca+cb,WA(u1-1,i),CH(i,k,u1)); \< / div >
< div class = "line" > special_mul< fwd> (ca-cb,WA(u2-1,i),CH(i,k,u2)); \< / div >
< div class = "line" > }< / div >
< / div > <!-- fragment -->
< / div >
< / div >
< a id = "a078bc2bd38ab0ffb15b981878c9de03c" name = "a078bc2bd38ab0ffb15b981878c9de03c" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a078bc2bd38ab0ffb15b981878c9de03c" > ◆   < / a > < / span > POCKETFFT_PARTSTEP5a< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > #define POCKETFFT_PARTSTEP5a< / td >
< td > (< / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > u1< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > u2< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > twar< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > twbr< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > twai< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > twbi< / em > < / span >   )< / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< b > Value:< / b > < div class = "fragment" > < div class = "line" > { \< / div >
< div class = "line" > T ca,cb; \< / div >
< div class = "line" > ca.r=t0.r+twar*t1.r+twbr*t2.r; \< / div >
< div class = "line" > ca.i=t0.i+twar*t1.i+twbr*t2.i; \< / div >
< div class = "line" > cb.i=twai*t4.r twbi*t3.r; \< / div >
< div class = "line" > cb.r=-(twai*t4.i twbi*t3.i); \< / div >
< div class = "line" > PM(CH(0,k,u1),CH(0,k,u2),ca,cb); \< / div >
< div class = "line" > }< / div >
< / div > <!-- fragment -->
< / div >
< / div >
< a id = "ab8a5da142555e059c5e9c618f75b46fa" name = "ab8a5da142555e059c5e9c618f75b46fa" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#ab8a5da142555e059c5e9c618f75b46fa" > ◆   < / a > < / span > POCKETFFT_PARTSTEP5b< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > #define POCKETFFT_PARTSTEP5b< / td >
< td > (< / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > u1< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > u2< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > twar< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > twbr< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > twai< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > twbi< / em > < / span >   )< / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< b > Value:< / b > < div class = "fragment" > < div class = "line" > { \< / div >
< div class = "line" > T ca,cb,da,db; \< / div >
< div class = "line" > ca.r=t0.r+twar*t1.r+twbr*t2.r; \< / div >
< div class = "line" > ca.i=t0.i+twar*t1.i+twbr*t2.i; \< / div >
< div class = "line" > cb.i=twai*t4.r twbi*t3.r; \< / div >
< div class = "line" > cb.r=-(twai*t4.i twbi*t3.i); \< / div >
< div class = "line" > special_mul< fwd> (ca+cb,WA(u1-1,i),CH(i,k,u1)); \< / div >
< div class = "line" > special_mul< fwd> (ca-cb,WA(u2-1,i),CH(i,k,u2)); \< / div >
< div class = "line" > }< / div >
< / div > <!-- fragment -->
< / div >
< / div >
< a id = "af7de1f82911a973d8446cf3f40ff3044" name = "af7de1f82911a973d8446cf3f40ff3044" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#af7de1f82911a973d8446cf3f40ff3044" > ◆   < / a > < / span > POCKETFFT_PARTSTEP7< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > #define POCKETFFT_PARTSTEP7< / td >
< td > (< / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > u1< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > u2< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > x1< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > x2< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > x3< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > y1< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > y2< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > y3< / em > < / span >   )< / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< b > Value:< / b > < div class = "fragment" > < div class = "line" > { \< / div >
< div class = "line" > T da,db; \< / div >
< div class = "line" > POCKETFFT_PARTSTEP7a0(u1,u2,x1,x2,x3,y1,y2,y3,da,db) \< / div >
< div class = "line" > special_mul< fwd> (da,WA(u1-1,i),CH(i,k,u1)); \< / div >
< div class = "line" > special_mul< fwd> (db,WA(u2-1,i),CH(i,k,u2)); \< / div >
< div class = "line" > }< / div >
< / div > <!-- fragment -->
< / div >
< / div >
< a id = "a2b27f6e1f0ee131765186870517255c6" name = "a2b27f6e1f0ee131765186870517255c6" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a2b27f6e1f0ee131765186870517255c6" > ◆   < / a > < / span > POCKETFFT_PARTSTEP7a< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > #define POCKETFFT_PARTSTEP7a< / td >
< td > (< / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > u1< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > u2< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > x1< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > x2< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > x3< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > y1< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > y2< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > y3< / em > < / span >   )< / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< b > Value:< / b > < div class = "fragment" > < div class = "line" > < a class = "code hl_define" href = "#a9c2fc2de74a031c38e9d8a21249ae1cd" > POCKETFFT_PARTSTEP7a0< / a > (u1,u2,x1,x2,x3,y1,y2,y3,CH(0,k,u1),CH(0,k,u2))< / div >
< div class = "ttc" id = "apocketfft_8h_html_a9c2fc2de74a031c38e9d8a21249ae1cd" > < div class = "ttname" > < a href = "#a9c2fc2de74a031c38e9d8a21249ae1cd" > POCKETFFT_PARTSTEP7a0< / a > < / div > < div class = "ttdeci" > #define POCKETFFT_PARTSTEP7a0(u1, u2, x1, x2, x3, y1, y2, y3, out1, out2)< / div > < div class = "ttdef" > < b > Definition< / b > pocketfft.h:1054< / div > < / div >
< / div > <!-- fragment -->
< / div >
< / div >
< a id = "a9c2fc2de74a031c38e9d8a21249ae1cd" name = "a9c2fc2de74a031c38e9d8a21249ae1cd" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a9c2fc2de74a031c38e9d8a21249ae1cd" > ◆   < / a > < / span > POCKETFFT_PARTSTEP7a0< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > #define POCKETFFT_PARTSTEP7a0< / td >
< td > (< / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > u1< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > u2< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > x1< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > x2< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > x3< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > y1< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > y2< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > y3< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > out1< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > out2< / em > < / span >   )< / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< b > Value:< / b > < div class = "fragment" > < div class = "line" > { \< / div >
< div class = "line" > T ca,cb; \< / div >
< div class = "line" > ca.r=t1.r+x1*t2.r+x2*t3.r+x3*t4.r; \< / div >
< div class = "line" > ca.i=t1.i+x1*t2.i+x2*t3.i+x3*t4.i; \< / div >
< div class = "line" > cb.i=y1*t7.r y2*t6.r y3*t5.r; \< / div >
< div class = "line" > cb.r=-(y1*t7.i y2*t6.i y3*t5.i); \< / div >
< div class = "line" > PM(out1,out2,ca,cb); \< / div >
< div class = "line" > }< / div >
< / div > <!-- fragment -->
< / div >
< / div >
< a id = "a536d2ea61479d4b074bf52ce09fdbc3a" name = "a536d2ea61479d4b074bf52ce09fdbc3a" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a536d2ea61479d4b074bf52ce09fdbc3a" > ◆   < / a > < / span > POCKETFFT_PREP11< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > #define POCKETFFT_PREP11< / td >
< td > (< / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > idx< / em > < / span > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< b > Value:< / b > < div class = "fragment" > < div class = "line" > T t1 = CC(idx,0,k), t2, t3, t4, t5, t6, t7, t8, t9, t10, t11; \< / div >
< div class = "line" > PM (t2,t11,CC(idx,1,k),CC(idx,10,k)); \< / div >
< div class = "line" > PM (t3,t10,CC(idx,2,k),CC(idx, 9,k)); \< / div >
< div class = "line" > PM (t4,t9 ,CC(idx,3,k),CC(idx, 8,k)); \< / div >
< div class = "line" > PM (t5,t8 ,CC(idx,4,k),CC(idx, 7,k)); \< / div >
< div class = "line" > PM (t6,t7 ,CC(idx,5,k),CC(idx, 6,k)); \< / div >
< div class = "line" > CH(idx,k,0).r=t1.r+t2.r+t3.r+t4.r+t5.r+t6.r; \< / div >
< div class = "line" > CH(idx,k,0).i=t1.i+t2.i+t3.i+t4.i+t5.i+t6.i;< / div >
< / div > <!-- fragment -->
< / div >
< / div >
< a id = "ae2fd9d433c417f0768fe1b58145b2e59" name = "ae2fd9d433c417f0768fe1b58145b2e59" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#ae2fd9d433c417f0768fe1b58145b2e59" > ◆   < / a > < / span > POCKETFFT_PREP3< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > #define POCKETFFT_PREP3< / td >
< td > (< / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > idx< / em > < / span > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< b > Value:< / b > < div class = "fragment" > < div class = "line" > T t0 = CC(idx,0,k), t1, t2; \< / div >
< div class = "line" > PM (t1,t2,CC(idx,1,k),CC(idx,2,k)); \< / div >
< div class = "line" > CH(idx,k,0)=t0+t1;< / div >
< / div > <!-- fragment -->
< / div >
< / div >
< a id = "a73077c26d2a82754db2a9c48bc0e11a6" name = "a73077c26d2a82754db2a9c48bc0e11a6" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a73077c26d2a82754db2a9c48bc0e11a6" > ◆   < / a > < / span > POCKETFFT_PREP5< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > #define POCKETFFT_PREP5< / td >
< td > (< / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > idx< / em > < / span > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< b > Value:< / b > < div class = "fragment" > < div class = "line" > T t0 = CC(idx,0,k), t1, t2, t3, t4; \< / div >
< div class = "line" > PM (t1,t4,CC(idx,1,k),CC(idx,4,k)); \< / div >
< div class = "line" > PM (t2,t3,CC(idx,2,k),CC(idx,3,k)); \< / div >
< div class = "line" > CH(idx,k,0).r=t0.r+t1.r+t2.r; \< / div >
< div class = "line" > CH(idx,k,0).i=t0.i+t1.i+t2.i;< / div >
< / div > <!-- fragment -->
< / div >
< / div >
< a id = "ae7c4d0cda5b3824f84eac54addabd6ec" name = "ae7c4d0cda5b3824f84eac54addabd6ec" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#ae7c4d0cda5b3824f84eac54addabd6ec" > ◆   < / a > < / span > POCKETFFT_PREP7< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > #define POCKETFFT_PREP7< / td >
< td > (< / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > idx< / em > < / span > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< b > Value:< / b > < div class = "fragment" > < div class = "line" > T t1 = CC(idx,0,k), t2, t3, t4, t5, t6, t7; \< / div >
< div class = "line" > PM (t2,t7,CC(idx,1,k),CC(idx,6,k)); \< / div >
< div class = "line" > PM (t3,t6,CC(idx,2,k),CC(idx,5,k)); \< / div >
< div class = "line" > PM (t4,t5,CC(idx,3,k),CC(idx,4,k)); \< / div >
< div class = "line" > CH(idx,k,0).r=t1.r+t2.r+t3.r+t4.r; \< / div >
< div class = "line" > CH(idx,k,0).i=t1.i+t2.i+t3.i+t4.i;< / div >
< / div > <!-- fragment -->
< / div >
< / div >
< a id = "acffdf2e1ab84f36a7a097e1b8b87a9f9" name = "acffdf2e1ab84f36a7a097e1b8b87a9f9" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#acffdf2e1ab84f36a7a097e1b8b87a9f9" > ◆   < / a > < / span > POCKETFFT_REARRANGE< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > #define POCKETFFT_REARRANGE< / td >
< td > (< / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > rx< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > ix< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > ry< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < / td > < td class = "paramname" > < span class = "paramname" > < em > iy< / em > < / span >   )< / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< b > Value:< / b > < div class = "fragment" > < div class = "line" > {\< / div >
< div class = "line" > < span class = "keyword" > auto< / span > t1=rx+ry, t2=ry-rx, t3=ix+iy, t4=ix-iy; \< / div >
< div class = "line" > rx=t1; ix=t3; ry=t4; iy=t2; \< / div >
< div class = "line" > }< / div >
< / div > <!-- fragment -->
< / div >
< / div >
< a id = "abbe177c4872821b32d76d5ce08d6ce82" name = "abbe177c4872821b32d76d5ce08d6ce82" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#abbe177c4872821b32d76d5ce08d6ce82" > ◆   < / a > < / span > POCKETFFT_RESTRICT< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > #define POCKETFFT_RESTRICT< / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< / div >
< / div >
< / div > <!-- contents -->
< / div > <!-- doc - content -->
2025-01-10 05:56:20 +08:00
<!-- start footer part -->
< div id = "nav-path" class = "navpath" > <!-- id is needed for treeview function! -->
< ul >
< li class = "navelem" > < a class = "el" href = "dir_938ab0ecf10b8b860ff766c820f665fd.html" > mlx< / a > < / li > < li class = "navelem" > < a class = "el" href = "dir_ad00dcd1517bfdbe01f68ec9b4eff877.html" > 3rdparty< / a > < / li > < li class = "navelem" > < a class = "el" href = "pocketfft_8h.html" > pocketfft.h< / a > < / li >
2025-02-07 04:16:29 +08:00
< li class = "footer" > Generated by < a href = "https://www.doxygen.org/index.html" > < img class = "footer" src = "doxygen.svg" width = "104" height = "31" alt = "doxygen" / > < / a > 1.13.2 < / li >
2025-01-10 05:56:20 +08:00
< / ul >
< / div >
2024-10-15 23:12:17 +08:00
< / body >
< / html >