<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.nars2000.org/index.php?action=history&amp;feed=atom&amp;title=System_Function_DFT</id>
	<title>System Function DFT - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.nars2000.org/index.php?action=history&amp;feed=atom&amp;title=System_Function_DFT"/>
	<link rel="alternate" type="text/html" href="https://wiki.nars2000.org/index.php?title=System_Function_DFT&amp;action=history"/>
	<updated>2026-06-25T05:15:07Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.45.3</generator>
	<entry>
		<id>https://wiki.nars2000.org/index.php?title=System_Function_DFT&amp;diff=3392&amp;oldid=prev</id>
		<title>WikiSysop: Created page with &quot;This function is available in both monadic and dyadic forms ==Monadic Function== {{BoxStart|&lt;apll&gt;Z←⎕DFT R&lt;/apll&gt; |returns the Discrete Fourier Transform of &lt;apll&gt;R&lt;/apll&gt;...&quot;</title>
		<link rel="alternate" type="text/html" href="https://wiki.nars2000.org/index.php?title=System_Function_DFT&amp;diff=3392&amp;oldid=prev"/>
		<updated>2019-02-05T21:28:17Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;This function is available in both monadic and dyadic forms ==Monadic Function== {{BoxStart|&amp;lt;apll&amp;gt;Z←⎕DFT R&amp;lt;/apll&amp;gt; |returns the Discrete Fourier Transform of &amp;lt;apll&amp;gt;R&amp;lt;/apll&amp;gt;...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;This function is available in both monadic and dyadic forms&lt;br /&gt;
==Monadic Function==&lt;br /&gt;
{{BoxStart|&amp;lt;apll&amp;gt;Z←⎕DFT R&amp;lt;/apll&amp;gt;&lt;br /&gt;
|returns the Discrete Fourier Transform of &amp;lt;apll&amp;gt;R&amp;lt;/apll&amp;gt;.}}&lt;br /&gt;
{{BoxLine|&amp;lt;apll&amp;gt;R&amp;lt;/apll&amp;gt; is a scalar or vector of Real or Complex numbers.}}&lt;br /&gt;
{{BoxEnd|&amp;lt;apll&amp;gt;Z&amp;lt;/apll&amp;gt; is a vector of length &amp;lt;apll&amp;gt;2*⌈2⍟≢R&amp;lt;/apll&amp;gt; of Complex numbers.}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;The monadic function is implemented by choosing the Fast Fourier Transform algorithm appropriate to the datatype of &amp;lt;apll&amp;gt;R&amp;lt;/apll&amp;gt;.  In particular, if the datatype of &amp;lt;apll&amp;gt;R&amp;lt;/apll&amp;gt; is&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;Fixed Precision Integer or Floating Point, the FFT algorithm from Gnu Scientific Library is used&amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;Multiple Precision Integer/Rational or Floating Point, the FFT algorithm MPFFT is used&amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;Ball Arithmetic, the FFT algorithm from ARB is used&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;Because the underlying FFT algorithm is most efficient when the length of &amp;lt;apll&amp;gt;R&amp;lt;/apll&amp;gt; is a power of two, the system function automatically pads its argument &lt;br /&gt;
with a sufficient number of trailing zeros, and returns a result of the padded length.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;For example,&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;apll&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
      ⎕PP←10&lt;br /&gt;
      ⎕DFT 1 2 3 4&lt;br /&gt;
10 ¯2&amp;lt;_i/&amp;gt;2 ¯2 ¯2&amp;lt;_i/&amp;gt;¯2&amp;lt;/pre&amp;gt;&amp;lt;/apll&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Dyadic Function==&lt;br /&gt;
{{BoxStart|&amp;lt;apll&amp;gt;Z←L ⎕DFT R&amp;lt;/apll&amp;gt;&lt;br /&gt;
|returns the Discrete Fourier Transform of &amp;lt;apll&amp;gt;R&amp;lt;/apll&amp;gt; or its Inverse depending upon the value of &amp;lt;apll&amp;gt;L&amp;lt;/apll&amp;gt;.}}&lt;br /&gt;
{{BoxLine|&amp;lt;apll&amp;gt;R&amp;lt;/apll&amp;gt; is a scalar or vector of Real or Complex numbers.}}&lt;br /&gt;
{{BoxLine|&amp;lt;apll&amp;gt;L&amp;lt;/apll&amp;gt; is an integer scalar whose value is either &amp;lt;apll&amp;gt;1&amp;lt;/apll&amp;gt; or &amp;lt;apll&amp;gt;¯1&amp;lt;/apll&amp;gt;.}}&lt;br /&gt;
{{BoxEnd|&amp;lt;apll&amp;gt;Z&amp;lt;/apll&amp;gt; is a vector of length &amp;lt;apll&amp;gt;2*⌈2⍟≢R&amp;lt;/apll&amp;gt; of Complex numbers.}}&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;The dyadic function &amp;lt;apll&amp;gt;1 ⎕DFT R&amp;lt;/apll&amp;gt; returns the Discrete Fourier Transform of &amp;lt;apll&amp;gt;R&amp;lt;/apll&amp;gt;; &amp;lt;apll&amp;gt;¯1 ⎕DFT R&amp;lt;/apll&amp;gt; returns the Inverse Discrete Fourier Transform.  As in the monadic case, the dyadic function chooses the (Inverse) Fast Fourier Transform algorithm appropriate to the datatype of R.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;For example,&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;apll&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
      ⎕PP←10&lt;br /&gt;
      ⎕DFT 1 2 3 4&lt;br /&gt;
10 ¯2&amp;lt;_i/&amp;gt;2 ¯2 ¯2&amp;lt;_i/&amp;gt;¯2 &lt;br /&gt;
      1 ⎕DFT 1 2 3 4&lt;br /&gt;
10 ¯2&amp;lt;_i/&amp;gt;2 ¯2 ¯2&amp;lt;_i/&amp;gt;¯2 &lt;br /&gt;
      ¯1 ⎕DFT ⎕DFT 1 2 3 4&lt;br /&gt;
1 2 3 4&amp;lt;/pre&amp;gt;&amp;lt;/apll&amp;gt;&lt;/div&gt;</summary>
		<author><name>WikiSysop</name></author>
	</entry>
</feed>