Stützwerte, d.h. Liste von reelen oder komplexen Zahlen
Es wird die (komplexwertige) eindimensionale diskrete Fouriertransformation berechnet und als Array zurückgegeben. Genauer sei y ein Array bestehend aus den n Elementen
y0,y1,…,yn−1
(reelle oder komplexe Zahlen). Weiterhin seien xi=i⋅n2π äquidistante Stützstellen auf dem Intervall [0,2π] und wir definieren
g(x)=k=0∑n−1ck⋅exp(I⋅k⋅x).
Dabei ist I die imaginäre Einheit. Bestimmt werden schließlich die (komplexen) Faktoren ck derart, dass die Interpolationsaufgabe
g(xi)=yi
für alle i=0,…,n−1 erfüllt wird. Komplexe Zahlen werden dabei jeweils als Array mit zwei Einträgen definiert.Falls n eine Zweierpotenz ist, dann besitzt das Verfahren dieser Funktion eine Komplexität von O(n⋅log(n)). Falls n keine Zweierpotenz ist, dann besitzt das Verfahren dieser Funktion eine Komplexität von O(n2).
Beispiel
Das folgende Beispiel generiert n zufällige (reellwertige) Stützwerte und führt eine diskrete Fouriertransformation durch. Die Stützwerte sowie das Ergebnis der Transformation werden entsprechend ausgegeben.
Das folgende Beispiel generiert n zufällige (komplexwertige) Stützwerte und führt eine diskrete Fouriertransformation durch. Die Stützwerte sowie das Ergebnis der Transformation werden entsprechend ausgegeben.
xxxxxxxxxx
<!DOCTYPE html>
<html>
<head>
<scriptsrc="taramath.js"></script>
</head>
<body>
<textareaid="output"></textarea>
<script>
varn=8;
vary=newArray(n);
for (vari=0; i<n; i++) y[i] = [Math.random(), Math.random()];