Kohärenz zweier Signale

OP #3651818
Lesenswert?

Hallo leute gibt es irgendein Programm das die Kohärenz zweier signale 
ausrechnet. Komm mit der formel in wiki nicht klar und Beispiele im netz 
gibt es auch keine. Habt ihr zufällig noch eine Beispielrechnung ? Oder 
kennt ihr die Befehle für matlab.


Danke im Voraus
Admin Persönliche Seite #3652730
Lesenswert?

1
% Generate some signals
2
s = randn(1,20000);
3
x1 = s;
4
x2 = fftfilt([1 2 3 4],s) + randn(size(s));
5

6
% Short-Time Fourier Transform
7
X1 = spectrogram(x1,hamming(1024),512);
8
X2 = spectrogram(x2,hamming(1024),512);
9

10
% Estimate auto- and cross-PSDs
11
Sx1x1 = mean(abs(X1).^2,2);
12
Sx2x2 = mean(abs(X2).^2,2);
13
Sx1x2 = mean(X1.*conj(X2),2);
14

15
% Compute coherence estimate
16
C = Sx1x2./sqrt(Sx1x1.*Sx2x2);
17

18
% Plot magnitude squared coherence
19
plot(abs(C).^2)
#3655292
Lesenswert?

Und wozu kann man die Kohärenz praktisch benutzen?
Als Ist-Wert einer Regelschleife?

PS: einige Variationen zum bekannten Thema "Korrelation von 
Storchpopulation und Geburtenrate":
http://www.tylervigen.com/
Der Autor hat einen etwas morbiden Humor.
z.B. "Amerikanische Forschungsausgaben und Selbstmordrate durch Erhängen 
korrellieren zu 99,2 Prozent".
Admin Persönliche Seite #3655357
Lesenswert?

Christoph Kessler (db1uq) schrieb:
> Und wozu kann man die Kohärenz praktisch benutzen?

Die Kohärenz ist ein normiertes Maß für die lineare Abhängigkeit 
zwischen zwei Signalen, ähnlich dem Korrelationskoeffizienten, aber 
frequenzabhängig. Anwendungen gibt es z.B. in der Akustik, um den Grad 
der Diffusität eines Schallfeldes bei verschiedenen Frequenzen zu 
messen.
OP #3661551
Lesenswert?

Da steht ja auch noch, dass man für die Leistungsspektren (Kreuleistungs 
und autoleistungs) die gemittelten werte nehmen soll. Mit wieviel werten 
soll ich die denn mitteln. Alle können es ja nicht sein, dann hätte ich 
ja im endeffekt nur ein Wert für die Koharenzfunktion.


Danke im voraus

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren