J. Kissel
I've "finished up" the SDF reconciliation from last week, in which we had a couple of outstanding models that we didn't want to reconcile until we had a "fresh" lock loss (i.e. having not run initial alignment like had been done last week). I report the results below in the form of Dave's ever useful /ligo/cds/userscripts/sdf_files_report script.
model_name: | safe | down | OBSERVE
h1susitmx: | ->down | 14-Jan-2020 | 12-Jan-2020
- accepted new violin mode damping filter bank configuration for MODE3 (see LHO aLOG 54382).
h1susetmy: | ->down | 07-Jan-2020 | 06-Jan-2020
- Accepted new configurations of violin mode damping filter bank for MODE18 and 20 (see LHO aLOG 54382)
- unmonitored ETMY TEST_{P,Y}_OFFSET, as per philosophical discussion last week (see LHO aLOG 54339): if the OFFSETS are touched by ALIGN_IFO (for initial alignment), ALS_XARM/YARM (for INCREASE_FLASHES), ISC_LOCK (for CSOFT spot position moves), then unmonitor the M0 TEST OFFFSETs.
h1ascimc: | ->down | 07-Jan-2020 | 10-Jan-2020
- accepted 2e-17 difference from H1:IMC-WFS_GAIN of 0.04 to ... 0.04.
- accepted H1:IMC-PZT_PIT_OFFSET and H1:IMC-PZT_YAW_OFFSET in there new position
- these were moved during last week's IMC WFS centering (see LHO aLOG 54340)
- ... we should have a philosophical discussion *** about this.
h1calcs: | 14-Jan-2020 | none | ->safe
- accepted the new model values at calibration line frequencies. These are going to continue to show up every time the sdf snap comparison file "switches" from safe to OBSERVE until the calibration team modifies their script to round off these EPICS values before writing.
h1lsc: | ->down | 10-Dec-2019 | 25-Nov-2019
- unmonitored the H1:IMC-MCL_FM_TRIG_THRESH_ON and H1:IMC-MCL_FM_TRIG_THRESH_OFF thresholds. These are set by the ISC_LOCK guardian.
h1susprm: | ->down | 29-Oct-2019 | 17-Sep-2019
h1sussrm: | ->down | 10-Dec-2019 | 01-Nov-2019
- For both these SUS, like ETMY last week (LHO aLOG 54343) have coil driver analog switching that's regularly touched by the global controlling guardians. Also, like SR2 and PR2, the coil driver state is switched in three different guardians -- ISC_LOCK, ISC_DRMI, and ALIGN_IFO -- and they each want a different state. It still puzzles me that the H1:SUS-SRM_BIO_M3_??_STATEREQ channels are in the state we want, but the actual filter banks H1:SUS-SRM_M2_COILOUTF_?? show up as diffs. I think what's happening is that the coild don't get switched back to a given state until somewhere in the middle of the acquisitions (e.g. the ISC_DRMI guardian is in charge during the lock acquisition sequence, and just like SR2 and PR2, the coil driver state configuration was moved from the DOWN state to the PREP_FOR state), so they don't get exercised after a lock loss until trying again. So, the configuration that appears depends on the last lock loss, and whether we lost it before or after they've been exercised. The message: the STATEREQ is controlled by guardian, and the COILOUTF are *forced* to match the state request by the front-end, so I'm unmonitoring FM1 FM2 FM6 FM7 of the COILOUTF banks -- the filters are front-end controlled.
h1seiproc: | 03-Dec-2019 | none | 04-Jan-2020
- umonitored the H1:ISI-DIFF_CONTROL_BIT and H1:ISI-DIFF_${OPTIC}_CPS_[X,Y]_GAIN where ${OPTIC} = HAM3, HAM4, ETMX , ETMY, and BS. This is controlled by the CPS DIFF guardian, and is the CPS DIFF ON/OFF switch. In safe, we want the CPS DIFF OFF, and it is saved in OFF in that snap. However, CPS DIFF is now a part of the seismic configuration that is regularly manipulated either ON or OFF, and done so with guardian.
h1sysecatc1plc4:
- unmonitored
H1:SQZ-LO_SERVO_COMBOOST
H1:SQZ-LO_SERVO_IN1EN
H1:SQZ-VCO_CONTROLS_ENABLE
since these are controlled by the SQZ guardian.
Though -- if we don't have one already, we should probably create a "DOWN" and an "OBSERVE" snap for this model.
Currently this "model" (it's really beckhoff, of course) is not included in Dave's awesome new sdf_files_report script, so I don't know what files exist and who points to whom.
*** The philosophical debate regarding the IMC-PZT sliders:
- The whole point of safe.snaps are to make sure that, upon computer reboot, the the values are returned to a functional value.
- BUT these IMC-PZTs are known to be *very* hysteretic, such that if the power to the PZTs goes down, there's no guarantee at all that the PZT will come back to the same physical location given the identical slider values.
- The secondary reason we like to cite for keeping the safe.snaps up to date for the OPTICALIGN-like sliders is "we wanna make sure that no one's changing them" or "well, we want to make sure we're at least in the right ball park," but
- changes to them will show up in the OBSERVE.snap and the IMC usually doesn't work well at all when these PZTs are misaligned, and
- even if the values are "out-of-date" resetting to them upon a computer crash / power failure just won't get you any where (you'd need to nudge the value ~100 cts one way and then bring it back, and even when we *do* do that, the physical location ends up "good enough," not actually in the same location, and the IMC WFS take up the rest.).
So... do we just "occasionally accept them when we see a difference" (which seems pointless) or do we "unmonitor them" to avoid alarm noise...
TITLE: 01/14 Owl Shift: 08:00-16:00 UTC (00:00-08:00 PST), all times posted in UTC
STATE of H1: Observing at 117Mpc
INCOMING OPERATOR: Jeff
SHIFT SUMMARY:
Nice running for H1 for 7hrs 45min & then took it out of OBSERVING for PEM Injections & Maintenance.
Have a nice snowy landscape this morning and the snow-clearing has been going on the last few hours.
LOG:
TITLE: 01/14 Owl Shift: 08:00-16:00 UTC (00:00-08:00 PST), all times posted in UTC
STATE of H1: Observing at 117Mpc
OUTGOING OPERATOR: Niko
CURRENT ENVIRONMENT:
SEI_CONF state: USEISM_WINDY
Wind: 18mph Gusts, 13mph 5min avg
Primary useism: 0.05 μm/s
Secondary useism: 0.38 μm/s
Microseism continues its downward trend! (we're still in UESEISM_WINDY & wonder when/if we should transition back...but range looks fine, so will hold off.)
QUICK SUMMARY:
H1's been locked 35+hrs & continues with its nice range just under 120Mpc.
Weather is the news for the beginning of the shift with snow on the ground (probably have about 0.25" on the ground here & it is still actively snowing...forecast snow until about 4am).
TITLE: 01/13 Eve Shift 00:00 – 08:00 (16:00-00:00), all times posted in UTC
STATE of H1: Observing
INCOMING OPERATOR: Corey
SHIFT SUMMARY: Quiet shift aside from superevent. Microseism is declining, wind steady.
LOG:
00:47 (16:47) Calibration done, going to Observing
02:12 (18:12) Supervent S200114f
03:42 (19:42) GRB E360115 -- Standing down
04:33 (20:33) GRB E360119 -- Standing down
04:45 (20:45) Dropped out of Observing, SQZ re-locking
04:47 (20:47) SQZ locked, back in Observing
There will be MANY MANY more details later, but Vlad, Aaron, and I are installing the new 20200103 calibration model. Well, really, the installation is now complete, and we're characterizing the new goodness. Aaron has also restarted the GDS pipeline, so that should be good to go as well. We've confirmed that our TDCFs are saying the same thing, and they were better than before. Also, we've confirmed that the ~153 Hz UIM actuator feature is now removed as we wanted and expected. The next observation segment we enter will have this new model installed. All signs are pointing to the exact improvement in accuracy we expect. Stay tuned over the next few days for plots, kLOGs, and even talks related to this update. Attached are teasers of "well at least we can say this": (1) The TDCFs before and after the change. (The T-bars indicate the time when the calibration was "under construction", so ignore that bit.) (2) The ratio of PCAL to DELTAL EXTERNAL before vs. after the change (Note the DTT template has a correction filter in it that is the source of the remaining large wiggle. Again, preliminary data.)
The first observation ready segment with the updated calibration model start just now at Jan 14 2020 00:47:59 UTC, or GPS 1262998097.
J. Kissel More details to come later, but I've measured this week's sensing and actuation function after the 20200103 calibration model install today in to CALCS (see LHO aLOG 54473). The IFO is running in it's nominal configuration (much like the 2019-12-26 reference data set): 38W input, 50 ct SRCL offset, and "a few" dB of squeezing. /ligo/svncommon/CalSVN/aligocalibration/trunk/Runs/O3/H1/Measurements/FullIFOSensingTFs 2020-01-13_H1_DARM_OLGTF_LF_SS_5to1100Hz_15min.xml 2020-01-13_H1_PCALY2DARMTF_LF_SS_5t1100Hz_10min.xml 2020-01-13_H1_PCALY2DARMTF_BB_3min.xml /ligo/svncommon/CalSVN/aligocalibration/trunk/Runs/O3/H1/Measurements/FullIFOActuationTFs/ 2020-01-13_H1SUSETMX_L1_iEXC2DARM_8min.xml 2020-01-13_H1SUSETMX_L1_PCAL2DARM_5min.xml 2020-01-13_H1SUSETMX_L2_iEXC2DARM_12min.xml 2020-01-13_H1SUSETMX_L2_PCAL2DARM_6min.xml 2020-01-13_H1SUSETMX_L3_iEXC2DARM_12min.xml 2020-01-13_H1SUSETMX_L3_PCAL2DARM_6min.xml
Trends of LN2 consumption for seven cyropumps (summer & winter) are tallied in attached and saved in DCC at https://dcc.ligo.org/E2000012.
Would like to compare with LLO's Dewar draw down.
[M. Wade, J. Kissel, A. Viets]
Maddie and I have produced new GDS filters for the calibration model update described in LHO aLOGs 54269 and 54473.
I restarted the primary, redundant, and testing calibration pipelines on the DMTs around GPS time 1262990593. Data seems to flowing normally.
The filters are found in revision 9137 of the calibration SVN here:
aligocalibration/trunk/Runs/O3/GDSFilters/H1GDS_1262900044_no_response_corr.npz
They were produced using the run script
aligocalibration/trunk/Runs/O3/H1/Scripts/TDfilters/H1_run_td_filters_1262900044_no_response_corr.sh
Plots of the frequency response of the filters are attached, comparing them to the frequency-domain model. Note the line at ~4kHz in the resudual corrections filter. This is actually in the control correction model, but it shows up the residual corrections filter plot because we normally apply control corrections above 1kHz in the residual path, since the control path is sampled at only 2kHz. It is surprising to something this large coming from the actuation at such a high frequency. Moreover, modeling this accurately would require a much longer filter sampled at at least 8 kHz, which we do not currently have the computational power to do. Given our skepticism, these filters do not model anything in the actuation above 1 kHz. We have an opportunity tomorrow to update the filters again should we decide that it is a good idea to model this the best we can.
Jeff did a Pcal broadband injection just after the pipelines got running, so once the C00 frames are available, I will add GDS results from that injection. I also plan to test these filters on real data to see how well the model the response function once enough data is available.
The first observation ready segment with the updated calibration model start just now at Jan 14 2020 00:47:59 UTC, or GPS 1262998097.
Attached are plots of GDS data during the broadband injection, as well as plots showing how well the filters represent the frequency-domain DARM model. The broadband injection (first plot) looks good, showing deviations no greater than ~2% from 20 Hz - 350 Hz. The last plot shows how well the low-latency (front-end + GDS) calibration pipeline applies the response function R(f). The "spike" seen at 4276.0 Hz is not modeled at all by the filters. The source of this in the model is in all 3 stages of the actuation (only TST and PUM contribute significantly to the response function), and I assume it is a violin mode. This is a very narrow freature in the model, no wider than 0.25 Hz. Models for TST, PUM, and UIM all rise 12 or 13 orders of magnitude at this very narrow feature. We can attempt to model this in the inverse sensing path (which has a high enough sample rate), but it won't be modeled very well if we try, since it is such a narrow feature. Moreover, this would also compromise accuracy in neighboring frequency bins. Most likely, there will still be a loud spectral line in h(t) at 4276 Hz, and the systematic error induced by using the current filters would be that this line appears 3 orders of magnitude lower than it actually is.
Here's a comparison between GDS-CALIB_STRAIN's response to a broadband PCAL Y injection before vs. after this model update. Assuming PCAL is a perfect reference, this should be equivalent to a direct measure of the systematic error in the response function and h(t). One can see that, while we've cleaned up the UIM feature at 153 Hz, and improved the response ratio below 30 Hz, we seemed to made the systematic error worse between 60 and 150 Hz. In the first attachment, I show each of the transfer functions on top of each other, to show the former vs. the current level of systematic error. In the second attachment, I show the ratio of the two transfer functions, to show the *change* in systematic error. This second attachment should correspond to what Vlad predicted in LHO aLOG 54523. It's close... but not quite right. Still investigating... The script used to make this plot can be found here: /ligo/svncommon/CalSVN/aligocalibration/trunk/Runs/O3/H1/Scripts/FullIFOSensingTFs/ plot_GDS_BB_20200115.py and relies on data processed by Aaron and committed to /ligo/svncommon/CalSVN/aligocalibration/trunk/Runs/O3/H1/Results/GDS_BB_plots/ H1_C00_over_CAL-PCALY_RX_PD_OUT_DQ_1262638969-178.txt H1_C00_over_CAL-PCALY_RX_PD_OUT_DQ_1262990871-153.txt
I did some empirical probing into what could be giving this kind of responce between 20 and 300 Hz.
For this I created a new copy of the modelparams_H1_20200103.py file to play with.
The plot attached here, is where I have taken the ratio of my new version over the currently used version, but I have altered:
This is plotted against the very data in the above comment, for reference.
It looks like the current systematic error trend can be ?just about? completely explained by this correction! It seems response in this range is *extremely* sensitive to the value of ccOpticalGain in the model.
EDIT: spoke to Jeff - more convincing to reanalyse this w.r.t the Orange line in his figures in the previous comment, and see if it explains the complete error in response.
For reference, here are the values of the TDCFs that were applied to the data in the GDS pipeline during the broadband injections.
During the injection starting at 1262638969:
kappa_tst = 1.0052612
kappa_pum = 1.0198756
kappa_uim = 0.99628365
kappa_C = 0.99136031
f_cc = 411.13184 Hz
During the injection starting at 1262990871:
kappa_tst = 0.99716723
kappa_pum = 1.017796
kappa_uim = 0.99592042
kappa_C = 0.99556768
f_cc = 410.88696 Hz
We needed a better understanding of the impact of this systematic error at ~150 Hz. for the UIM, so I added a copy of ratio plot from LHO aLOG 54565 to the same script, ^/trunk/Runs/O3/H1/Scripts/FullIFOSensingTFs/plot_GDS_BB_20200115.py and zoomed in around the 100-200 Hz frequency region. Attached are the results. (1) We're, of course, limited by the frequency resolution and noise of the measurement, BUT, (2) We see what Vlad has told us all along: there are actually three features: highQ anti-resonance at 151 Hz, highQ anti-resonance at 153 Hz, and then a high Q resonance at 154 Hz (rounding to the nearest Hz). Note that this description is of the *ratio* of (fixed) / (not fixed), so take my description of whether the feature is a "resonance" vs. "anti-resonance" with a grain of salt. (3) Each highQ feature peaks at around a -2%, -3%, and +3%, BUT -- that includes influence from the "underlying" broad frequency dependent error "sweeping through" this region -- known to be a result of problems with the TST actuator model in this low-latency data.
Ops Shift Transition: 01/13/2020, Eve Shift 00:00–08:00 (16:00-00:00) - UTC (PT)
State of H1: Locked
Intent Bit: Commissioning
Weather: 10-15 mph wind
Primary 0.03 – 0.1Hz: 0.01 um/s
Secondary 0.1 – 0.3Hz: 0.3 um/s
Outgoing Operator: Ed
Quick Summary: Locked for 26.5 hours, currently about ⅔ of the way through some calibration measurements.
TITLE: 01/13 Day Shift: 16:00-00:00 UTC (08:00-16:00 PST), all times posted in UTC
STATE of H1: Calibration
INCOMING OPERATOR: Niko
SHIFT SUMMARY:
LOG:
20:50 HFD onsite to have a look at our tumbleweed situation
21:50 H1 out of Observing for Calibration in coordination with Livingston
16:00 handing of to Niko
Camilla, Dave:
Camilla confirmed that a zero maxgain is a valid value. My original logic in showing the out-of-bounds yellow indicator had assumed the opposite, I have corrected this and the indicator is now displaying correctly.
I looked at the very noisy period over the weekend associated with the high microseismic peak to double check that the noise was consistent with https://alog.ligo-wa.caltech.edu/aLOG/index.php?callRep=54298, and that the R0 path we are hoping to incoporate into models on Tuesday would likely help. The figure shows that the arch frequency spacing in DARM pretty well predicts the relative velocity of L2 and R2. The hypothesis is that the scattering path is between the ESD traces on the RM and the HR coating on the TM, with the arch frequency spacing given by the TM-RM relative velocity and the arch stacking in frequency due to multiple cycles on this path with 90% power loss each cycle. R0 tracking would reduce the TM-RM relative motion and appears to have helped at LLO https://alog.ligo-la.caltech.edu/aLOG/index.php?callRep=50897 .
Hi Robert,
Figure 1 below is an overlay of the same data you showed, but the spectrogram made with an omega scan, and the fringe frequency calculated from SUS_ETMX_L2_WIT_L_DQ using f=N*abs(2 v(t)/lambda) where v(t) is the velocity (derivative of that channel). The outcome agrees with what you saw, the fringe predictions line up, and specifically, the multiples of N=3,4,6,7 are visible in the h(t) data.
This was run on the hanford LDG cluster using the following commands:
conda activate /home/detchar/.conda/envs/ligo-summary-3.7
python -m gwdetchar.scattering -i H1 -m 3,4,6,7 -d 10 -t 10 -c viridis 1262793685
This scattering functionality was written into gwdetchar by Alex Urban.
Figures 2 and 3 shows the same data, but overlaying the fringe prediction that the Python code produces on the two different spectrogram types available on ldvw (scaled to fit axes).
Cheryl, Jenne, Rahul
On Jan 8, 2020 we had a lockloss due to rung up violin modes. When the operators attempted to re-lock the interferometer, we suffered another lock-loss (at Guardian state 430, Engage_ASC_FOR_FULL_IFO). Hence, we analyzed the typical noise floor during lock acquisition and then tried to define a threshold before attempting full IFO lock. Figure attached below shows the DARM spectrum for 08 Jan 2020, focussed on the 1st and 2nd harmonics for the violin modes. In the plot (Darm.jpg, during the 2nd attempt for re-locking the IFO), the noise floor at Guardian state 430 is shown in red line (UTC 00:02:32). As one can see, several of the modes are rung up, ranging from 10^-15 m/sqrtHz to 10^-14m/sqrtHz (while the typical rms of the floor was around 10^-17m/sqrtHz). The IFO remained at this state for 4 hours, during which the rung up violin modes were damped (1st harmonic for this case). Later, several of the peaks subsided, except for a couple of them, following which a full IFO lock was achieved as shown in the ndscope.
Based on this experience we can set some guidance for the violin mode noise floor during locking attempts. Once Guardian state reaches PREP_ASC_FOR_FULL_IFO (429), at this point if no more than 1-2 modes are above 10^-15m/sqrtHz, while the others are below 10^-16m/sqrtHz then the operators can proceed to the next Guardian state. If at all the rung up modes are required to be damped then during this time the Guardian can remain at the same state.
Rahul-
We should discuss this more in person before issuing guidance to operators, to avoid causing or spreading confusion. In this case there is already guidance available, which I believe should be more reliable than what you outline above. Perhaps we just need to spread the word better.
Operators-
There is a dtt template that Jeff Kissel made several years ago which is linked on the violin medm screen. If operators run it they can check if any modes are rung up enough to saturate the AS_C QPD, and as the text in the template says, if the rms on that QPD is low enough that we aren't saturating it, we know that it is safe to engage the ASC loops which use that QPD.
It seems as though part of the dtt template that Jeff made for checking if the AS_C QPD is saturating has been deleted at some point in the editing that has happened. Jeff K notes in his alog that he put them in the svn so we should be able to recover: 37921
There's a need for two types of templates for the violins, one to use when they are very rung up to assess the success of moving past Engage_ASC_FOR_FULL_IFO, and one to use in low noise to evaluate individual peaks, or groups of peaks, that are ringing up during the lock, or modes that we are damping for the first time.
This alog has one example of the first type of template, and as an example of the second type, I've updated the 2nd harmonic template with the current H1 spectra, I've also been keeping it up to date as we damp more modes, and I've modified it to look all violin frequencies.
Vlad, S.Karki, D. Barker
We pushed the Pcal Simulink model and MEDM screen that Shivaraj generated at LLO (LLO alog 49839). The updated suspension filter files (LHO alog 53155) have been loaded into the corrponding Pcal filter banks as well.
The new calibration coefficients have been uploaded to the appropriate EPICS variable using the txt files linked below:
aligocalibration/trunk/Runs/O3/H1/Results/CALCS_FE/lho_yend_pcal_epics_created-20191111.txt
aligocalibration/trunk/Runs/O3/H1/Results/CALCS_FE/lho_xend_pcal_epics_created-20191111.txt
While quacking the susmodel we encounted a number of issues:
1) The filterfile had to be copied to a local directory and qucked there, as the quacking script would give errors concerining the new SOS coefficients (reason unknown)
2) The quack script only updates gains and SOS coeffcients of the respective filter modules. It does NOT update the desgng strings (the commented out lines that describe what the filter is). Attemting to run "foton -c" (something that needs to be done to parse the foton filters correctly) on the filter file would result in foton detecting a difference between the design string and the real filter, and would take the design string and overwrite your brand new filters.
The workaround to the second problem (thanks to Shivaraj) was to delete the design string before running "foton -c", forcing foton to regenerate it.
The first observation ready segment that had these updates included started on Nov 12 2019 at 22:58:33 UTC, i.e. 1257634731. Thus, prior to these updates, in O3 (i.e. from April 1 2019 to Nov 12 2019) the LHO PCAL Y RX PD (the PCAL PD we use for our absolute displacement reference) had a systematic error of +0.43% -- see the "change" field for LHO Y_end of the RXPD table pg 9 of G1902259. In those slides, the +0.43% is defined as xi = [ (after - before) / before ]*100 = [(after/before) - 1]*100. (1) *** Note that this definition has been defined previously in Eq. (1) of LHO aLOG 52837. Which means that the previous relationship between xi and eps still holds, AFTER NOW TRUTH dL_pcal' (1 + xi/100) = ----- = --------- = --------- = -------- = eps. (3) BEFORE EARLIER APPARENT dL_pcal (and I've used the same equation numbering from that aLOG) This means, for PCAL data prior to Nov 12 2019, should be corrected by PCAL_nosyserror = eps * PCAL_withsyserror = (1.0043) * PCAL_withsyserror (2) where I've again used the same equation numbering scheme as in LHO aLOG 52837, for consistency. That means for all measurements taken and processed before Nov 12, they need the following action taken (assuming that I've already applied the necessary 1/f^2 "anti-whitening" filter and AA filter corrections to PCAL_RXPD): PCAL_RXPD DARM_IN1 A_i == --------- * ---------- DARM_IN1 i_SUSEXC PCAL_RXPD(TRUTH) DARM_IN1 eps * PCAL_RXPD(APPARENT) DARM_IN1 >> A_i(TRUTH) = ---------------- * ---------- = ------------------------- * ---------- = eps * A_i(APPRARENT) DARM_IN1 i_SUSEXC DARM_IN1 i_SUSEXC or A_i(NO PCAL SYS ERR) = eps * A_i(W/ PCAL SYS ERR) DARM_IN1 DARM_EXC C == --------- * -------- PCAL_RXPD DARM_IN2 DARM_IN1 DARM_EXC 1 DARM_IN1 DARM_EXC 1 >> C(TRUTH) == ---------------- * -------- = ----- * ------------------- * -------- = ----- * C(APPARENT) PCAL_RXPD(TRUTH) DARM_IN2 eps PCAL_RXPD(APPARENT) DARM_IN2 eps or C(NO PCAL SYS ERR) = (1/eps) * C(W/ PCAL SYS ERR) The reason I call this out explicitly, is because in O3A (i.e. for LHO aLOG 52837), *ALL* sensing and actuation measurements used to produce the uncertainty budget were "corrupted" by this PCAL systematic error. This is why, in that aLOG, we could "get away" with just multiplying the *entire response function* and/or h(t) by eps (as shown in Eqs. 6-8 of that aLOG). With the new 2020-01-03 model that's to be installed today we cannot. We've *re*processed data from O3A, and some of the measurements from O3B which are prior to Nov 12 are being used as well -- in the same estimate of A_i and C systematic error as those measured *after* the PCAL fix on Nov 12. So, before feeding the A_i and C's from each measurement before Nov 12 in to the measurement collection pool that informs the GPR fitting, I need to correct for eps.
PCAL_RXPD(TRUTH) DARM_IN1 eps * PCAL_RXPD(APPARENT) DARM_IN1
>> A_i(TRUTH) = ---------------- * ---------- = ------------------------- * ---------- = eps * A_i(APPRARENT)
DARM_IN1 i_SUSEXC DARM_IN1 i_SUSEXC