A follow up to the measurement of the "mystery" UIM dynamics:
I have fitted the measured transfer functions measured in the above link:
- After dividing the excitation to DARM TF, by Pcal to DARM TF, I am left with a transfer function that represents the plant dynamics multiplied by the uimDriverResponse TF
- The uimDriverResponse is a known function in the pyDARM code, and I can divide that from my results, giving me the difference from the modelled transfer function
- pyDARM has a process_actuation_measurements function that additionally divides out the UIM dynamics model (hence I am left with only the difference from the model)
- for the higher frequencies of the measurement, I needed to create a new model that has no violin modes so as not to be modelling features that have been already divided out (but I won't discuss the high frequency stuff here)
- I fit the lower portion (30 to 200 Hz) of the data to a ZPK transfer function using iirrational (attachment [2019-11-20_H1SUSETMX_L1_LFMeas_vs_Fit.pdf] shows the fit)
- to get a nicer fit with some of the smaller features (e.g. @45 Hz) I had to play with the source code a bit to alter the 'Q_rank_cutoff'.
- I then took the darm_loop_critique.py code and added a little patch so that the TF from my measurements gets mutltiplied by the underlying model over the frequency range where it fits the data.
- The "before patch" image is [2019-12-02_O3_H1_DARMLoopCritique_ContributionsToR_mag.pdf]
- The "after patch" image is [2019-12-03_O3_H1_DARMLoopCritique_ContributionsToR_mag.pdf]
- At peak ~ 8.5% contribution
Given that the UIM keeps rolling off after this, I don't think the higher frequency parts of the recorded data will show up in the above plot.