kurse:efcomputergrafik:kw45

This is an old revision of the document!


Runden beim Typ Float

Die Datenpunkte $P(x|y)$ werden von Tigerjython mit einer Nachkommastelle zurückgegeben. Die berechneten Fourierkoeffizienten haben aber 13 Nachkommastellen. Damit wird unsere Datenreduktion um den Faktor 13 verschlechtert. Abhilfe schafft runden der Fourierkoeffizienten auf zwei oder drei Nachkommastellen.

round(float Zahl, Anzahl Nachkommastellen)

Da unsere Fourierkoeffizienten komplexe Zahlen sind müssen wir wie folgt vorgehen.

c=complex(round(c.real,2),round(c.imag,2))

Maximaler Index $k_{max}$ der Fourierkoeffizienten $c_k$

Sei $n$ die Anzahl Punkte, wie viele Fourierkoeffizienten $c_k$ können, dürfen wir berechnen? Dazu müssen wir uns die Formel zur Berechnung der Fourierkoeffizienten genauer anschauen. $$c_k=\int_0^1 f(t)\cdot e^{-2 \pi ikt}dt \approx \sum_{j=0}^{n-1}f(j\cdot \Delta t)\cdot e^{-2 \pi ikj\cdot \Delta t}\cdot \Delta t$$ Relevant ist dabei die komplexe Exponentialfunktion, welche $2\pi$-periodisch ist. Wir berechnen die $c_k$ über eine endliche Summe. $$c_k=\sum_{j=0}^{n-1}f(j\cdot \Delta t)\cdot e^{-2 \pi ikj\cdot \Delta t}\cdot \Delta t$$ Die komplexe Exponentialfunktion als Funktion von $k$ lautet dann $$f_j(k)= e^{-2 \pi ikj\cdot \Delta t} \qquad j\in\{0,1,...,n-1\}$$ Zudem ist $\Delta t = \frac{1}{n-1}$

  • kurse/efcomputergrafik/kw45.1572950623.txt.gz
  • Last modified: 2019/11/05 11:43
  • by Marcel Metzler