"Frequenz" einer komplexen Summe verändern

Neue Frage »

Chris_31415 Auf diesen Beitrag antworten »
"Frequenz" einer komplexen Summe verändern
Meine Frage:
Hallo allerseits!

Mein Problem bereitet mir schon länger Kopfzerbrechen, vor allem erfordert es ein hohes Maß an räumlichem Vorstellungsvermögen. Aufmalen möchte ich es vorerst trotzdem nicht, da man es aus verschiedenen Perspektiven betrachten kann und ich euch mit meiner Sichtweise nicht zu sehr einschränken will. Ihr könnt gerne nachfragen, wenn ihr nicht sicher seid wie etwas gemeint ist.

Also los gehts:

Gegeben ist ein Büschel von Vektoren, die zueinander gleiche Winkel haben (wie bei der DFT, allerdings beschränken wir uns dabei fürs erste auf einen halben Umlauf).

Anfangs beträgt der Öffnungswinkel zwischen den äußersten Vektoren somit 180°, alle Vektoren und deren Summenvektor befinden sich in einer Halbebene (wo welche Achsen liegen bleibt erstmal euch überlassen - ich möchte das ganze ohnehin gleich in den dreidimensionalen Raum übertragen).

Hinzu kommt eine weitere Information, die sich in diesem Modell in der dritten Dimension darstellen lässt.

Die Einzelvektoren stehen stets im 45°-Winkel von der Rotationsachse ab, ihr Wert auf der Z-Achse ist daher stets ihr Betrag geteilt durch wurzel 2.
Der Z-Wert des Summenvektors entspricht dabei der Summe der Z-Werte der Einzelvektoren - er korrelliert daher auch mit den absoluten Beträgen der Einzelvektoren ( Faktor: 1/wurzel(2) ).

Und jetzt die grosse Frage:
Wie kann ich bei konstanter Anzahl an Vektoren die "Frequenz" erhöhen? Anders gesagt, ich will den Schrittwinkel omega und damit auch den Gesamt-Öffnungswinkel verringern wie wenn man einen Fächer zuklappt.

Lässt sich aus der alten Vektorsumme die neue ableiten, ohne alle einzelnen Vektoren erneut aufsummieren zu müssen?

#Anmerkung: Das Bild vom Fächer funktioniert im dreidimensionalen Raum nur eingeschränkt, die Vektoren liegen eher auf einem halbierten Kegel / Trichter. Von der Z-Ebene aus zeigen alle Vektoren vom Ursprung schräg nach oben und haben jeweils einen 45° Winkel zur Z-Achse (Rotationsachse).

Der Summenvektor jedoch liegt innerhalb dieses Trichters, sein Winkel zur Z-Achse ist in der Regel kleiner, denn seine Z-Koordinate bleibt konstant für alle Schrittwinkel omega (die natürlich weiterhin aus der draufsicht gemessen werden).

Die Wurzel aus X²+Y² nimmt bei größerem Omega ab, aber nach welcher Funktion??.

Meine Ideen:
Ich denke, dass es in der Signalverarbeitung möglich ist, die Energie eines Signals bei einer bestimmten Frequenz zu berechnen und dann die Energie einer tieferen daraus abzuleiten, allerdings funktioniert das offenbar nur mit bestimmten Eingangssignalen.

Aus der Zusatz-Information der Betragssumme lässt sich direkt der Wert bei 0Hz bestimmen, also wenn der Fächer ganz zu ist Augenzwinkern Ausserdem bleibt dieser Z-Wert für alle omega konstant.

Durch das Auftragen auf der Z-Achse ergibt sich zudem eine Vielzahl von Möglichkeiten, wie man Steigungsdreiecke zwischen (Summen-) Vektore und Achsen bilden und Winkel und Längen miteinander verrechnen kann - daher auch die Geometrie als Kategorie meiner Frage.

Fällt jemandem dazu ein guter Lösungsansatz ein?
In irgendeiner Form muss es doch möglich sein, zumindest den Betrag des Summenvektors in Abhängigkeit der Frequenz / des Schrittwinkels omega zu berechnen, wenn man die Werte bei 0°/0Hz und beim Maximalen Öffnungswinkel (180°), sowie eine der drei Ergebniskoordinaten bereits kennt.

Wenn man die Wurzel aus X²+Y² berechnen könnte, hätte man ein Teilergebnis, aus dem man (mit hilfe von Z) auch den Vektorbetrag errechnen kann und umgekehrt.
Das andere Teilergebnis lässt sich als Winkel auf der ursprünglichen 2D-Ebene darstellen, zwischen V und dem "Ruhepunkt der Fächerbewegung", den ihr übrigens frei wählen könnt (erster / letzter Vektor / mitte).

Ich weiss nicht einmal, wie man so eine Transformation überhaupt nennt, vielleicht Winkelstreckung??

Viele Grüße und viel Erfolg beim Grübeln,
Chris
Steffen Bühler Auf diesen Beitrag antworten »

Wenn wir das Ganze mal mit räumlichen Polarkoordinaten beschreiben, haben wir den Radius

, den Drehwinkel und den Höhenwinkel . Für die

Raumkoordinaten gilt nun







Nun ist bei Dir ja immer 45°, was das Ganze vereinfacht:







Die Länge eines solchen Vektors ist

Der Winkel ist nun der Öffnungswinkel Deines "Fächers", innerhalb dessen Du die einzelnen Vektoren verteilst. Bei und meinetwegen 11 Vektoren (also 10 Segmenten) haben diese Abtastwerte also z.B. einen Abstand von 18° voneinander. Ist , ist die Abtastperiode nur noch 9°.

Ich habe diese beiden Wörter bewusst fettgeschrieben, denn nun verlassen wir allmählich die Geometrie und gelangen in die Hochschulanalysis. Deswegen habe ich diesen Thread auch dahin verschoben, wo Dir eventuell besser geholfen werden kann.

Wenn Du signaltheoretische Grundlagen hast (was Dein Beitrag vermuten lässt), kannst Du nämlich nun die sinc-Funktion herleiten, die Du suchst. Diese beschreibt nämlich den Zusammenhang zwischen Abtastperiode und der Summe der einzelnen Stützstellenwerte (also Deinem Summenvektor).

Viele Grüße
Steffen
Chris_31415 Auf diesen Beitrag antworten »

Hallo nochmal,

erstmal vielen Dank für deine Hilfe.

Ich habe mittlerweile ein wenig mehr über Aliasing und die sinc-Funktion gelesen - und soweit ich verstanden habe, lässt sich eine Rechteckfunktion auf der Zeitachse auf eine sinc-Funktion auf einem Amplituden-Frequenz-Diagramm abbilden.

Beispielsweise hat ein M=4 Samples langer Rechteck-Impuls (x[i] = 1 für i=[0...3]) bei einer Frequenz von N=6 Samples eine Energie von



Die Phase liegt in der Mitte des Impulses und lässt sich daher leicht bestimmen.

Ein Gauss-Impuls hat bekanntermassen ein Gauss-Spektrum - daher liesse sich seine Energie bei einer bestimmten Frequenz ebenfalls gut berechnen. Die Phase liegt wie beim Rechteck in der Mitte (am Scheitelpunkt) der Kurve.


Was mir jedoch noch Probleme bereitet:

Wie kann ich bei einem Eingangssignal das keine symmetrische Funktion ist (sondern durch eine Faltung einer Rechteck- und einer Gauss-Funktion entsteht) die Phase (und die Energie) berechnen?

Für den Zusammenhang: Eine Gauss-Kurve erhalten wir auf einer der Achsen bei einer um 45° gekippten Perspektive auf den zuvor erwähnten Kegel/Trichter (in kartesischen Koordinaten). Die Fensterung mit dem Rechteck entspricht der Eingrenzung der Abtastwerte auf einen halben Frequenzumlauf (bei M=4 inklusive der beiden Extrema).

Beispiel:

Multipliziert man eine Gauss-Kurve der Länge N=6 mit einem Rechteck-Fenster der Länge M=4, wobei das erste Sample bei x[0]=1 dem Scheitelpunkt der Gauss-Funktion und dem Ersten Wert der Rechteckfunktion entspricht, so sind die weiteren Abtastwerte
x[1]=0,75 x[2]=0,25 x[3]=0 und x[4] = x[5] = 0

Wie berechne ich nun die Phase (bei einer fixen Frequenz von ) und wie verhält sich die Energie bei einer bestimmten Grund-Amplitude - ausgehend von M, N und der Gesamtsumme S der Abtastwerte??


Im Anhang ein Energie/Frequenz Diagramm für M=4; N=6, sowie M=8; N=14
Die Werte sind Normiert, daher ist die Phase bei f=1 von Interesse (entspricht der Frequenz von ).

Die Gauss- bzw. raised-cosine Funktion dient hier nur dem Vergleich, die Fehlerindikatoren zeigen die Werte der vereinfachten sinc-Funktion ohne den sinus im Nenner (also ohne Aliasing zu berücksichtigen).

Viele Grüße,
Chris
Chris_31415 Auf diesen Beitrag antworten »

Nachtrag:

Natürlich meine ich die Multiplikation von Gauss- und Rechteck-Fenster, keine Faltung.

Dass eine Multiplikation in der Zeit- einer Faltung in der Frequenz-Domäne entspricht habe ich zwar schon gehört - ich weiss aber nicht, wie ich die Funktion dieser Faltung, sowie die zugehörige Phase aus M und N berechnen kann.

Ich benötige insbesondere eine Formel für M = N/2 oder M = N/2 + 1 (da der letzte Wert der cos²-funktion ohnehin 0 ist, ist das Egal).

N wähle ich aus praktischen Überlegungen heraus aus für a > 1.

Das Ganze dient dazu, einen Low-Pass-Filter aus zwei "halben" Gauss-Kurven zusammenzusetzen, was ein Überlappen der Bereiche überflüssig machen würde.

Grüße, Chris
Steffen Bühler Auf diesen Beitrag antworten »

Ich bin nicht ganz sicher, ob ich Dich richtig verstehe. Wenn's nur darum geht, zum Beispiel die Zeitreihe

1,00 - 0,75 - 0,25 - 0,00 - 0,00 - 0,00 - 0,00 - ...

in die Frequenzdomäne zu bringen, erledigt Dir das ja eine einfache DFT mit Amplitude und Phase. Beantwortet das Deine Frage?

Viele Grüße
Steffen
Chris_31415 Auf diesen Beitrag antworten »

Hallo

leider ist es nicht so simpel. es geht mir darum, eine effiziente berechnung der energie und phase eines signals innerhalb dieses fensters der grösse M für eine bestimmte frequenz (1/N) aus den durch filter gewonnenen summenwerten abzuleiten.
Ich möchte eben nicht nochmal alle eingangswerte einzeln multiplizieren und aufsummieren müssen, wie etwa bei einer DFT.

beliebige reelle eingangswerte sollen mit zwei spiegelsymmetrisch angeordneten halben gauss- funktionen (und der Rechteck-funktion) von [0] bis [M] gefiltert werden, damit die drei summen als ausgangsbasis für eine effiziente berechnung der energie und phase des signals innerhalb dieses fensters bei einer bestimmten frequenz dienen können.

Zurück zum Bild: wenn A und B als achsen in einem kartesischen koordinatensystem mit 45 grad zur rotationsachse S und zur Imaginär-achse stehen, gilt





daraus berechnen wir elegant

und


und nach pythargoras gilt auch noch


leider fehlt mir der ansatzpunkt, auch aus S, A und B auch gleich Im abzuleiten oder wenigstens näherungsweise zu bestimmen.
die annahme, das eingangssignal sei ein gleichbleibender wert der grösse S/M brachte uns zur sinc-funktion, die uns die signalenergie des "gleichanteils" liefert.

Nun wäre es sehr hilfreich, eine ähnliche (auf M und N basierende) funktion für den varianten teil der signalenergie zu haben, die auch etwas über den imaginärteil des signals aussagt.
es muss möglich sein, näherungen für Im aus den nächst-kleineren transformationsgrössen zu ziehen, wie es ja auch beim zusammensetzen eines komplexen wertes aus beispielsweise zwei kleineren "rechteck-gewichteten" summen (mithilfe der sinc-funktion zur energie-umrechnung) ist. die phase wird hierbei für jedes der kleinen fenster halbiert und für das eine um 90 grad versetzt, die energien liefern die rechtecksummen der beiden fenster jeweils mal der sinc-funktion. bei ungleicher verteilung der beiden einzelnen vektorenergien ergibt sich eine abweichung der phase von der "mitte"
nur, das uns nun aus der nächstkleineren ebene neben der rechteck-summe auch die "linksgewichtete" und "rechtsgewichtete" summe zur verfügung stehen, sowie deren phase und energie (hier vorerst beides als gegeben annehmen) was eine wesentlich bessere approximation der phase und energie tieferer frequenzen anhand mehrerer solcher teilstücke ermöglichen solte.

Viele Grüsse,
Chris
 
 
Steffen Bühler Auf diesen Beitrag antworten »

Dann gehe ich auch noch einmal zurück zum Bild des Fächers.

Ich habe mal ein Bild angehängt, das ich mir bei der Beantwortung Deines ersten Beitrags gezeichnet habe.

Wie damals geschrieben, summieren sich ja Cosinus- und Sinuswerte auf. (nicht etwa (1-cos)-Werte!) Die Fächerstützstellen habe ich mal auf 180 gesetzt.

Die Variable omega beschreibt nun, wie weit der Fächer aufgeklappt wird. Für omega=1 hat er 180°. Mehr interessiert uns eigentlich ja auch nicht, aber es wird interessant, wie es weitergeht, denn das sollte Deine Frage nach der Funktion für Real- und Imaginärteil (und damit auch der Phase) beantworten.

Die Funktion r(omega) (die Länge des Vektors) ist nämlich eindeutig identisch mit |sinc(omega*pi/2)|. Diese sinc-Funktion sollte somit den von Dir gesuchten Zusammenhang darstellen.

Viele Grüße
Steffen
Chris_31415 Auf diesen Beitrag antworten »

Hallo,

mein fehler, die funktionen für die summierungen entlang der schrägachsen A und B müssen natürlich so lauten:





S entspricht der werte entlang der rotationsachse und ist gleichzeitig die summe aller x[i] geteilt durch wurzel 2.

dann jedoch lassen sie sich problemlos aufsummieren (wie jede beliebige raumrichtung) bzw. anhand ihrer differenz in die "normale" form des realteils umrechnen.
Ich habe bewusst A und B als achsenbezeichnung für die schrägachsen eingeführt, da man oft dazu tendiert X,Y mit der draufsicht auf die rotation, sowie Z für die rotationsachse zu verbinden.
Du hast in deiner zeichnung ebenfalls x und y gewählt für die bezeichnung der werte in richtung von real- und imaginärachse.

das problem besteht darin, das das eingangssignal (ich bleibe mal bei x[i] als bezeichnung dafür) unbekannt ist - beispielsweise liefern die reihen 1; 0; 3; 2 und 0; 0; 3; 1 die selben komplexen summen bei M = 4 und N = 6. einziger unterschied ist die summe der einzelwerte, bzw der wert entlang der höhenachse S.

wir könnten z.B. die imaginärachse als ergebnis einer rechtecks- eingangsfunktion betrachten und die amplitude eines äquivalenten rechteckpulses (der die breite M hat) daraus berechnen.
übrig bliebe ein um diesen wert nach unten versetztes eingangssignal, das bei dieser frequenz ein rein reelles ergebnis liefern sollte (oder täusche ich mich da?)

die erneute transformation dieses signals hätte auch ein geringeres S*, wobei die differenz der signalsumme sich leicht anhand der amplitude und länge des äquivalentpulses ableiten liesse.

was nun noch fehlt ist eine umrechnung des übriggebliebenen S-anteils (oder des verhältnises von S zu diesem S*) in den realteil anhand von M und N (ähnlich wie sinc den zusammenhang zwischen signalsumme und imaginärteil für rechteckfunktionen beschreibt.
Chris_31415 Auf diesen Beitrag antworten »

und schon wieder falsch - die "abgeschnittene gauss kurve", die den verlauf von transformierten einheitsvektoren entlang der A-achse beschreibt wird wegen der quadratur des cosinus mit der halben frequenz angegeben:



B entsprechend auch. Sinn dieser beiden achsen soll es sein, Re und B aus S und A abzuleiten, sowie eine beschreibung der gesuchten formel für S^ = S-S* mit den grössen A, B, S, M und N zu erhalten. da Re positiv oder negativ sein kann, ist es in meinen augen einfacher, den wert als differenz der positiven werte A und B (geteilt durch wurzel 2, s.O.) zu betrachten. ich gehe bei dieser behauptung allerdings von rein positiven eingangswerten x[i] aus.

die achsen A, B und Im ergeben dabei ein dreidimensionales, orthogonales koordinatennetz, in dem der aufbau der gesuchten formel aller voraussicht nach einen geometrischen "sinn" haben dürfte.
Steffen Bühler Auf diesen Beitrag antworten »

Zitat:
Original von Chris_31415
was nun noch fehlt ist eine umrechnung des übriggebliebenen S-anteils (oder des verhältnises von S zu diesem S*) in den realteil anhand von M und N


Ja, aber hierzu fehlt mir leider das Spezialwissen. Eventuell liest ja jemand mit, der weiterhilft. Mit den inzwischen gewonnenen Erkenntissen könnte auch ein neuer Thread günstig sein. Ein frischer Thread wird üblicherweise von mehr Leuten gelesen.

Viele Grüße
Steffen
Chris_31415 Auf diesen Beitrag antworten »

Hallo Steffen,

ich danke dir jedenfalls für deine konstruktiven beiträge und anregungen - und vor allem für die geduld, dir meine bildhaften beschreibungen in deine eigenen begriffe und formeln umzudeuten. ich glaube auch nicht, das eine derartige funktion bereits zum mathematischen allgemeingut gehört, wie etwa die sinc-funktion. vielleicht ist auch mein ansatz auch nicht besonders praktikabel.

eventuell haben einige spezialisten der signalverarbeitung ähnliche konzepte für frequenzkorrigierte pitch-effekte (sogenannte key-correction algorithmen), aber deren genaue funktionsweise wird von ihren entwicklern i.d.R. strikt unter verschluss gehalten.

das thema nochmal verständlich zusammenzufassen wäre mittlerweile wohl mal angebracht.

vielleicht habe ich mich mit meiner schrägachsen-sicht auch zu sehr auf eine für mich praktikable darstellungsform festgelegt. immerhin hatte ich vor, ein neues wavelet zu (er)finden, da kommt mir eine herleitung von S und Re aus A und B gerade recht (S lässt sich prima aus mehreren kleineren fenstern aufsummieren, daher muss für grössere fenster nur noch A oder B bekannt sein um das gegenstück und den Realteil zu erhalten.
-> eliminierung redundanter informationen über unterschiedliche frequenzen ergibt eine art wavelet-datendarstellung (ja, ich bin informatiker ; )

was mir langsam klar wird ist die notwendigkeit, für jede transformation (eines vektors von einer frequenz in eine andere) drei voneinander unabhängige werte heranzuziehen - ein vektor in diesem 3D-raum lässt sich wohl am besten mit den koeffizienten energie, phase und summe beschreiben.

als alternative wäre jedoch auch eine herleitung dieser koeffizienten aus der impulsbreite/dauer, -amplitude und phasenlage eines äquivalenten rechteckimpulses (mittels sinc) denkbar, was sowohl eine nachträgliche phasendrehung, als auch eine phasen- und energietreue projektion des fensters in tiefere frequenzbereiche (mit relativ geringem rechenaufwand) ermöglichen dürfte.

nochmals danke und viele grüsse,
chris
Neue Frage »
Antworten »



Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »