Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Estimating a Wiener filter manually in Matlab

  1. Jan 15, 2013 #1
    Hi all!

    Problem:
    I am currently trying to calculate a Wiener filter for a stochastic system. The model is an ARX with determined parameters.

    Where I am:
    I have access to the transfer functions of the ARX model.
    I need to calculate the optimal causal filter:
    H(s)=1/Fi(s)*[Sx(s)/Fi(-s)]L

    I know that:
    Fi(s)Fi(-s)=Sx(s)+Sn(s)
    where Sx(s) is the power spectral density of the output signal and Sn(s) is the power spectral density of the aditive noise. To find Sx and Sn I found the square root of the absolute value of the transfer functions of the model and the noise filter respectively, in the jω domain.

    I have the whitening filter (1/Fi(s)), I determined Fi(s) by taking out all poles and zeros on the right plane of Fi(s)Fi(-s).

    Question:
    Is the bode diagram of the whitening filter supposed to be the symetric, relative to magnitude, of the bode diagram of the noise filter of the model?

    Now I have to determine:
    [Sx(s)/Fi(-s)]L
    I have Sx(s) and Fi(-s), but my question is how do I determine the transfer function of the non-causal part only? I know I could use partial fraction expansion by hand but my Sx(s) and Sn(s) have 12th order polynomials so I will certainly not go that way.

    Please help.
    Thank you.

    Gonçalo
     
  2. jcsd
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook

Can you offer guidance or do you also need help?
Draft saved Draft deleted



Similar Discussions: Estimating a Wiener filter manually in Matlab
  1. HEPA filter (Replies: 10)

  2. Filtering a signal? (Replies: 2)

  3. Electrostatic Filter (Replies: 3)

Loading...