Chris@10: \input texinfo @c -*-texinfo-*- Chris@10: @c Update by C-x C-e on: (texinfo-multiple-files-update "fftw3.texi" nil t) Chris@10: @setfilename fftw3.info Chris@10: @include version.texi Chris@10: @settitle FFTW @value{VERSION} Chris@10: @setchapternewpage odd Chris@10: @c define constant index (ct) Chris@10: @defcodeindex ct Chris@10: @syncodeindex ct fn Chris@10: @syncodeindex vr fn Chris@10: @syncodeindex pg fn Chris@10: @syncodeindex tp fn Chris@10: @c define foreign function index (ff) Chris@10: @defcodeindex ff Chris@10: @syncodeindex ff cp Chris@10: @c define foreign constant index (fc) Chris@10: @defcodeindex fc Chris@10: @syncodeindex fc cp Chris@10: @c define foreign program index (fp) Chris@10: @defcodeindex fp Chris@10: @syncodeindex fp cp Chris@10: @comment %**end of header Chris@10: Chris@10: @iftex Chris@10: @paragraphindent 0 Chris@10: @parskip=@medskipamount Chris@10: @end iftex Chris@10: Chris@10: @macro Onlogn Chris@10: @ifinfo Chris@10: O(n log n) Chris@10: @end ifinfo Chris@10: @html Chris@10: O(n log n) Chris@10: @end html Chris@10: @tex Chris@10: $O(n \\log n)$ Chris@10: @end tex Chris@10: @end macro Chris@10: Chris@10: @macro ndims Chris@10: @ifinfo Chris@10: n[0] x n[1] x n[2] x ... x n[d-1] Chris@10: @end ifinfo Chris@10: @html Chris@10: n0 × n1 × n2 × … × nd-1 Chris@10: @end html Chris@10: @tex Chris@10: $n_0 \\times n_1 \\times n_2 \\times \\cdots \\times n_{d-1}$ Chris@10: @end tex Chris@10: @end macro Chris@10: Chris@10: @macro ndimshalf Chris@10: @ifinfo Chris@10: n[0] x n[1] x n[2] x ... x (n[d-1]/2 + 1) Chris@10: @end ifinfo Chris@10: @html Chris@10: n0 × n1 × n2 × … × (nd-1/2 + 1) Chris@10: @end html Chris@10: @tex Chris@10: $n_0 \\times n_1 \\times n_2 \\times \\cdots \\times (n_{d-1}/2 + 1)$ Chris@10: @end tex Chris@10: @end macro Chris@10: Chris@10: @macro ndimspad Chris@10: @ifinfo Chris@10: n[0] x n[1] x n[2] x ... x [2 (n[d-1]/2 + 1)] Chris@10: @end ifinfo Chris@10: @html Chris@10: n0 × n1 × n2 × … × [2 (nd-1/2 + 1)] Chris@10: @end html Chris@10: @tex Chris@10: $n_0 \\times n_1 \\times n_2 \\times \\cdots \\times [2(n_{d-1}/2 + 1)]$ Chris@10: @end tex Chris@10: @end macro Chris@10: Chris@10: @macro twodims{d1, d2} Chris@10: @ifinfo Chris@10: \d1\ x \d2\ Chris@10: @end ifinfo Chris@10: @html Chris@10: \d1\ × \d2\ Chris@10: @end html Chris@10: @tex Chris@10: $\d1\ \\times \d2\$ Chris@10: @end tex Chris@10: @end macro Chris@10: Chris@10: @macro threedims{d1, d2, d3} Chris@10: @ifinfo Chris@10: \d1\ x \d2\ x \d3\ Chris@10: @end ifinfo Chris@10: @html Chris@10: \d1\ × \d2\ × \d3\ Chris@10: @end html Chris@10: @tex Chris@10: $\d1\ \\times \d2\ \\times \d3\$ Chris@10: @end tex Chris@10: @end macro Chris@10: Chris@10: @macro dimk{k} Chris@10: @ifinfo Chris@10: n[\k\] Chris@10: @end ifinfo Chris@10: @html Chris@10: n\k\ Chris@10: @end html Chris@10: @tex Chris@10: $n_\k\$ Chris@10: @end tex Chris@10: @end macro Chris@10: Chris@10: Chris@10: @macro ndimstrans Chris@10: @ifinfo Chris@10: n[1] x n[0] x n[2] x ... x n[d-1] Chris@10: @end ifinfo Chris@10: @html Chris@10: n1 × n0 × n2 ×…× nd-1 Chris@10: @end html Chris@10: @tex Chris@10: $n_1 \\times n_0 \\times n_2 \\times \\cdots \\times n_{d-1}$ Chris@10: @end tex Chris@10: @end macro Chris@10: Chris@10: @copying Chris@10: This manual is for FFTW Chris@10: (version @value{VERSION}, @value{UPDATED}). Chris@10: Chris@10: Copyright @copyright{} 2003 Matteo Frigo. Chris@10: Chris@10: Copyright @copyright{} 2003 Massachusetts Institute of Technology. Chris@10: Chris@10: @quotation Chris@10: Permission is granted to make and distribute verbatim copies of this Chris@10: manual provided the copyright notice and this permission notice are Chris@10: preserved on all copies. Chris@10: Chris@10: Permission is granted to copy and distribute modified versions of this Chris@10: manual under the conditions for verbatim copying, provided that the Chris@10: entire resulting derived work is distributed under the terms of a Chris@10: permission notice identical to this one. Chris@10: Chris@10: Permission is granted to copy and distribute translations of this manual Chris@10: into another language, under the above conditions for modified versions, Chris@10: except that this permission notice may be stated in a translation Chris@10: approved by the Free Software Foundation. Chris@10: @end quotation Chris@10: @end copying Chris@10: Chris@10: @dircategory Texinfo documentation system Chris@10: @direntry Chris@10: * fftw3: (fftw3). FFTW User's Manual. Chris@10: @end direntry Chris@10: Chris@10: @titlepage Chris@10: @title FFTW Chris@10: @subtitle for version @value{VERSION}, @value{UPDATED} Chris@10: @author{Matteo Frigo} Chris@10: @author{Steven G. Johnson} Chris@10: @page Chris@10: @vskip 0pt plus 1filll Chris@10: @insertcopying Chris@10: @end titlepage Chris@10: Chris@10: @contents Chris@10: Chris@10: @ifnottex Chris@10: @node Top, Introduction, (dir), (dir) Chris@10: @top FFTW User Manual Chris@10: Welcome to FFTW, the Fastest Fourier Transform in the West. FFTW is a Chris@10: collection of fast C routines to compute the discrete Fourier transform. Chris@10: This manual documents FFTW version @value{VERSION}. Chris@10: @end ifnottex Chris@10: Chris@10: @menu Chris@10: * Introduction:: Chris@10: * Tutorial:: Chris@10: * Other Important Topics:: Chris@10: * FFTW Reference:: Chris@10: * Multi-threaded FFTW:: Chris@10: * Distributed-memory FFTW with MPI:: Chris@10: * Calling FFTW from Modern Fortran:: Chris@10: * Calling FFTW from Legacy Fortran:: Chris@10: * Upgrading from FFTW version 2:: Chris@10: * Installation and Customization:: Chris@10: * Acknowledgments:: Chris@10: * License and Copyright:: Chris@10: * Concept Index:: Chris@10: * Library Index:: Chris@10: @end menu Chris@10: Chris@10: @c ************************************************************ Chris@10: @include intro.texi Chris@10: @include tutorial.texi Chris@10: @include other.texi Chris@10: @include reference.texi Chris@10: @include threads.texi Chris@10: @include mpi.texi Chris@10: @include modern-fortran.texi Chris@10: @include legacy-fortran.texi Chris@10: @include upgrading.texi Chris@10: @include install.texi Chris@10: @include acknowledgements.texi Chris@10: @include license.texi Chris@10: @include cindex.texi Chris@10: @include findex.texi Chris@10: @c ************************************************************ Chris@10: Chris@10: @bye