For a last few days I've been working on oaf and simulink model to simulate it. First I did online subtraction from MC when MC_L path was enabled. Inside my code I've added a sum of squares of filter coefficients so we can monitor convergence of the filter.
To to this I've measured path from OAF output to input without AA and AI filters. Then made a vectfit using 2 poles and zeros. Foton command
zpk( [-2.491928e+03;5.650511e-02], [-4.979872e+01;-3.278776e+00], 6.011323e+00)
My simulink model consists of 3 parts:
- cavity with seismic noise at low frequencies, 1/f^2 noise at medium frequencies and white noise at high frequencies
- this cavity is locked using feedback compensation filters that we use to lock arms
- locked cavity with adaptive filter
Adaptive filter in the model uses online c-code. It is connected to simulink block through an S-function. Sampling frequency of the model is 10 kHz. It works fairly fast - 1 sec of simulation time is computed in 1 sec.
I've tested FxLMS algorithm and MFxLMS algorithm that is faster. I plan to test 2 iir adaptive algorithms that are already coded. |