J. Kissel
WP #8028
After in-depth investigation, Shivaraj and Saravanan ("S and S") discovered I had made a rather insidious mistake in the calculations for the time-dependent correction factors (TDCFs) for the DARM loop's optical plant. See LHO aLOG 46135 for the full story, but the message is that -- because of poorly labeled basic complex algebra blocks and my lack of careful checking -- I had inserted a multiply when I should have inserted a divide when computing a ratio in the middle of the calculations of kappa_C, f_c, f_s, and Q_s. The bug has been fixed, the model has been compiled, and the plan will be to install it tomorrow when everything is rebooted to upgrade the EEPROMs of all dolphin front-ends (see WP #8030).
In detail, I've done the following:
(1) I've extracted the D2N_SPRING block from the CS/TDEP level of the IFO generic corner station calibration library part,
/opt/rtcds/userapps/release/cal/common/models/CAL_CS_MASTER.mdl
and placed it inside the
/opt/rtcds/userapps/release/cal/common/models/CAL_LINE_MONITOR_MASTER.mdl
to be consistent with what's done with the ACTUATOR_KAPPA and CAVITY_POLE library blocks. Once created as a library part in CAL_LINE_MONITOR_MASTER, I then copied it back into the CS/TDEP subsystem, now as a link to library block in LINE_MONITOR_MASTER. This change is solely for consistency with how things are done for every other TDCF; it does not affect any functionality.
(2) In the common library
/opt/rtcds/userapps/release/cal/common/models/CAL_LINE_MONITOR_MASTER.mdl
I've added a "Description" under the "General" tab of every block's "Properties" pop-up window (opened by right-clicking on the block and selecting "Properties..." from the right-click menu) that is identical to the library block's generic name. Further -- switching over to the "Block Annotation" tab -- I selected the Description property token and put it on the list of text and tokens for annotation. This means that now any time the block is copied from the common library to where it will be used in practice, it will retain an annotation/label showing its basic generic function, even if the block's name is changed. This is especially important for the complex algebra blocks which are used repeatedly all through out a given subsystem level and thus requiring a block name change (hence my mistake that S and S discovered). This change is solely for clarity, and doesn't affect any functionality.
(3) I slowly and carefuly re-copied and re-linked all uses of these basic algebra parts into the greater library parts for the ACTUATOR_KAPPA, CAVITY_POLE, D2N_SPRING, LINE_MONITOR (for PCAL_LINE demodulation), and SYNCED_LINE_MONITOR (for SUS_LINE) in the common library
/opt/rtcds/userapps/release/cal/common/models/CAL_LINE_MONITOR_MASTER.mdl
During this step, I fixed the bug that Shiva and Saravanan identified by replacing the complex multiply with a complex ratio to correctly take the ratio of live C and C_res at the tail end of the computation of S in the CAVITY_POLE and D2N_SPRING library blocks.
(4) I re-copied and re-linked all uses of the greater library parts in to the CS/TDEP generic corner station calibration library part,
/opt/rtcds/userapps/release/cal/common/models/CAL_CS_MASTER.mdl
New screenshots of everything are attached, and all changes the two, above-mentioned, libraries have been committed to the userapps repo.