Skip to content

Convert Hooks for Correcting OMC DCPD Compensation Filters (and rough mA/ct) to Like What's Done for the Coil Drivers

In the current implementation of the omc_path_response method of the SensingModel class in sensing.py coupled with [sensing] section of the example ini file H1_20190416.ini,

(For each OMCA DCPDA, ..., OMCB DCPDB path),

  • the ADC gain adc_gain,
  • the gain ratio gain_ratio, and
  • the balance matrix balance_matrix

are explicitly called out as things that "could go wrong" and thus they're hooks to divide out the front-end version and multiply in a know better version of the compensation.

HOWEVER, this is only a half-way solution. Also within the DCPDA and DCPDB banks are the TIA and Whitening gain and frequency response that could also be wrong.

We should convert the handling of possibly-wrong-DPCD-sensing-chain-compensation to be the same as we do for the possibly-wrong-ESD-or-COIL-actuation-chain-compensation, and just have a list of poles, zeros (and gain, if really need be) for the whole compensation bank rather than singling out any one particular part of the compensation.

Also, FYI:

Recall the subtly between the current subway map G1501518-v21 definition of "GAIN RATIO" and the sensing.py use of gain_ratio and balance_matrix that

                 gain_ratio[0] * balance_matrix[0]
    GAIN RATIO = ---------------------------------
                 gain_ratio[1] * balance_matrix[1]