| 1 | We wanted to have a look at the SiPM currents over all of FACTs lifetime. |
| 2 | The aux files containing the calibrated currents (FEEDBACK_CALIBRATED_CURRENTS.fits) only exist since 9th august 2013, so they were out of question. |
| 3 | We needed to look at the BIAS_CONTROL_CURRENT.fits files and do the current calibration ourselves. |
| 4 | |
| 5 | I mean, the calibration constants were already there, we just needed to apply them to the uncalibrated data, |
| 6 | but how exactly this is done, I was not able to find. So I reverse engineered it with the data of yesterday night |
| 7 | and wrote it down here. |
| 8 | |
| 9 | --- |
| 10 | |
| 11 | I write it here in pseudo-python: |
| 12 | |
| 13 | fb_cal_r8 = fits.open('20150628.FEEDBACK_CALIBRATION_R8.fits')[1].data |
| 14 | delta_i = fb_cal_r8['DeltaI'][0, :320] |
| 15 | r8 = fb_cal_r8['R8'][0, :320] |
| 16 | |
| 17 | bias_cur = fits.open('20150628.BIAS_CONTROL_CURRENT.fits')[1].data |
| 18 | bias_dac = fits.open('20150628.BIAS_CONTROL_DAC.fits')[1].data |
| 19 | I8 = bias_cur['I'][:, :320] * 5e-3/4096. - delta_i[np.newaxis, :] |
| 20 | I9 = bias_dac['U'][:, :320] * (1e-3/4096) * 100 / r8[np.newaxis, :] |
| 21 | Iout = (I8 - I9) / 4e-6 |