TMoptfilter : Optimal filter fit of TES pulses with alternate optimal filters

tesfdmtools.methods.TMoptfilter.optfilter(hdf, channel, freq, indx, base1, base2, noisspec, debug=False, freqcutoff=None, rotate=False, risetime=False, bsec=0.05, absolute=False, prlen=None, apulsepos=None, wrtfilter=False, usefilter=None, flip=False, **kwargs)[source]

perform optimal filtering fit of individual pulses in the frequency domain There is the option to write the optimal filter to file and the option to use an external optimal filter

Args:
  • hdf = HDF5 input file object

  • channel = channel number being processed

  • freq = frequency number (pixel) being processed

  • indx = index of selected events, to be processed

  • base1 = baseline level at start of record

  • base2 = baseline level at end of record

  • noisspec = noise spectrum

Kwargs:
  • debug = if True, plot various fit parameters [default: False]

  • freqcutoff = cutoff frequency (Hz) for optimal filtering [default: None]

  • rotate = rotation angle (radians) for I/Q pulse record

  • risetime = it True, compute rise time of pulses [default: None]

  • bsec = section of record to take for background (only used for ‘rotate’ or ‘absolute’) [default: 0.05]

  • absolute = use sqrt(I^2+Q^2) signal [default: False]

  • prlen = length of record to process (None = entire record) [default: None]

  • apulsepos = average position of pulse maximum; used for limited prlen. [default: None]

  • wrtfilter = write optimal filter to file

  • usefilter = use this external optimal filter

  • flip = flip data in record

Returns:
  • ifit = fitted pulse heigth parameters

  • rtimes = computed rise times of fitted pulses

  • ftimes = computed fall times of fitted pulses

  • avpulse = average pulse profile with baseline subtracted

  • avbline = average baseline for the average pulse prfile