A few thought as a follow on to Jeff's entry:
-
Injecting signals at DARM control (see G1501146) seems like a bad idea
-
while this worked in iLIGO, which had a relatively simple actuation TF, the DARM ctrl to DARM displacement TF is much more complicated now that we have a multi-stage suspension
-
the inverse TF looks like 1 / A * (B + C + D), which, by virtue of containing a sum in the denominator, can be very messy
-
not only is it messy, it is not robust against small changes in the DARM actuation path. Think 1 / A * (g * B + C + D) and then let g vary... this will cause the poles and zeros to move.
-
Injecting directly into an actuator with a simple TF to DARM displacement (or force) would be much better (e.g., at the ESD or with PCAL).
-
I'll see what I can do to make an inverse filter, but I will be happy if a better way is found and this filter is never used.
SVNs required for this:
svn co https://svn.ligo.caltech.edu/svn/aligocalibration/trunk/Runs/ER8 CalSVN/aligocalibration/trunk/Runs/ER8
svn co https://svn.ligo.caltech.edu/svn/aligocalibration/trunk/Common/H1CalFilterArchive CalSVN/aligocalibration/trunk/Common/H1CalFilterArchive
svn co https://svn.ligo.caltech.edu/svn/aligocalibration/trunk/Runs/S7/Common/MatlabTools CalSVN/aligocalibration/trunk/Runs/S7/Common/MatlabTools
svn co https://svn.ligo.caltech.edu/svn/seismic/Common/MatlabTools SeismicSVN/seismic/Common/MatlabTools
svn co https://redoubt.ligo-wa.caltech.edu/svn/sus/trunk/Common/SusModelTags/Matlab SusSVN/sus/trunk/Common/SusModelTags/Matlab
All of which results in an ETMY actuation function, saved in the attached .mat file (and shown in the image). In the attached image, I have removed the 1/f^2 slope to reveal the bumps and wiggles of the TF that needs to be inverted.
A fit to the actuation function is attached, along with images of the fit and the residual. Mostly, the fit is within 10% and 5dg from 10Hz to 1kHz. The pole and zero Qs are not very large, so the inverse should be workable.