AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Goertzel Algorithmus (Frequenz + Phase)

Ein Thema von stoxx · begonnen am 20. Aug 2011 · letzter Beitrag vom 4. Okt 2011
Antwort Antwort
Benutzerbild von stoxx
stoxx

Registriert seit: 13. Aug 2003
1.111 Beiträge
 
#1

AW: Goertzel Algorithmus (Frequenz + Phase)

  Alt 24. Aug 2011, 12:13

Drei Leute mit Expertenwissen haben dir gesagt was zu tun ist, wo deine Fehler (in den Vorraussetzungen und Annahmen liegen) und was am Besten wäre.
Da ich ja kein Profi mit Expertenwissen bin, kann ich nur Vermutungen anstellen, deswegen die Frage, geht das mit Scilab Plot und der FFT ebenso?
(Ich könnte mir denken, dass da Verfahren hier seine Probleme hat)

Frequenz 1:
-------------
102 Hz (oder 101 Hz)
Amplitude: 3
Phase: 0



Frequenz 2:
-----------
101 Hz
Amplitude: 4
Phase: 45


Grün im Bild ist die Rekonstruktion, darunter rot die Originalkurve.
(Sieht man nicht, da gleich .. kleiner Scherz)

da ich den Frequenzerkennungsalgo noch recht simpel habe, hab ich einfach nur mal auf Up und Downs im Spektrumverlauf geschaut und alle Frequenzen unterhalb 5 Prozent der Maxamplitude, die also auf Rechenungenauigkeiten beruhen, ignoriert.
Angehängte Grafiken
Dateityp: png 2011 (08) 24.Aug [13-14-18].png (44,1 KB, 23x aufgerufen)
Phantasie ist etwas, was sich manche Leute gar nicht vorstellen können.

Geändert von stoxx (24. Aug 2011 um 12:43 Uhr)
  Mit Zitat antworten Zitat
Medium

Registriert seit: 23. Jan 2008
3.688 Beiträge
 
Delphi 2007 Enterprise
 
#2

AW: Goertzel Algorithmus (Frequenz + Phase)

  Alt 24. Aug 2011, 12:32
stoxx bitte. Das ist doch keine Überheblichkeit, das ist das Resultat deiner konstant schwammigen Beschreibung dessen, wozu das Teil nachher denn eingesetzt werden soll. Da dein Ziel nach wie vor sehr allgemein ist, bleibt doch erstmal nur der Rat zu dem, was man allgemein in der Signalanalyse macht. Wenn einer hier etwas arg überzeugt rüber kommt, dann eher du
Ich gebe ja zu: Deine Kurven sehen alle prima aus (dass ich das jemals zu einem Mann sagen würde...), nur bin ich skeptisch bezüglich der Tauglichkeit in realen Anwendungsfällen mit echten, oft nicht so "glatten", Messdaten. Zumal halt nicht klar ist, wofür du das entwickelst! Soll es ein "high-quality"-Ersatz für die FFT sein? Wenn du diese Fragestellungen überheblich nennen willst, nun ja.

Bisher war von dir im Wesentlichen nur zu lesen, wie gut das alles klappt, wobei du aber, an der Terminologie hier und da erkennbar (Spektrumverlauf gibt's nicht, das ist das Frequenzspektrum oder einfach nur Spektrum z.B.)*, nicht so arg tief im Thema zu stecken scheinst. Daher besteht hier denke ich nicht zu Unrecht die Befürchtung, dass das Verfahren in sich total hübsch und rund ausschaut, in realen Anwendungsfällen aber evtl. garnicht sinnvoll einsetzbar ist.

Wie machst du die Rücktransformation eigentlich? IFFT? Gibt's nen inversen Goertzel? Das war der eigentlich interesante Teil der Frage vorhin

Komm doch bitte für nen Ründchen vom "was wollt ihr, es funktioniert doch, seht her"-Ross herunter, und lass dir von uns Ungläubigen mal die Nachfragen gefallen. Ist ja nicht so, als wäre die Sache uninteressant, aber dein Auftreten ist nicht sonderlich Kommunikationsfördernd. So kenne ich dich gar nicht Wir wollen dir sicherlich nicht an die Karre fahren, das könnten wir einfacher haben.

*) Das soll kein Rechtschreib- oder Fachwortbash sein. Nicht, dass du das weiterhin so auslegst. Es ist schlicht der daraus mögliche Rückschluss, dass dir ggf. einige Zusammenhänge einfach nicht Bekannt sind, die aber wichtig zu bedenken sind wenn man so einen Algo in entsprechenden Kontexten einsetzen will. Nachher "vermarktest" du das als "perfekte FFT", und deine Kunden wundern sich nachher, warum auf einmal diese oder jene mathematische Eigenschaft nicht mehr da ist. Das ist alles.
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)

Geändert von Medium (24. Aug 2011 um 12:37 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von stoxx
stoxx

Registriert seit: 13. Aug 2003
1.111 Beiträge
 
#3

AW: Goertzel Algorithmus (Frequenz + Phase)

  Alt 24. Aug 2011, 13:06
stoxx bitte. Das ist doch keine Überheblichkeit, das ist das Resultat deiner konstant schwammigen Beschreibung dessen, wozu das Teil nachher denn eingesetzt werden soll.
hmm .. das war für die Fragestellung eines Algorithmus ja erstmal nicht so wichtig.
Es geht um Zykliken in Finanzzeitreihen.


Da dein Ziel nach wie vor sehr allgemein ist, bleibt doch erstmal nur der Rat zu dem, was man allgemein in der Signalanalyse macht. Wenn einer hier etwas arg überzeugt rüber kommt, dann eher du
das stimmt, aber man entfernt sich doch damit viel zu sehr von den Wurzeln. Du kannst Signalanalyse, aber die Frage ist, kannst Du alles auf einen einfachen Nenner bringen? damit meine ich, kannst Du z.b. die Differentialrechnung einem Neuling einführend und von Anfang an, in sich plausibel herleiten?


Ich gebe ja zu: Deine Kurven sehen alle prima aus (dass ich das jemals zu einem Mann sagen würde...),
versteh ich nicht .. ich denke, das ist auch alles mit der FFT möglich?
warum sehen jetzt die Kurven prima aus?

nur bin ich skeptisch bezüglich der Tauglichkeit in realen Anwendungsfällen mit echten, oft nicht so "glatten", Messdaten.
Der reale Einsatz könnte nur an Geschwindigkeitsfragen scheitern, aber wie gesagt, die intelligente Peaksuche ist noch nicht entwickelt von mir, müsst man dann mal direkt vergleichen. Und warum hast Du bedenken zwecks der Messdaten? Der Goertzel Algo die Grundstufe der Mathematik, alle weiteren Verfahren sind nur entwickelt worden, um Geschwindigkeiten zu optimieren. Alles geht einher mit Ungenauigkeitenn, die man sich damit einkauft.
Mehr als der Goertzel (dier Goertzel) kann niemand ! (nur schneller)
Ist eben ein "Bubblesort" Algorithmus. Was kann man mit Bubblesort nicht sortieren?

Zumindest was die Untersuchung von stationären Signalen (nennt man glaub ich so) angeht.
Also in der Chaostherie wird man damit keine Blumentöpfe gewinnen.

Zumal halt nicht klar ist, wofür du das entwickelst! Soll es ein "high-quality"-Ersatz für die FFT sein? Wenn du diese Fragestellungen überheblich nennen willst, nun ja.
ja, ich mags halt genau. Geschwindigkeit erstmal egal, da Börsendaten ja auch Daten sind, von denen man erstmal grundsätzlich nix weiß, und ich nicht irgendwelche Peaks von Algorithmenungenauigkeiten haben will.

Wie machst du die Rücktransformation eigentlich? IFFT? Gibt's nen inversen Goertzel? Das war der eigentlich interesante Teil der Frage vorhin
die Frage erstaunt mich, und zeigt mir auch, dass Du viel zu fest gefahren bist in Deinem Denken. Einfach eine überlagerte Schwingung erzeugen. Hier der Quellcode dafür.

Delphi-Quellcode:
procedure TForm1.btn_GoertzelClick(Sender: TObject);
var i: Integer;
    f, phase, amp : Extended;
    j: integer;
begin
  SetLength(Rekonstr,length(Signal));
  for i := 0 to High(Rekonstr) do
           Rekonstr[i] := 0;

  for j := 0 to FrequncyFinder.count - 1 do begin
     f := FrequncyFinder.Frequency[j];
     phase := FrequncyFinder.Phase[j];
     amp := FrequncyFinder.Amplitude[j];
        for i := 0 to High(Rekonstr) do
           Rekonstr[i] :=Rekonstr[i] + Amp * sin(2* Pi * f * i / Sig_fAbtast + Phase /180 * Pi);
  end; // for i (ff.Count - 1)

  se_Rekonstruktion.Clear;
  for i := 0 to High(Rekonstr) do
    se_Rekonstruktion.AddXY(i * 1 / Sig_fAbtast,Rekonstr[i]);
end;

aber dein Auftreten ist nicht sonderlich Kommunikationsfördernd. So kenne ich dich gar nicht
ähm .. kennen wir uns? .. klang so persönlich?

Nachher "vermarktest" du das als "perfekte FFT", und deine Kunden wundern sich nachher, warum auf einmal diese oder jene mathematische Eigenschaft nicht mehr da ist. Das ist alles.
welche Eigenschaft soll fehlen?
Dankbar für jede Wissenserweiterung
Phantasie ist etwas, was sich manche Leute gar nicht vorstellen können.

Geändert von stoxx (24. Aug 2011 um 20:26 Uhr)
  Mit Zitat antworten Zitat
TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
3.074 Beiträge
 
Delphi 10.4 Sydney
 
#4

AW: Goertzel Algorithmus (Frequenz + Phase)

  Alt 24. Aug 2011, 15:17
Ein paar kleine Fragen:

In einen Börsenkurs über einen x beliebigen Zeitraum liegen y viele Frequenzen, richtig?
Egal wie sehr man zeitlich in einen Kurswert reinzoomt, es sieht im Prinzip aus wie Rauschen, richtig?
Egal ob man jetzt die Kursentwicklung von drei Monaten oder drei Stunden anschaut, richtig?

Wofür ist der Goertzel Algo damals 1958 entwickelt worden?
Für welche Anwendungsfälle?

Welche Parameter musst du den Goertzel Algo übergeben, damit er rechnen kann?
  Mit Zitat antworten Zitat
Benutzerbild von stoxx
stoxx

Registriert seit: 13. Aug 2003
1.111 Beiträge
 
#5

AW: Goertzel Algorithmus (Frequenz + Phase)

  Alt 24. Aug 2011, 15:50
Ein paar kleine Fragen:

Wofür ist der Goertzel Algo damals 1958 entwickelt worden?
Für welche Anwendungsfälle?

Welche Parameter musst du den Goertzel Algo übergeben, damit er rechnen kann?

Du findest den Goertzel im Eingangspost von mir oder die Version von Peter etwas später.
Wofür er entwickelt wurde, kann ich Dir nicht sagen, aber man nimmt / nahm ihn zur Erkennung der töne im Mehrfrequenzwahlverfahren im Telefon.
Börse .. naja .. ist sicherlich etwas komplizierter, Du solltest die Eingangssignale sicherlich noch normalisieren und standardisieren. Falls Du so mutig sein willst, Schwingungen dort erkennen zu wollen.
Phantasie ist etwas, was sich manche Leute gar nicht vorstellen können.
  Mit Zitat antworten Zitat
TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
3.074 Beiträge
 
Delphi 10.4 Sydney
 
#6

AW: Goertzel Algorithmus (Frequenz + Phase)

  Alt 24. Aug 2011, 17:18
Ein paar kleine Fragen:

Wofür ist der Goertzel Algo damals 1958 entwickelt worden?
Für welche Anwendungsfälle?

Welche Parameter musst du den Goertzel Algo übergeben, damit er rechnen kann?

Du findest den Goertzel im Eingangspost von mir oder die Version von Peter etwas später.
Wofür er entwickelt wurde, kann ich Dir nicht sagen, aber man nimmt / nahm ihn zur Erkennung der töne im Mehrfrequenzwahlverfahren im Telefon.
Börse .. naja .. ist sicherlich etwas komplizierter, Du solltest die Eingangssignale sicherlich noch normalisieren und standardisieren. Falls Du so mutig sein willst, Schwingungen dort erkennen zu wollen.
Was ist mit meinen anderen Fragen?

Für den Goertzel Algo musst du also das zu untersuchende Signal (Double-Array) reingeben, die Samplerate und die Frequenz die du ERWARTEST / GESUCHT ist?

Man muss also vorher wissen was man will?

Nun bin ich aber gespannt wie du den logischen Schluß von einen Breitbandrauschsignal (gaaaanz viele Frequenzen) wie Börsenkurse zu einen EINZELfrequenzerkennungsverfahren machst!
  Mit Zitat antworten Zitat
Benutzerbild von stoxx
stoxx

Registriert seit: 13. Aug 2003
1.111 Beiträge
 
#7

AW: Goertzel Algorithmus (Frequenz + Phase)

  Alt 24. Aug 2011, 17:30

Was ist mit meinen anderen Fragen?
oh .. welche waren noch offen? .. ich hatte Dich ja auch gefragt, was mit den beiden Frequenzen 101 und 100 Hz bei der FFT rauskommt.

Für den Goertzel Algo musst du also das zu untersuchende Signal (Double-Array) reingeben, die Samplerate und die Frequenz die du ERWARTEST / GESUCHT ist?
Man muss also vorher wissen was man will?
genau .. Brute Force, aber da die Frequenz ja sowieso nur halb so groß wie die Abtastrate sein kann / sollte, ist der Suchbereich begrenzt
wenn Du die mitte zweier Frequenzen triffst, liefert er den Mix aus den zweien..


Nun bin ich aber gespannt wie du den logischen Schluß von einen Breitbandrauschsignal (gaaaanz viele Frequenzen) wie Börsenkurse zu einen EINZELfrequenzerkennungsverfahren machst!

na die hohen Frequenzen weglassen ...
Phantasie ist etwas, was sich manche Leute gar nicht vorstellen können.
  Mit Zitat antworten Zitat
Medium

Registriert seit: 23. Jan 2008
3.688 Beiträge
 
Delphi 2007 Enterprise
 
#8

AW: Goertzel Algorithmus (Frequenz + Phase)

  Alt 24. Aug 2011, 17:36
@TiGü: Gut, das ist ja recht einfach, da das ja ein diskretes Signal ist. Aus der Anzahl der Samples bekommt man raus, welche Bänder man überhaupt sauber erfassen kann, und die jodelt man einfach durch. Was nur endlich endlich klar wurde ist, dass du, stoxx, einen totalen Spezialfall bezüglich der Signalverarbeitung hast. Frequenzen und Phases sind fast immer im Zusammenhang mit mechanischen Schwingungen gebräuchlich, und in DIESEM Kontext könnte es mit deinem Algo Problemchen geben. Da der Finanzmarkt aber eh so weit von Realweltlichen Dingen wie Mechanik ist, sehe ich da natürlich kein Problem .
Wenn das alles in diesem Zusammenhang ausreicht und Sinn macht, dann ist doch alles gut! Mehr wollte ich doch garnicht wissen, bzw. darauf hinweisen, dass das ganze eben nicht ganz so eine "straighte" Super-FFT ist wie das hier immer klingt, da es, wenn man FFT erwartet, eben unerwartete Eigenschafen nach sich ziehen kann. Gerade in der Soundverarbeitung oder Materialforschung macht man ja weit mehr als nur Spitzen im Spektrum lesen. Bisher war einfach nicht klar, dass du es dafür überhaupt nicht vorsiehst, und wenn du nix sagst... ja was bleibt einem, als den üblichen Fall vorauszusetzen!? Das hat doch mit Inflexibilität nichts zu tun, mit unvollständigen Infos aber sehr wohl. Und grad ich... der seinen Profs immer lang und schmutzig darlegen musste, was ich wann wo wie und warum getan hab, und nachher Händeschütteln für die krative Lösung kassierte
Aber du fragst allgemein, also bekommst du Antworten auf den allgemeinen Fall bezogen. Ebenso die "Synthese": Für dein Anliegen sicherlich prima geeignet, aber das wird eben auch jetzt erst klar. Du willst halt kein physikalisch relevantes Modell, du willst einen theoretischen Indikator. Sag das auf Seite eins, und die Welt ist schön.

Wir kennen uns, meines Wissens nach, übrigens nicht. Aber wir sind ja auch beide nicht erst seit gestern in der DP, und irgendwann kennt man halt die Namen
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:58 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz