20.01.2014 Aufrufe

Skript zur Vorlesung Physik auf dem Computer - Universität Stuttgart

Skript zur Vorlesung Physik auf dem Computer - Universität Stuttgart

Skript zur Vorlesung Physik auf dem Computer - Universität Stuttgart

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

3.7 Wavelets<br />

# Haar-Wavelet-Transformation<br />

#############################<br />

from scipy import *<br />

def haar_trafo(data):<br />

"Diskrete Wavelettransformation mit Hilfe des Haar−Wavelets."<br />

# Daten mit kleinstem Integrationsschritt multiplizieren<br />

c = data.copy() / len(data)<br />

# Temporaerer Puffer, um benoetigte Werte nicht zu ueberschreiben<br />

ctmp = zeros(c.shape)<br />

width = len(c)/2<br />

while width >= 1:<br />

for n in range(width):<br />

tmp1 = c[2*n]<br />

tmp2 = c[2*n+1]<br />

# Detail<br />

ctmp[width + n] = tmp1 - tmp2<br />

# Downsampling<br />

ctmp[n] = tmp1 + tmp2<br />

# Puffer <strong>zur</strong>ueckschreiben<br />

c[:2*width] = ctmp[:2*width]<br />

width = width / 2<br />

return c<br />

def inverse_haar_trafo(c):<br />

"Inverse Diskrete Wavelettransformation mit Hilfe des Haar−Wavelets"<br />

# Rueckgabewerte<br />

data = zeros(len(c))<br />

# phi mitnehmen <strong>auf</strong> der niedrigsten Stufe<br />

data[0] = c[0]<br />

width = 1<br />

cstart = 1<br />

while width

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!