2 svar
74 visningar
Heretic 88 – Fd. Medlem
Postad: 19 jun 2017 19:24

Hur räknar man ut E(w*w') = Q ?

Hej!

För att räkna ut kovariansmatriserna Q och R så används störningsvektorn w och brusvektorn v.

Formeln för att räkna ut kovariansmatriserna är:

E(w wT) = QE(v vT) = R

 

Så om jag vet brusvektorn v och störningsvektorn w. Hur ska då dessa vektorer se ut i MATLAB?

Jag tänker räkna ut ett kalmanfilter:

https://se.mathworks.com/help/control/ref/kalman.html

 

Ska det vara så här?

>> t = linspace(0,2);

>> w = randn(size(t)); % Gaussiskt vit störning

>> mean(w*w'); % <- Denna genererar en konstant

>> w = randn(size(t')); % Gaussiskt vit störning vertikal lista. Notera ' tecknet.

>> mean(w*w'); % <- Denna genererar en vektor 

Dr. G 9500
Postad: 19 jun 2017 20:43

Q, R och N ska tydligen vara matriser. w och v ska då vara kolumnvektorer så att w*w' etc blir matriser.  

Var det svar på din fråga eller missförstod jag något? 

Heretic 88 – Fd. Medlem
Postad: 19 jun 2017 21:58
Dr. G skrev :

Q, R och N ska tydligen vara matriser. w och v ska då vara kolumnvektorer så att w*w' etc blir matriser.  

Var det svar på din fråga eller missförstod jag något? 

Jaha! Ska w och v vara kolumnvektorer! Men är verkligen vitt brus så? Men vad händer det om bruset är bara en vektor då? Vad gör man då?

Du förstod frågan rätt.

Svara
Close