I have more-or-less finished a rough first draft of the automatic gyro noise budget MATLAB code. The rough architecture is:
In addition to this, there are two functions named "pdh1437" and "pdh2215" which contain analytical expressions for the two respective filters. They take as arguments 1) a frequency vector and 2) the appropriate box's gain setting and return a vector of the transfer function sampled at these frequencies. These are used wherever a spectrum needs to be multiplied or divided by the PDH gain.
The file in (2) takes the OLTF in each direction and divides by the correctly sampled PDH gain and actuator gain to obtain the optical response in V/Hz. This is used to calibrate voltage spectra into (rad/s)/rHz.
(1) is separate so that we can choose whether to pull the gyro noise from the frames or upload our own (e.g. an analog measurement), and there will be a single file that runs everything in one fell swoop.
Below is a sample output. In this case, I have used our analog measurement of the gyro noise from last week as I am still working out the kinks in the NDS method (for some reason, they don't come out quite the same). Obviously, this is still somewhat barebones and we will need to add in more noise sources as they come to us. The good thing is that---at long last---we will be able to simply press a button every time we want an up-to-date noise budget. If we make a change to the setup, it is simply a matter of dropping the new data into the "data" directory and re-running.